(global["webpackJsonp"] = global["webpackJsonp"] || []).push([["common/vendor"],{

/***/ 1:
/*!*********************************************************!*\
  !*** ./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js ***!
  \*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var objectKeys = ['qy', 'env', 'error', 'version', 'lanDebug', 'cloud', 'serviceMarket', 'router', 'worklet', '__webpack_require_UNI_MP_PLUGIN__'];
var singlePageDisableKey = ['lanDebug', 'router', 'worklet'];
var target = typeof globalThis !== 'undefined' ? globalThis : function () {
  return this;
}();
var key = ['w', 'x'].join('');
var oldWx = target[key];
var launchOption = oldWx.getLaunchOptionsSync ? oldWx.getLaunchOptionsSync() : null;
function isWxKey(key) {
  if (launchOption && launchOption.scene === 1154 && singlePageDisableKey.includes(key)) {
    return false;
  }
  return objectKeys.indexOf(key) > -1 || typeof oldWx[key] === 'function';
}
function initWx() {
  var newWx = {};
  for (var _key in oldWx) {
    if (isWxKey(_key)) {
      // TODO wrapper function
      newWx[_key] = oldWx[_key];
    }
  }
  return newWx;
}
target[key] = initWx();
var _default = target[key];
exports.default = _default;

/***/ }),

/***/ 10:
/*!****************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/nonIterableRest.js ***!
  \****************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 100:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/empty.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:03:27
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/empty.js
 */
var _default = {
  // empty组件
  empty: {
    icon: '',
    text: '',
    textColor: '#c0c4cc',
    textSize: 14,
    iconColor: '#c0c4cc',
    iconSize: 90,
    mode: 'data',
    width: 160,
    height: 160,
    show: true,
    marginTop: 0
  }
};
exports.default = _default;

/***/ }),

/***/ 1006:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-overlay/props.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否显示遮罩
    show: {
      type: Boolean,
      default: uni.$u.props.overlay.show
    },
    // 层级z-index
    zIndex: {
      type: [String, Number],
      default: uni.$u.props.overlay.zIndex
    },
    // 遮罩的过渡时间，单位为ms
    duration: {
      type: [String, Number],
      default: uni.$u.props.overlay.duration
    },
    // 不透明度值，当做rgba的第四个参数
    opacity: {
      type: [String, Number],
      default: uni.$u.props.overlay.opacity
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 101:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/form.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:03:49
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/form.js
 */
var _default = {
  // form 组件
  form: {
    model: function model() {
      return {};
    },
    rules: function rules() {
      return {};
    },
    errorType: 'message',
    borderBottom: true,
    labelPosition: 'left',
    labelWidth: 45,
    labelAlign: 'left',
    labelStyle: function labelStyle() {
      return {};
    }
  }
};
exports.default = _default;

/***/ }),

/***/ 1014:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-gap/props.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 背景颜色（默认transparent）
    bgColor: {
      type: String,
      default: uni.$u.props.gap.bgColor
    },
    // 分割槽高度，单位px（默认30）
    height: {
      type: [String, Number],
      default: uni.$u.props.gap.height
    },
    // 与上一个组件的距离
    marginTop: {
      type: [String, Number],
      default: uni.$u.props.gap.marginTop
    },
    // 与下一个组件的距离
    marginBottom: {
      type: [String, Number],
      default: uni.$u.props.gap.marginBottom
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 102:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/formItem.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:04:32
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/formItem.js
 */
var _default = {
  // formItem 组件
  formItem: {
    label: '',
    prop: '',
    borderBottom: '',
    labelPosition: '',
    labelWidth: '',
    rightIcon: '',
    leftIcon: '',
    required: false,
    leftIconStyle: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 1022:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-modal/props.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否展示modal
    show: {
      type: Boolean,
      default: uni.$u.props.modal.show
    },
    // 标题
    title: {
      type: [String],
      default: uni.$u.props.modal.title
    },
    // 弹窗内容
    content: {
      type: String,
      default: uni.$u.props.modal.content
    },
    // 确认文案
    confirmText: {
      type: String,
      default: uni.$u.props.modal.confirmText
    },
    // 取消文案
    cancelText: {
      type: String,
      default: uni.$u.props.modal.cancelText
    },
    // 是否显示确认按钮
    showConfirmButton: {
      type: Boolean,
      default: uni.$u.props.modal.showConfirmButton
    },
    // 是否显示取消按钮
    showCancelButton: {
      type: Boolean,
      default: uni.$u.props.modal.showCancelButton
    },
    // 确认按钮颜色
    confirmColor: {
      type: String,
      default: uni.$u.props.modal.confirmColor
    },
    // 取消文字颜色
    cancelColor: {
      type: String,
      default: uni.$u.props.modal.cancelColor
    },
    // 对调确认和取消的位置
    buttonReverse: {
      type: Boolean,
      default: uni.$u.props.modal.buttonReverse
    },
    // 是否开启缩放效果
    zoom: {
      type: Boolean,
      default: uni.$u.props.modal.zoom
    },
    // 是否异步关闭，只对确定按钮有效
    asyncClose: {
      type: Boolean,
      default: uni.$u.props.modal.asyncClose
    },
    // 是否允许点击遮罩关闭modal
    closeOnClickOverlay: {
      type: Boolean,
      default: uni.$u.props.modal.closeOnClickOverlay
    },
    // 给一个负的margin-top，往上偏移，避免和键盘重合的情况
    negativeTop: {
      type: [String, Number],
      default: uni.$u.props.modal.negativeTop
    },
    // modal宽度，不支持百分比，可以数值，px，rpx单位
    width: {
      type: [String, Number],
      default: uni.$u.props.modal.width
    },
    // 确认按钮的样式，circle-圆形，square-方形，如设置，将不会显示取消按钮
    confirmButtonShape: {
      type: String,
      default: uni.$u.props.modal.confirmButtonShape
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 103:
/*!*************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/gap.js ***!
  \*************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:05:25
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/gap.js
 */
var _default = {
  // gap组件
  gap: {
    bgColor: 'transparent',
    height: 20,
    marginTop: 0,
    marginBottom: 0,
    customStyle: {}
  }
};
exports.default = _default;

/***/ }),

/***/ 1030:
/*!******************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/common/emoji.js ***!
  \******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var emoji = ['😀', '😃', '😄', '😁', '😆', '🥹', '😅', '😂', '🤣', '🥲', '😊', '😇', '🙂', '🙃', '😉', '😌', '😍', '🥰', '😘', '😗', '😙', '😋', '😛', '😝', '😜', '🤪', '🤨', '🧐', '🤓', '😎', '🥸', '🤩', '🥳', '😏', '😒', '😞', '😔', '😟', '😕', '🙁', '😣', '😖', '😫', '😩', '🥺', '😢', '😭', '😤', '😠', '😡', '🤬', '🤯', '😳', '🥵', '🥶', '😶‍🌫️', '😱', '😨', '😰', '😥', '😓', '🤗', '🤔', '🫣', '🤭', '🫢', '🫡', '🤫', '🫠', '🤥', '😶', '🫥', '😐', '🫤', '😑', '😬', '🙄', '😯', '😦', '😧', '😮', '😲', '🥱', '😴', '🤤', '😪', '😮‍💨', '😵', '😵‍💫', '🤐', '🥴', '🤢', '🤮', '🤧', '😷', '🤒', '🤕', '🤑', '🤠', '😈', '👿'];
var _default = emoji;
exports.default = _default;

/***/ }),

/***/ 1038:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRCode.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 63));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 65));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _QRErrorCorrectLevel = _interopRequireDefault(__webpack_require__(/*! ./QRErrorCorrectLevel.js */ 1039));
var _QRCodeLimitLength = _interopRequireDefault(__webpack_require__(/*! ./QRCodeLimitLength.js */ 1040));
var _QRCodeModel = _interopRequireDefault(__webpack_require__(/*! ./QRCodeModel.js */ 1041));
// 整改自 https://github.com/davidshimjs/qrcodejs
var QRCode = /*#__PURE__*/function () {
  function QRCode(context, vOption) {
    (0, _classCallCheck2.default)(this, QRCode);
    (0, _defineProperty2.default)(this, "_htOption", {
      x: 0,
      y: 0,
      width: 256,
      height: 256,
      typeNumber: 4,
      colorDark: "#000000",
      colorLight: "#ffffff",
      correctLevel: _QRErrorCorrectLevel.default.M
    });
    (0, _defineProperty2.default)(this, "_oQRCode", null);
    (0, _defineProperty2.default)(this, "_context", null);
    if (typeof vOption === 'string') {
      vOption = {
        text: vOption
      };
    }
    if (vOption) {
      for (var i in vOption) {
        this._htOption[i] = vOption[i];
      }
    }
    this._context = context;
  }
  (0, _createClass2.default)(QRCode, [{
    key: "makeCode",
    value: function () {
      var _makeCode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(sText) {
        return _regenerator.default.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                this._oQRCode = new _QRCodeModel.default(this._getTypeNumber(sText, this._htOption.correctLevel), this._htOption.correctLevel);
                this._oQRCode.addData(sText);
                this._oQRCode.make();
                _context.next = 5;
                return this.makeImage(true);
              case 5:
                return _context.abrupt("return", _context.sent);
              case 6:
              case "end":
                return _context.stop();
            }
          }
        }, _callee, this);
      }));
      function makeCode(_x) {
        return _makeCode.apply(this, arguments);
      }
      return makeCode;
    }()
  }, {
    key: "calcCode",
    value: function () {
      var _calcCode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(sText) {
        return _regenerator.default.wrap(function _callee2$(_context2) {
          while (1) {
            switch (_context2.prev = _context2.next) {
              case 0:
                this._oQRCode = new _QRCodeModel.default(this._getTypeNumber(sText, this._htOption.correctLevel), this._htOption.correctLevel);
                this._oQRCode.addData(sText);
                this._oQRCode.make();
                _context2.next = 5;
                return this.makeImage(false);
              case 5:
                return _context2.abrupt("return", _context2.sent);
              case 6:
              case "end":
                return _context2.stop();
            }
          }
        }, _callee2, this);
      }));
      function calcCode(_x2) {
        return _calcCode.apply(this, arguments);
      }
      return calcCode;
    }()
    /**
     * Get the type by string length
     * 
     * @private
     * @param {String} sText
     * @param {Number} nCorrectLevel
     * @return {Number} type
     */
  }, {
    key: "_getTypeNumber",
    value: function _getTypeNumber(sText, nCorrectLevel) {
      var nType = 1;
      var length = QRCode._getUTF8Length(sText);
      for (var i = 0, len = _QRCodeLimitLength.default.length; i <= len; i++) {
        var nLimit = 0;
        switch (nCorrectLevel) {
          case _QRErrorCorrectLevel.default.L:
            nLimit = _QRCodeLimitLength.default[i][0];
            break;
          case _QRErrorCorrectLevel.default.M:
            nLimit = _QRCodeLimitLength.default[i][1];
            break;
          case _QRErrorCorrectLevel.default.Q:
            nLimit = _QRCodeLimitLength.default[i][2];
            break;
          case _QRErrorCorrectLevel.default.H:
            nLimit = _QRCodeLimitLength.default[i][3];
            break;
        }
        if (length <= nLimit) {
          break;
        } else {
          nType++;
        }
      }
      if (nType > _QRCodeLimitLength.default.length) {
        throw new Error("Too long data");
      }
      return nType;
    }
  }, {
    key: "makeImage",
    value: function () {
      var _makeImage = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(needDraw) {
        var _oContext, _htOption, oQRCode, padding, nCount, nWidth, nHeight, list, row, col, nLeft, nTop;
        return _regenerator.default.wrap(function _callee3$(_context3) {
          while (1) {
            switch (_context3.prev = _context3.next) {
              case 0:
                _oContext = this._context;
                _htOption = this._htOption;
                oQRCode = this._oQRCode;
                padding = 0;
                if (_htOption.padding) padding = _htOption.padding;
                nCount = oQRCode.getModuleCount();
                nWidth = Math.floor((_htOption.width - 2 * padding) / nCount);
                nHeight = Math.floor((_htOption.height - 2 * padding) / nCount);
                if (!needDraw) {
                  _context3.next = 13;
                  break;
                }
                list = [];
                for (row = 0; row < nCount; row++) {
                  for (col = 0; col < nCount; col++) {
                    nLeft = col * nWidth + padding + _htOption.x;
                    nTop = row * nHeight + padding + _htOption.y;
                    list.push({
                      fillStyle: oQRCode.isDark(row, col) ? _htOption.colorDark : _htOption.colorLight,
                      x: nLeft,
                      y: nTop,
                      w: nWidth,
                      h: nHeight
                    });
                  }
                }
                _context3.next = 13;
                return _oContext.fillRectList(list);
              case 13:
                return _context3.abrupt("return", {
                  width: nWidth * nCount + 2 * padding,
                  height: nHeight * nCount + 2 * padding
                });
              case 14:
              case "end":
                return _context3.stop();
            }
          }
        }, _callee3, this);
      }));
      function makeImage(_x3) {
        return _makeImage.apply(this, arguments);
      }
      return makeImage;
    }()
  }], [{
    key: "_getUTF8Length",
    value: function _getUTF8Length(sText) {
      var replacedText = encodeURI(sText).toString().replace(/\%[0-9a-fA-F]{2}/g, 'a');
      return replacedText.length + (replacedText.length != sText ? 3 : 0);
    }
  }]);
  return QRCode;
}();
exports.default = QRCode;

/***/ }),

/***/ 1039:
/*!***************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRErrorCorrectLevel.js ***!
  \***************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  L: 1,
  M: 0,
  Q: 3,
  H: 2
};
exports.default = _default;

/***/ }),

/***/ 104:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/grid.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:05:57
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/grid.js
 */
var _default = {
  // grid组件
  grid: {
    col: 3,
    border: false,
    align: 'left'
  }
};
exports.default = _default;

/***/ }),

/***/ 1040:
/*!*************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRCodeLimitLength.js ***!
  \*************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = [[17, 14, 11, 7], [32, 26, 20, 14], [53, 42, 32, 24], [78, 62, 46, 34], [106, 84, 60, 44], [134, 106, 74, 58], [154, 122, 86, 64], [192, 152, 108, 84], [230, 180, 130, 98], [271, 213, 151, 119], [321, 251, 177, 137], [367, 287, 203, 155], [425, 331, 241, 177], [458, 362, 258, 194], [520, 412, 292, 220], [586, 450, 322, 250], [644, 504, 364, 280], [718, 560, 394, 310], [792, 624, 442, 338], [858, 666, 482, 382], [929, 711, 509, 403], [1003, 779, 565, 439], [1091, 857, 611, 461], [1171, 911, 661, 511], [1273, 997, 715, 535], [1367, 1059, 751, 593], [1465, 1125, 805, 625], [1528, 1190, 868, 658], [1628, 1264, 908, 698], [1732, 1370, 982, 742], [1840, 1452, 1030, 790], [1952, 1538, 1112, 842], [2068, 1628, 1168, 898], [2188, 1722, 1228, 958], [2303, 1809, 1283, 983], [2431, 1911, 1351, 1051], [2563, 1989, 1423, 1093], [2699, 2099, 1499, 1139], [2809, 2213, 1579, 1219], [2953, 2331, 1663, 1273]];
exports.default = _default;

/***/ }),

/***/ 1041:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRCodeModel.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _QR8bitByte = _interopRequireDefault(__webpack_require__(/*! ./QR8bitByte.js */ 1042));
var _QRUtil = _interopRequireDefault(__webpack_require__(/*! ./QRUtil.js */ 1044));
var _QRPolynomial = _interopRequireDefault(__webpack_require__(/*! ./QRPolynomial.js */ 1046));
var _QRRSBlock = _interopRequireDefault(__webpack_require__(/*! ./QRRSBlock.js */ 1048));
var _QRBitBuffer = _interopRequireDefault(__webpack_require__(/*! ./QRBitBuffer.js */ 1049));
var QRCodeModel = /*#__PURE__*/function () {
  function QRCodeModel(typeNumber, errorCorrectLevel) {
    (0, _classCallCheck2.default)(this, QRCodeModel);
    (0, _defineProperty2.default)(this, "typeNumber", null);
    (0, _defineProperty2.default)(this, "errorCorrectLevel", null);
    (0, _defineProperty2.default)(this, "modules", null);
    (0, _defineProperty2.default)(this, "moduleCount", 0);
    (0, _defineProperty2.default)(this, "dataCache", null);
    (0, _defineProperty2.default)(this, "dataList", []);
    this.typeNumber = typeNumber;
    this.errorCorrectLevel = errorCorrectLevel;
  }
  (0, _createClass2.default)(QRCodeModel, [{
    key: "addData",
    value: function addData(data) {
      var newData = new _QR8bitByte.default(data);
      this.dataList.push(newData);
      this.dataCache = null;
    }
  }, {
    key: "isDark",
    value: function isDark(row, col) {
      if (row < 0 || this.moduleCount <= row || col < 0 || this.moduleCount <= col) {
        throw new Error(row + "," + col);
      }
      return this.modules[row][col];
    }
  }, {
    key: "getModuleCount",
    value: function getModuleCount() {
      return this.moduleCount;
    }
  }, {
    key: "make",
    value: function make() {
      this.makeImpl(false, this.getBestMaskPattern());
    }
  }, {
    key: "makeImpl",
    value: function makeImpl(test, maskPattern) {
      this.moduleCount = this.typeNumber * 4 + 17;
      this.modules = new Array(this.moduleCount);
      for (var row = 0; row < this.moduleCount; row++) {
        this.modules[row] = new Array(this.moduleCount);
        for (var col = 0; col < this.moduleCount; col++) {
          this.modules[row][col] = null;
        }
      }
      this.setupPositionProbePattern(0, 0);
      this.setupPositionProbePattern(this.moduleCount - 7, 0);
      this.setupPositionProbePattern(0, this.moduleCount - 7);
      this.setupPositionAdjustPattern();
      this.setupTimingPattern();
      this.setupTypeInfo(test, maskPattern);
      if (this.typeNumber >= 7) {
        this.setupTypeNumber(test);
      }
      if (this.dataCache == null) {
        this.dataCache = QRCodeModel.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
      }
      this.mapData(this.dataCache, maskPattern);
    }
  }, {
    key: "setupPositionProbePattern",
    value: function setupPositionProbePattern(row, col) {
      for (var r = -1; r <= 7; r++) {
        if (row + r <= -1 || this.moduleCount <= row + r) continue;
        for (var c = -1; c <= 7; c++) {
          if (col + c <= -1 || this.moduleCount <= col + c) continue;
          if (0 <= r && r <= 6 && (c == 0 || c == 6) || 0 <= c && c <= 6 && (r == 0 || r == 6) || 2 <= r && r <= 4 && 2 <= c && c <= 4) {
            this.modules[row + r][col + c] = true;
          } else {
            this.modules[row + r][col + c] = false;
          }
        }
      }
    }
  }, {
    key: "getBestMaskPattern",
    value: function getBestMaskPattern() {
      var minLostPoint = 0;
      var pattern = 0;
      for (var i = 0; i < 8; i++) {
        this.makeImpl(true, i);
        var lostPoint = _QRUtil.default.getLostPoint(this);
        if (i == 0 || minLostPoint > lostPoint) {
          minLostPoint = lostPoint;
          pattern = i;
        }
      }
      return pattern;
    }
  }, {
    key: "createMovieClip",
    value: function createMovieClip(target_mc, instance_name, depth) {
      var qr_mc = target_mc.createEmptyMovieClip(instance_name, depth);
      var cs = 1;
      this.make();
      for (var row = 0; row < this.modules.length; row++) {
        var y = row * cs;
        for (var col = 0; col < this.modules[row].length; col++) {
          var x = col * cs;
          var dark = this.modules[row][col];
          if (dark) {
            qr_mc.beginFill(0, 100);
            qr_mc.moveTo(x, y);
            qr_mc.lineTo(x + cs, y);
            qr_mc.lineTo(x + cs, y + cs);
            qr_mc.lineTo(x, y + cs);
            qr_mc.endFill();
          }
        }
      }
      return qr_mc;
    }
  }, {
    key: "setupTimingPattern",
    value: function setupTimingPattern() {
      for (var r = 8; r < this.moduleCount - 8; r++) {
        if (this.modules[r][6] != null) {
          continue;
        }
        this.modules[r][6] = r % 2 == 0;
      }
      for (var c = 8; c < this.moduleCount - 8; c++) {
        if (this.modules[6][c] != null) {
          continue;
        }
        this.modules[6][c] = c % 2 == 0;
      }
    }
  }, {
    key: "setupPositionAdjustPattern",
    value: function setupPositionAdjustPattern() {
      var pos = _QRUtil.default.getPatternPosition(this.typeNumber);
      for (var i = 0; i < pos.length; i++) {
        for (var j = 0; j < pos.length; j++) {
          var row = pos[i];
          var col = pos[j];
          if (this.modules[row][col] != null) {
            continue;
          }
          for (var r = -2; r <= 2; r++) {
            for (var c = -2; c <= 2; c++) {
              if (r == -2 || r == 2 || c == -2 || c == 2 || r == 0 && c == 0) {
                this.modules[row + r][col + c] = true;
              } else {
                this.modules[row + r][col + c] = false;
              }
            }
          }
        }
      }
    }
  }, {
    key: "setupTypeNumber",
    value: function setupTypeNumber(test) {
      var bits = _QRUtil.default.getBCHTypeNumber(this.typeNumber);
      for (var i = 0; i < 18; i++) {
        var mod = !test && (bits >> i & 1) == 1;
        this.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = mod;
      }
      for (var i = 0; i < 18; i++) {
        var mod = !test && (bits >> i & 1) == 1;
        this.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = mod;
      }
    }
  }, {
    key: "setupTypeInfo",
    value: function setupTypeInfo(test, maskPattern) {
      var data = this.errorCorrectLevel << 3 | maskPattern;
      var bits = _QRUtil.default.getBCHTypeInfo(data);
      for (var i = 0; i < 15; i++) {
        var mod = !test && (bits >> i & 1) == 1;
        if (i < 6) {
          this.modules[i][8] = mod;
        } else if (i < 8) {
          this.modules[i + 1][8] = mod;
        } else {
          this.modules[this.moduleCount - 15 + i][8] = mod;
        }
      }
      for (var i = 0; i < 15; i++) {
        var mod = !test && (bits >> i & 1) == 1;
        if (i < 8) {
          this.modules[8][this.moduleCount - i - 1] = mod;
        } else if (i < 9) {
          this.modules[8][15 - i - 1 + 1] = mod;
        } else {
          this.modules[8][15 - i - 1] = mod;
        }
      }
      this.modules[this.moduleCount - 8][8] = !test;
    }
  }, {
    key: "mapData",
    value: function mapData(data, maskPattern) {
      var inc = -1;
      var row = this.moduleCount - 1;
      var bitIndex = 7;
      var byteIndex = 0;
      for (var col = this.moduleCount - 1; col > 0; col -= 2) {
        if (col == 6) col--;
        while (true) {
          for (var c = 0; c < 2; c++) {
            if (this.modules[row][col - c] == null) {
              var dark = false;
              if (byteIndex < data.length) {
                dark = (data[byteIndex] >>> bitIndex & 1) == 1;
              }
              var mask = _QRUtil.default.getMask(maskPattern, row, col - c);
              if (mask) {
                dark = !dark;
              }
              this.modules[row][col - c] = dark;
              bitIndex--;
              if (bitIndex == -1) {
                byteIndex++;
                bitIndex = 7;
              }
            }
          }
          row += inc;
          if (row < 0 || this.moduleCount <= row) {
            row -= inc;
            inc = -inc;
            break;
          }
        }
      }
    }
  }], [{
    key: "createData",
    value: function createData(typeNumber, errorCorrectLevel, dataList) {
      var rsBlocks = _QRRSBlock.default.getRSBlocks(typeNumber, errorCorrectLevel);
      var buffer = new _QRBitBuffer.default();
      for (var i = 0; i < dataList.length; i++) {
        var data = dataList[i];
        buffer.put(data.mode, 4);
        buffer.put(data.getLength(), _QRUtil.default.getLengthInBits(data.mode, typeNumber));
        data.write(buffer);
      }
      var totalDataCount = 0;
      for (var i = 0; i < rsBlocks.length; i++) {
        totalDataCount += rsBlocks[i].dataCount;
      }
      if (buffer.getLengthInBits() > totalDataCount * 8) {
        throw new Error("code length overflow. (" + buffer.getLengthInBits() + ">" + totalDataCount * 8 + ")");
      }
      if (buffer.getLengthInBits() + 4 <= totalDataCount * 8) {
        buffer.put(0, 4);
      }
      while (buffer.getLengthInBits() % 8 != 0) {
        buffer.putBit(false);
      }
      while (true) {
        if (buffer.getLengthInBits() >= totalDataCount * 8) {
          break;
        }
        buffer.put(QRCodeModel.PAD0, 8);
        if (buffer.getLengthInBits() >= totalDataCount * 8) {
          break;
        }
        buffer.put(QRCodeModel.PAD1, 8);
      }
      return QRCodeModel.createBytes(buffer, rsBlocks);
    }
  }, {
    key: "createBytes",
    value: function createBytes(buffer, rsBlocks) {
      var offset = 0;
      var maxDcCount = 0;
      var maxEcCount = 0;
      var dcdata = new Array(rsBlocks.length);
      var ecdata = new Array(rsBlocks.length);
      for (var r = 0; r < rsBlocks.length; r++) {
        var dcCount = rsBlocks[r].dataCount;
        var ecCount = rsBlocks[r].totalCount - dcCount;
        maxDcCount = Math.max(maxDcCount, dcCount);
        maxEcCount = Math.max(maxEcCount, ecCount);
        dcdata[r] = new Array(dcCount);
        for (var i = 0; i < dcdata[r].length; i++) {
          dcdata[r][i] = 0xff & buffer.buffer[i + offset];
        }
        offset += dcCount;
        var rsPoly = _QRUtil.default.getErrorCorrectPolynomial(ecCount);
        var rawPoly = new _QRPolynomial.default(dcdata[r], rsPoly.getLength() - 1);
        var modPoly = rawPoly.mod(rsPoly);
        ecdata[r] = new Array(rsPoly.getLength() - 1);
        for (var i = 0; i < ecdata[r].length; i++) {
          var modIndex = i + modPoly.getLength() - ecdata[r].length;
          ecdata[r][i] = modIndex >= 0 ? modPoly.get(modIndex) : 0;
        }
      }
      var totalCodeCount = 0;
      for (var i = 0; i < rsBlocks.length; i++) {
        totalCodeCount += rsBlocks[i].totalCount;
      }
      var data = new Array(totalCodeCount);
      var index = 0;
      for (var i = 0; i < maxDcCount; i++) {
        for (var r = 0; r < rsBlocks.length; r++) {
          if (i < dcdata[r].length) {
            data[index++] = dcdata[r][i];
          }
        }
      }
      for (var i = 0; i < maxEcCount; i++) {
        for (var r = 0; r < rsBlocks.length; r++) {
          if (i < ecdata[r].length) {
            data[index++] = ecdata[r][i];
          }
        }
      }
      return data;
    }
  }]);
  return QRCodeModel;
}();
exports.default = QRCodeModel;
(0, _defineProperty2.default)(QRCodeModel, "PAD0", 0xEC);
(0, _defineProperty2.default)(QRCodeModel, "PAD1", 0x11);
;

/***/ }),

/***/ 1042:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QR8bitByte.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _QRMode = _interopRequireDefault(__webpack_require__(/*! ./QRMode.js */ 1043));
var QR8bitByte = /*#__PURE__*/function () {
  function QR8bitByte(data) {
    (0, _classCallCheck2.default)(this, QR8bitByte);
    (0, _defineProperty2.default)(this, "mode", _QRMode.default.MODE_8BIT_BYTE);
    (0, _defineProperty2.default)(this, "data", null);
    (0, _defineProperty2.default)(this, "parsedData", []);
    this.data = data;
    for (var i = 0, l = this.data.length; i < l; i++) {
      var byteArray = [];
      var code = this.data.charCodeAt(i);
      if (code > 0x10000) {
        byteArray[0] = 0xF0 | (code & 0x1C0000) >>> 18;
        byteArray[1] = 0x80 | (code & 0x3F000) >>> 12;
        byteArray[2] = 0x80 | (code & 0xFC0) >>> 6;
        byteArray[3] = 0x80 | code & 0x3F;
      } else if (code > 0x800) {
        byteArray[0] = 0xE0 | (code & 0xF000) >>> 12;
        byteArray[1] = 0x80 | (code & 0xFC0) >>> 6;
        byteArray[2] = 0x80 | code & 0x3F;
      } else if (code > 0x80) {
        byteArray[0] = 0xC0 | (code & 0x7C0) >>> 6;
        byteArray[1] = 0x80 | code & 0x3F;
      } else {
        byteArray[0] = code;
      }
      this.parsedData.push(byteArray);
    }
    this.parsedData = Array.prototype.concat.apply([], this.parsedData);
    if (this.parsedData.length != this.data.length) {
      this.parsedData.unshift(191);
      this.parsedData.unshift(187);
      this.parsedData.unshift(239);
    }
  }
  (0, _createClass2.default)(QR8bitByte, [{
    key: "getLength",
    value: function getLength(buffer) {
      return this.parsedData.length;
    }
  }, {
    key: "write",
    value: function write(buffer) {
      for (var i = 0, l = this.parsedData.length; i < l; i++) {
        buffer.put(this.parsedData[i], 8);
      }
    }
  }]);
  return QR8bitByte;
}();
exports.default = QR8bitByte;

/***/ }),

/***/ 1043:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRMode.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  MODE_NUMBER: 1 << 0,
  MODE_ALPHA_NUM: 1 << 1,
  MODE_8BIT_BYTE: 1 << 2,
  MODE_KANJI: 1 << 3
};
exports.default = _default;

/***/ }),

/***/ 1044:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRUtil.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _QRMaskPattern = _interopRequireDefault(__webpack_require__(/*! ./QRMaskPattern.js */ 1045));
var _QRPolynomial = _interopRequireDefault(__webpack_require__(/*! ./QRPolynomial.js */ 1046));
var _QRMode = _interopRequireDefault(__webpack_require__(/*! ./QRMode.js */ 1043));
var _QRMath = _interopRequireDefault(__webpack_require__(/*! ./QRMath.js */ 1047));
var QRUtil = /*#__PURE__*/function () {
  function QRUtil() {
    (0, _classCallCheck2.default)(this, QRUtil);
  }
  (0, _createClass2.default)(QRUtil, null, [{
    key: "getBCHTypeInfo",
    value: function getBCHTypeInfo(data) {
      var d = data << 10;
      while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) {
        d ^= QRUtil.G15 << QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15);
      }
      return (data << 10 | d) ^ QRUtil.G15_MASK;
    }
  }, {
    key: "getBCHTypeNumber",
    value: function getBCHTypeNumber(data) {
      var d = data << 12;
      while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) {
        d ^= QRUtil.G18 << QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18);
      }
      return data << 12 | d;
    }
  }, {
    key: "getBCHDigit",
    value: function getBCHDigit(data) {
      var digit = 0;
      while (data != 0) {
        digit++;
        data >>>= 1;
      }
      return digit;
    }
  }, {
    key: "getPatternPosition",
    value: function getPatternPosition(typeNumber) {
      return QRUtil.PATTERN_POSITION_TABLE[typeNumber - 1];
    }
  }, {
    key: "getMask",
    value: function getMask(maskPattern, i, j) {
      switch (maskPattern) {
        case _QRMaskPattern.default.PATTERN000:
          return (i + j) % 2 == 0;
        case _QRMaskPattern.default.PATTERN001:
          return i % 2 == 0;
        case _QRMaskPattern.default.PATTERN010:
          return j % 3 == 0;
        case _QRMaskPattern.default.PATTERN011:
          return (i + j) % 3 == 0;
        case _QRMaskPattern.default.PATTERN100:
          return (Math.floor(i / 2) + Math.floor(j / 3)) % 2 == 0;
        case _QRMaskPattern.default.PATTERN101:
          return i * j % 2 + i * j % 3 == 0;
        case _QRMaskPattern.default.PATTERN110:
          return (i * j % 2 + i * j % 3) % 2 == 0;
        case _QRMaskPattern.default.PATTERN111:
          return (i * j % 3 + (i + j) % 2) % 2 == 0;
        default:
          throw new Error("bad maskPattern:" + maskPattern);
      }
    }
  }, {
    key: "getErrorCorrectPolynomial",
    value: function getErrorCorrectPolynomial(errorCorrectLength) {
      var a = new _QRPolynomial.default([1], 0);
      for (var i = 0; i < errorCorrectLength; i++) {
        a = a.multiply(new _QRPolynomial.default([1, _QRMath.default.gexp(i)], 0));
      }
      return a;
    }
  }, {
    key: "getLengthInBits",
    value: function getLengthInBits(mode, type) {
      if (1 <= type && type < 10) {
        switch (mode) {
          case _QRMode.default.MODE_NUMBER:
            return 10;
          case _QRMode.default.MODE_ALPHA_NUM:
            return 9;
          case _QRMode.default.MODE_8BIT_BYTE:
            return 8;
          case _QRMode.default.MODE_KANJI:
            return 8;
          default:
            throw new Error("mode:" + mode);
        }
      } else if (type < 27) {
        switch (mode) {
          case _QRMode.default.MODE_NUMBER:
            return 12;
          case _QRMode.default.MODE_ALPHA_NUM:
            return 11;
          case _QRMode.default.MODE_8BIT_BYTE:
            return 16;
          case _QRMode.default.MODE_KANJI:
            return 10;
          default:
            throw new Error("mode:" + mode);
        }
      } else if (type < 41) {
        switch (mode) {
          case _QRMode.default.MODE_NUMBER:
            return 14;
          case _QRMode.default.MODE_ALPHA_NUM:
            return 13;
          case _QRMode.default.MODE_8BIT_BYTE:
            return 16;
          case _QRMode.default.MODE_KANJI:
            return 12;
          default:
            throw new Error("mode:" + mode);
        }
      } else {
        throw new Error("type:" + type);
      }
    }
  }, {
    key: "getLostPoint",
    value: function getLostPoint(qrCode) {
      var moduleCount = qrCode.getModuleCount();
      var lostPoint = 0;
      for (var row = 0; row < moduleCount; row++) {
        for (var col = 0; col < moduleCount; col++) {
          var sameCount = 0;
          var dark = qrCode.isDark(row, col);
          for (var r = -1; r <= 1; r++) {
            if (row + r < 0 || moduleCount <= row + r) {
              continue;
            }
            for (var c = -1; c <= 1; c++) {
              if (col + c < 0 || moduleCount <= col + c) {
                continue;
              }
              if (r == 0 && c == 0) {
                continue;
              }
              if (dark == qrCode.isDark(row + r, col + c)) {
                sameCount++;
              }
            }
          }
          if (sameCount > 5) {
            lostPoint += 3 + sameCount - 5;
          }
        }
      }
      for (var row = 0; row < moduleCount - 1; row++) {
        for (var col = 0; col < moduleCount - 1; col++) {
          var count = 0;
          if (qrCode.isDark(row, col)) count++;
          if (qrCode.isDark(row + 1, col)) count++;
          if (qrCode.isDark(row, col + 1)) count++;
          if (qrCode.isDark(row + 1, col + 1)) count++;
          if (count == 0 || count == 4) {
            lostPoint += 3;
          }
        }
      }
      for (var row = 0; row < moduleCount; row++) {
        for (var col = 0; col < moduleCount - 6; col++) {
          if (qrCode.isDark(row, col) && !qrCode.isDark(row, col + 1) && qrCode.isDark(row, col + 2) && qrCode.isDark(row, col + 3) && qrCode.isDark(row, col + 4) && !qrCode.isDark(row, col + 5) && qrCode.isDark(row, col + 6)) {
            lostPoint += 40;
          }
        }
      }
      for (var col = 0; col < moduleCount; col++) {
        for (var row = 0; row < moduleCount - 6; row++) {
          if (qrCode.isDark(row, col) && !qrCode.isDark(row + 1, col) && qrCode.isDark(row + 2, col) && qrCode.isDark(row + 3, col) && qrCode.isDark(row + 4, col) && !qrCode.isDark(row + 5, col) && qrCode.isDark(row + 6, col)) {
            lostPoint += 40;
          }
        }
      }
      var darkCount = 0;
      for (var col = 0; col < moduleCount; col++) {
        for (var row = 0; row < moduleCount; row++) {
          if (qrCode.isDark(row, col)) {
            darkCount++;
          }
        }
      }
      var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5;
      lostPoint += ratio * 10;
      return lostPoint;
    }
  }]);
  return QRUtil;
}();
exports.default = QRUtil;
(0, _defineProperty2.default)(QRUtil, "PATTERN_POSITION_TABLE", [[], [6, 18], [6, 22], [6, 26], [6, 30], [6, 34], [6, 22, 38], [6, 24, 42], [6, 26, 46], [6, 28, 50], [6, 30, 54], [6, 32, 58], [6, 34, 62], [6, 26, 46, 66], [6, 26, 48, 70], [6, 26, 50, 74], [6, 30, 54, 78], [6, 30, 56, 82], [6, 30, 58, 86], [6, 34, 62, 90], [6, 28, 50, 72, 94], [6, 26, 50, 74, 98], [6, 30, 54, 78, 102], [6, 28, 54, 80, 106], [6, 32, 58, 84, 110], [6, 30, 58, 86, 114], [6, 34, 62, 90, 118], [6, 26, 50, 74, 98, 122], [6, 30, 54, 78, 102, 126], [6, 26, 52, 78, 104, 130], [6, 30, 56, 82, 108, 134], [6, 34, 60, 86, 112, 138], [6, 30, 58, 86, 114, 142], [6, 34, 62, 90, 118, 146], [6, 30, 54, 78, 102, 126, 150], [6, 24, 50, 76, 102, 128, 154], [6, 28, 54, 80, 106, 132, 158], [6, 32, 58, 84, 110, 136, 162], [6, 26, 54, 82, 110, 138, 166], [6, 30, 58, 86, 114, 142, 170]]);
(0, _defineProperty2.default)(QRUtil, "G15", 1 << 10 | 1 << 8 | 1 << 5 | 1 << 4 | 1 << 2 | 1 << 1 | 1 << 0);
(0, _defineProperty2.default)(QRUtil, "G18", 1 << 12 | 1 << 11 | 1 << 10 | 1 << 9 | 1 << 8 | 1 << 5 | 1 << 2 | 1 << 0);
(0, _defineProperty2.default)(QRUtil, "G15_MASK", 1 << 14 | 1 << 12 | 1 << 10 | 1 << 4 | 1 << 1);
;

/***/ }),

/***/ 1045:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRMaskPattern.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  PATTERN000: 0,
  PATTERN001: 1,
  PATTERN010: 2,
  PATTERN011: 3,
  PATTERN100: 4,
  PATTERN101: 5,
  PATTERN110: 6,
  PATTERN111: 7
};
exports.default = _default;

/***/ }),

/***/ 1046:
/*!********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRPolynomial.js ***!
  \********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _QRMath = _interopRequireDefault(__webpack_require__(/*! ./QRMath */ 1047));
var QRPolynomial = /*#__PURE__*/function () {
  function QRPolynomial(num, shift) {
    (0, _classCallCheck2.default)(this, QRPolynomial);
    if (num.length == undefined) {
      throw new Error(num.length + "/" + shift);
    }
    var offset = 0;
    while (offset < num.length && num[offset] == 0) {
      offset++;
    }
    this.num = new Array(num.length - offset + shift);
    for (var i = 0; i < num.length - offset; i++) {
      this.num[i] = num[i + offset];
    }
  }
  (0, _createClass2.default)(QRPolynomial, [{
    key: "get",
    value: function get(index) {
      return this.num[index];
    }
  }, {
    key: "getLength",
    value: function getLength() {
      return this.num.length;
    }
  }, {
    key: "multiply",
    value: function multiply(e) {
      var num = new Array(this.getLength() + e.getLength() - 1);
      for (var i = 0; i < this.getLength(); i++) {
        for (var j = 0; j < e.getLength(); j++) {
          num[i + j] ^= _QRMath.default.gexp(_QRMath.default.glog(this.get(i)) + _QRMath.default.glog(e.get(j)));
        }
      }
      return new QRPolynomial(num, 0);
    }
  }, {
    key: "mod",
    value: function mod(e) {
      if (this.getLength() - e.getLength() < 0) {
        return this;
      }
      var ratio = _QRMath.default.glog(this.get(0)) - _QRMath.default.glog(e.get(0));
      var num = new Array(this.getLength());
      for (var i = 0; i < this.getLength(); i++) {
        num[i] = this.get(i);
      }
      for (var i = 0; i < e.getLength(); i++) {
        num[i] ^= _QRMath.default.gexp(_QRMath.default.glog(e.get(i)) + ratio);
      }
      return new QRPolynomial(num, 0).mod(e);
    }
  }]);
  return QRPolynomial;
}();
exports.default = QRPolynomial;
;

/***/ }),

/***/ 1047:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRMath.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var QRMath = /*#__PURE__*/function () {
  function QRMath() {
    (0, _classCallCheck2.default)(this, QRMath);
  }
  (0, _createClass2.default)(QRMath, null, [{
    key: "glog",
    value: function glog(n) {
      if (n < 1) {
        throw new Error("glog(" + n + ")");
      }
      return QRMath.LOG_TABLE[n];
    }
  }, {
    key: "gexp",
    value: function gexp(n) {
      while (n < 0) {
        n += 255;
      }
      while (n >= 256) {
        n -= 255;
      }
      return QRMath.EXP_TABLE[n];
    }
  }]);
  return QRMath;
}();
(0, _defineProperty2.default)(QRMath, "EXP_TABLE", new Array(256));
(0, _defineProperty2.default)(QRMath, "LOG_TABLE", new Array(256));
;
for (var i = 0; i < 8; i++) {
  QRMath.EXP_TABLE[i] = 1 << i;
}
for (var i = 8; i < 256; i++) {
  QRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4] ^ QRMath.EXP_TABLE[i - 5] ^ QRMath.EXP_TABLE[i - 6] ^ QRMath.EXP_TABLE[i - 8];
}
for (var i = 0; i < 255; i++) {
  QRMath.LOG_TABLE[QRMath.EXP_TABLE[i]] = i;
}
var _default = QRMath;
exports.default = _default;

/***/ }),

/***/ 1048:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRRSBlock.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _QRErrorCorrectLevel = _interopRequireDefault(__webpack_require__(/*! ./QRErrorCorrectLevel.js */ 1039));
var QRRSBlock = /*#__PURE__*/function () {
  function QRRSBlock(totalCount, dataCount) {
    (0, _classCallCheck2.default)(this, QRRSBlock);
    this.totalCount = totalCount;
    this.dataCount = dataCount;
  }
  (0, _createClass2.default)(QRRSBlock, null, [{
    key: "getRSBlocks",
    value: function getRSBlocks(typeNumber, errorCorrectLevel) {
      var rsBlock = QRRSBlock.getRsBlockTable(typeNumber, errorCorrectLevel);
      if (rsBlock == undefined) {
        throw new Error("bad rs block @ typeNumber:" + typeNumber + "/errorCorrectLevel:" + errorCorrectLevel);
      }
      var length = rsBlock.length / 3;
      var list = [];
      for (var i = 0; i < length; i++) {
        var count = rsBlock[i * 3 + 0];
        var totalCount = rsBlock[i * 3 + 1];
        var dataCount = rsBlock[i * 3 + 2];
        for (var j = 0; j < count; j++) {
          list.push(new QRRSBlock(totalCount, dataCount));
        }
      }
      return list;
    }
  }, {
    key: "getRsBlockTable",
    value: function getRsBlockTable(typeNumber, errorCorrectLevel) {
      switch (errorCorrectLevel) {
        case _QRErrorCorrectLevel.default.L:
          return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 0];
        case _QRErrorCorrectLevel.default.M:
          return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 1];
        case _QRErrorCorrectLevel.default.Q:
          return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 2];
        case _QRErrorCorrectLevel.default.H:
          return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 3];
        default:
          return undefined;
      }
    }
  }]);
  return QRRSBlock;
}();
exports.default = QRRSBlock;
(0, _defineProperty2.default)(QRRSBlock, "RS_BLOCK_TABLE", [[1, 26, 19], [1, 26, 16], [1, 26, 13], [1, 26, 9], [1, 44, 34], [1, 44, 28], [1, 44, 22], [1, 44, 16], [1, 70, 55], [1, 70, 44], [2, 35, 17], [2, 35, 13], [1, 100, 80], [2, 50, 32], [2, 50, 24], [4, 25, 9], [1, 134, 108], [2, 67, 43], [2, 33, 15, 2, 34, 16], [2, 33, 11, 2, 34, 12], [2, 86, 68], [4, 43, 27], [4, 43, 19], [4, 43, 15], [2, 98, 78], [4, 49, 31], [2, 32, 14, 4, 33, 15], [4, 39, 13, 1, 40, 14], [2, 121, 97], [2, 60, 38, 2, 61, 39], [4, 40, 18, 2, 41, 19], [4, 40, 14, 2, 41, 15], [2, 146, 116], [3, 58, 36, 2, 59, 37], [4, 36, 16, 4, 37, 17], [4, 36, 12, 4, 37, 13], [2, 86, 68, 2, 87, 69], [4, 69, 43, 1, 70, 44], [6, 43, 19, 2, 44, 20], [6, 43, 15, 2, 44, 16], [4, 101, 81], [1, 80, 50, 4, 81, 51], [4, 50, 22, 4, 51, 23], [3, 36, 12, 8, 37, 13], [2, 116, 92, 2, 117, 93], [6, 58, 36, 2, 59, 37], [4, 46, 20, 6, 47, 21], [7, 42, 14, 4, 43, 15], [4, 133, 107], [8, 59, 37, 1, 60, 38], [8, 44, 20, 4, 45, 21], [12, 33, 11, 4, 34, 12], [3, 145, 115, 1, 146, 116], [4, 64, 40, 5, 65, 41], [11, 36, 16, 5, 37, 17], [11, 36, 12, 5, 37, 13], [5, 109, 87, 1, 110, 88], [5, 65, 41, 5, 66, 42], [5, 54, 24, 7, 55, 25], [11, 36, 12], [5, 122, 98, 1, 123, 99], [7, 73, 45, 3, 74, 46], [15, 43, 19, 2, 44, 20], [3, 45, 15, 13, 46, 16], [1, 135, 107, 5, 136, 108], [10, 74, 46, 1, 75, 47], [1, 50, 22, 15, 51, 23], [2, 42, 14, 17, 43, 15], [5, 150, 120, 1, 151, 121], [9, 69, 43, 4, 70, 44], [17, 50, 22, 1, 51, 23], [2, 42, 14, 19, 43, 15], [3, 141, 113, 4, 142, 114], [3, 70, 44, 11, 71, 45], [17, 47, 21, 4, 48, 22], [9, 39, 13, 16, 40, 14], [3, 135, 107, 5, 136, 108], [3, 67, 41, 13, 68, 42], [15, 54, 24, 5, 55, 25], [15, 43, 15, 10, 44, 16], [4, 144, 116, 4, 145, 117], [17, 68, 42], [17, 50, 22, 6, 51, 23], [19, 46, 16, 6, 47, 17], [2, 139, 111, 7, 140, 112], [17, 74, 46], [7, 54, 24, 16, 55, 25], [34, 37, 13], [4, 151, 121, 5, 152, 122], [4, 75, 47, 14, 76, 48], [11, 54, 24, 14, 55, 25], [16, 45, 15, 14, 46, 16], [6, 147, 117, 4, 148, 118], [6, 73, 45, 14, 74, 46], [11, 54, 24, 16, 55, 25], [30, 46, 16, 2, 47, 17], [8, 132, 106, 4, 133, 107], [8, 75, 47, 13, 76, 48], [7, 54, 24, 22, 55, 25], [22, 45, 15, 13, 46, 16], [10, 142, 114, 2, 143, 115], [19, 74, 46, 4, 75, 47], [28, 50, 22, 6, 51, 23], [33, 46, 16, 4, 47, 17], [8, 152, 122, 4, 153, 123], [22, 73, 45, 3, 74, 46], [8, 53, 23, 26, 54, 24], [12, 45, 15, 28, 46, 16], [3, 147, 117, 10, 148, 118], [3, 73, 45, 23, 74, 46], [4, 54, 24, 31, 55, 25], [11, 45, 15, 31, 46, 16], [7, 146, 116, 7, 147, 117], [21, 73, 45, 7, 74, 46], [1, 53, 23, 37, 54, 24], [19, 45, 15, 26, 46, 16], [5, 145, 115, 10, 146, 116], [19, 75, 47, 10, 76, 48], [15, 54, 24, 25, 55, 25], [23, 45, 15, 25, 46, 16], [13, 145, 115, 3, 146, 116], [2, 74, 46, 29, 75, 47], [42, 54, 24, 1, 55, 25], [23, 45, 15, 28, 46, 16], [17, 145, 115], [10, 74, 46, 23, 75, 47], [10, 54, 24, 35, 55, 25], [19, 45, 15, 35, 46, 16], [17, 145, 115, 1, 146, 116], [14, 74, 46, 21, 75, 47], [29, 54, 24, 19, 55, 25], [11, 45, 15, 46, 46, 16], [13, 145, 115, 6, 146, 116], [14, 74, 46, 23, 75, 47], [44, 54, 24, 7, 55, 25], [59, 46, 16, 1, 47, 17], [12, 151, 121, 7, 152, 122], [12, 75, 47, 26, 76, 48], [39, 54, 24, 14, 55, 25], [22, 45, 15, 41, 46, 16], [6, 151, 121, 14, 152, 122], [6, 75, 47, 34, 76, 48], [46, 54, 24, 10, 55, 25], [2, 45, 15, 64, 46, 16], [17, 152, 122, 4, 153, 123], [29, 74, 46, 14, 75, 47], [49, 54, 24, 10, 55, 25], [24, 45, 15, 46, 46, 16], [4, 152, 122, 18, 153, 123], [13, 74, 46, 32, 75, 47], [48, 54, 24, 14, 55, 25], [42, 45, 15, 32, 46, 16], [20, 147, 117, 4, 148, 118], [40, 75, 47, 7, 76, 48], [43, 54, 24, 22, 55, 25], [10, 45, 15, 67, 46, 16], [19, 148, 118, 6, 149, 119], [18, 75, 47, 31, 76, 48], [34, 54, 24, 34, 55, 25], [20, 45, 15, 61, 46, 16]]);

/***/ }),

/***/ 1049:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/components/xinyu-canvas-drawer/qrcode/QRBitBuffer.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var QRBitBuffer = /*#__PURE__*/function () {
  function QRBitBuffer() {
    (0, _classCallCheck2.default)(this, QRBitBuffer);
    this.buffer = [];
    this.length = 0;
  }
  (0, _createClass2.default)(QRBitBuffer, [{
    key: "get",
    value: function get(index) {
      var bufIndex = Math.floor(index / 8);
      return (this.buffer[bufIndex] >>> 7 - index % 8 & 1) == 1;
    }
  }, {
    key: "put",
    value: function put(num, length) {
      for (var i = 0; i < length; i++) {
        this.putBit((num >>> length - i - 1 & 1) == 1);
      }
    }
  }, {
    key: "getLengthInBits",
    value: function getLengthInBits() {
      return this.length;
    }
  }, {
    key: "putBit",
    value: function putBit(bit) {
      var bufIndex = Math.floor(this.length / 8);
      if (this.buffer.length <= bufIndex) {
        this.buffer.push(0);
      }
      if (bit) {
        this.buffer[bufIndex] |= 0x80 >>> this.length % 8;
      }
      this.length++;
    }
  }]);
  return QRBitBuffer;
}();
exports.default = QRBitBuffer;
;

/***/ }),

/***/ 105:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/gridItem.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:06:13
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/gridItem.js
 */
var _default = {
  // grid-item组件
  gridItem: {
    name: null,
    bgColor: 'transparent'
  }
};
exports.default = _default;

/***/ }),

/***/ 1057:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-switch/props.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否为加载中状态
    loading: {
      type: Boolean,
      default: uni.$u.props.switch.loading
    },
    // 是否为禁用装填
    disabled: {
      type: Boolean,
      default: uni.$u.props.switch.disabled
    },
    // 开关尺寸，单位px
    size: {
      type: [String, Number],
      default: uni.$u.props.switch.size
    },
    // 打开时的背景颜色
    activeColor: {
      type: String,
      default: uni.$u.props.switch.activeColor
    },
    // 关闭时的背景颜色
    inactiveColor: {
      type: String,
      default: uni.$u.props.switch.inactiveColor
    },
    // 通过v-model双向绑定的值
    value: {
      type: [Boolean, String, Number],
      default: uni.$u.props.switch.value
    },
    // switch打开时的值
    activeValue: {
      type: [String, Number, Boolean],
      default: uni.$u.props.switch.activeValue
    },
    // switch关闭时的值
    inactiveValue: {
      type: [String, Number, Boolean],
      default: uni.$u.props.switch.inactiveValue
    },
    // 是否开启异步变更，开启后需要手动控制输入值
    asyncChange: {
      type: Boolean,
      default: uni.$u.props.switch.asyncChange
    },
    // 圆点与外边框的距离
    space: {
      type: [String, Number],
      default: uni.$u.props.switch.space
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 106:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/icon.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _config = _interopRequireDefault(__webpack_require__(/*! ../config */ 73));
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 18:00:14
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/icon.js
 */

var color = _config.default.color;
var _default = {
  // icon组件
  icon: {
    name: '',
    color: color['u-content-color'],
    size: '16px',
    bold: false,
    index: '',
    hoverClass: '',
    customPrefix: 'uicon',
    label: '',
    labelPos: 'right',
    labelSize: '15px',
    labelColor: color['u-content-color'],
    space: '3px',
    imgMode: '',
    width: '',
    height: '',
    top: 0,
    stop: false
  }
};
exports.default = _default;

/***/ }),

/***/ 1065:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-text/props.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 主题颜色
    type: {
      type: String,
      default: uni.$u.props.text.type
    },
    // 是否显示
    show: {
      type: Boolean,
      default: uni.$u.props.text.show
    },
    // 显示的值
    text: {
      type: [String, Number],
      default: uni.$u.props.text.text
    },
    // 前置图标
    prefixIcon: {
      type: String,
      default: uni.$u.props.text.prefixIcon
    },
    // 后置图标
    suffixIcon: {
      type: String,
      default: uni.$u.props.text.suffixIcon
    },
    // 文本处理的匹配模式
    // text-普通文本，price-价格，phone-手机号，name-姓名，date-日期，link-超链接
    mode: {
      type: String,
      default: uni.$u.props.text.mode
    },
    // mode=link下，配置的链接
    href: {
      type: String,
      default: uni.$u.props.text.href
    },
    // 格式化规则
    format: {
      type: [String, Function],
      default: uni.$u.props.text.format
    },
    // mode=phone时，点击文本是否拨打电话
    call: {
      type: Boolean,
      default: uni.$u.props.text.call
    },
    // 小程序的打开方式
    openType: {
      type: String,
      default: uni.$u.props.text.openType
    },
    // 是否粗体，默认normal
    bold: {
      type: Boolean,
      default: uni.$u.props.text.bold
    },
    // 是否块状
    block: {
      type: Boolean,
      default: uni.$u.props.text.block
    },
    // 文本显示的行数，如果设置，超出此行数，将会显示省略号
    lines: {
      type: [String, Number],
      default: uni.$u.props.text.lines
    },
    // 文本颜色
    color: {
      type: String,
      default: uni.$u.props.text.color
    },
    // 字体大小
    size: {
      type: [String, Number],
      default: uni.$u.props.text.size
    },
    // 图标的样式
    iconStyle: {
      type: [Object, String],
      default: uni.$u.props.text.iconStyle
    },
    // 文字装饰，下划线，中划线等，可选值 none|underline|line-through
    decoration: {
      type: String,
      default: uni.$u.props.text.decoration
    },
    // 外边距，对象、字符串，数值形式均可
    margin: {
      type: [Object, String, Number],
      default: uni.$u.props.text.margin
    },
    // 文本行高
    lineHeight: {
      type: [String, Number],
      default: uni.$u.props.text.lineHeight
    },
    // 文本对齐方式，可选值left|center|right
    align: {
      type: String,
      default: uni.$u.props.text.align
    },
    // 文字换行，可选值break-word|normal|anywhere
    wordWrap: {
      type: String,
      default: uni.$u.props.text.wordWrap
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 107:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/image.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:01:51
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/image.js
 */
var _default = {
  // image组件
  image: {
    src: '',
    mode: 'aspectFill',
    width: '300',
    height: '225',
    shape: 'square',
    radius: 0,
    lazyLoad: true,
    showMenuByLongpress: true,
    loadingIcon: 'photo',
    errorIcon: 'error-circle',
    showLoading: true,
    showError: true,
    fade: true,
    webp: false,
    duration: 500,
    bgColor: '#f3f4f6'
  }
};
exports.default = _default;

/***/ }),

/***/ 1071:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-code/props.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 倒计时总秒数
    seconds: {
      type: [String, Number],
      default: uni.$u.props.code.seconds
    },
    // 尚未开始时提示
    startText: {
      type: String,
      default: uni.$u.props.code.startText
    },
    // 正在倒计时中的提示
    changeText: {
      type: String,
      default: uni.$u.props.code.changeText
    },
    // 倒计时结束时的提示
    endText: {
      type: String,
      default: uni.$u.props.code.endText
    },
    // 是否在H5刷新或各端返回再进入时继续倒计时
    keepRunning: {
      type: Boolean,
      default: uni.$u.props.code.keepRunning
    },
    // 为了区分多个页面，或者一个页面多个倒计时组件本地存储的继续倒计时变了
    uniqueKey: {
      type: String,
      default: uni.$u.props.code.uniqueKey
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 1079:
/*!*********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/mixin/button.js ***!
  \*********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    lang: String,
    sessionFrom: String,
    sendMessageTitle: String,
    sendMessagePath: String,
    sendMessageImg: String,
    showMessageCard: Boolean,
    appParameter: String,
    formType: String,
    openType: String
  }
};
exports.default = _default;

/***/ }),

/***/ 108:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/indexAnchor.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:13:15
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/indexAnchor.js
 */
var _default = {
  // indexAnchor 组件
  indexAnchor: {
    text: '',
    color: '#606266',
    size: 14,
    bgColor: '#dedede',
    height: 32
  }
};
exports.default = _default;

/***/ }),

/***/ 1080:
/*!***********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/mixin/openType.js ***!
  \***********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    openType: String
  },
  methods: {
    onGetUserInfo: function onGetUserInfo(event) {
      this.$emit('getuserinfo', event.detail);
    },
    onContact: function onContact(event) {
      this.$emit('contact', event.detail);
    },
    onGetPhoneNumber: function onGetPhoneNumber(event) {
      this.$emit('getphonenumber', event.detail);
    },
    onError: function onError(event) {
      this.$emit('error', event.detail);
    },
    onLaunchApp: function onLaunchApp(event) {
      this.$emit('launchapp', event.detail);
    },
    onOpenSetting: function onOpenSetting(event) {
      this.$emit('opensetting', event.detail);
    }
  }
};
exports.default = _default;

/***/ }),

/***/ 1081:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-button/props.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-16 10:04:04
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-16 10:04:24
 * @FilePath     : /u-view2.0/uview-ui/components/u-button/props.js
 */
var _default = {
  props: {
    // 是否细边框
    hairline: {
      type: Boolean,
      default: uni.$u.props.button.hairline
    },
    // 按钮的预置样式，info，primary，error，warning，success
    type: {
      type: String,
      default: uni.$u.props.button.type
    },
    // 按钮尺寸，large，normal，small，mini
    size: {
      type: String,
      default: uni.$u.props.button.size
    },
    // 按钮形状，circle（两边为半圆），square（带圆角）
    shape: {
      type: String,
      default: uni.$u.props.button.shape
    },
    // 按钮是否镂空
    plain: {
      type: Boolean,
      default: uni.$u.props.button.plain
    },
    // 是否禁止状态
    disabled: {
      type: Boolean,
      default: uni.$u.props.button.disabled
    },
    // 是否加载中
    loading: {
      type: Boolean,
      default: uni.$u.props.button.loading
    },
    // 加载中提示文字
    loadingText: {
      type: [String, Number],
      default: uni.$u.props.button.loadingText
    },
    // 加载状态图标类型
    loadingMode: {
      type: String,
      default: uni.$u.props.button.loadingMode
    },
    // 加载图标大小
    loadingSize: {
      type: [String, Number],
      default: uni.$u.props.button.loadingSize
    },
    // 开放能力，具体请看uniapp稳定关于button组件部分说明
    // https://uniapp.dcloud.io/component/button
    openType: {
      type: String,
      default: uni.$u.props.button.openType
    },
    // 用于 <form> 组件，点击分别会触发 <form> 组件的 submit/reset 事件
    // 取值为submit（提交表单），reset（重置表单）
    formType: {
      type: String,
      default: uni.$u.props.button.formType
    },
    // 打开 APP 时，向 APP 传递的参数，open-type=launchApp时有效
    // 只微信小程序、QQ小程序有效
    appParameter: {
      type: String,
      default: uni.$u.props.button.appParameter
    },
    // 指定是否阻止本节点的祖先节点出现点击态，微信小程序有效
    hoverStopPropagation: {
      type: Boolean,
      default: uni.$u.props.button.hoverStopPropagation
    },
    // 指定返回用户信息的语言，zh_CN 简体中文，zh_TW 繁体中文，en 英文。只微信小程序有效
    lang: {
      type: String,
      default: uni.$u.props.button.lang
    },
    // 会话来源，open-type="contact"时有效。只微信小程序有效
    sessionFrom: {
      type: String,
      default: uni.$u.props.button.sessionFrom
    },
    // 会话内消息卡片标题，open-type="contact"时有效
    // 默认当前标题，只微信小程序有效
    sendMessageTitle: {
      type: String,
      default: uni.$u.props.button.sendMessageTitle
    },
    // 会话内消息卡片点击跳转小程序路径，open-type="contact"时有效
    // 默认当前分享路径，只微信小程序有效
    sendMessagePath: {
      type: String,
      default: uni.$u.props.button.sendMessagePath
    },
    // 会话内消息卡片图片，open-type="contact"时有效
    // 默认当前页面截图，只微信小程序有效
    sendMessageImg: {
      type: String,
      default: uni.$u.props.button.sendMessageImg
    },
    // 是否显示会话内消息卡片，设置此参数为 true，用户进入客服会话会在右下角显示"可能要发送的小程序"提示，
    // 用户点击后可以快速发送小程序消息，open-type="contact"时有效
    showMessageCard: {
      type: Boolean,
      default: uni.$u.props.button.showMessageCard
    },
    // 额外传参参数，用于小程序的data-xxx属性，通过target.dataset.name获取
    dataName: {
      type: String,
      default: uni.$u.props.button.dataName
    },
    // 节流，一定时间内只能触发一次
    throttleTime: {
      type: [String, Number],
      default: uni.$u.props.button.throttleTime
    },
    // 按住后多久出现点击态，单位毫秒
    hoverStartTime: {
      type: [String, Number],
      default: uni.$u.props.button.hoverStartTime
    },
    // 手指松开后点击态保留时间，单位毫秒
    hoverStayTime: {
      type: [String, Number],
      default: uni.$u.props.button.hoverStayTime
    },
    // 按钮文字，之所以通过props传入，是因为slot传入的话
    // nvue中无法控制文字的样式
    text: {
      type: [String, Number],
      default: uni.$u.props.button.text
    },
    // 按钮图标
    icon: {
      type: String,
      default: uni.$u.props.button.icon
    },
    // 按钮图标
    iconColor: {
      type: String,
      default: uni.$u.props.button.icon
    },
    // 按钮颜色，支持传入linear-gradient渐变色
    color: {
      type: String,
      default: uni.$u.props.button.color
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 109:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/indexList.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:13:35
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/indexList.js
 */
var _default = {
  // indexList 组件
  indexList: {
    inactiveColor: '#606266',
    activeColor: '#5677fc',
    indexList: function indexList() {
      return [];
    },
    sticky: true,
    customNavHeight: 0
  }
};
exports.default = _default;

/***/ }),

/***/ 11:
/*!***************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/defineProperty.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ 12);
function _defineProperty(obj, key, value) {
  key = toPropertyKey(key);
  if (key in obj) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }
  return obj;
}
module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 110:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/input.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:13:55
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/input.js
 */
var _default = {
  // index 组件
  input: {
    value: '',
    type: 'text',
    fixed: false,
    disabled: false,
    disabledColor: '#f5f7fa',
    clearable: false,
    password: false,
    maxlength: -1,
    placeholder: null,
    placeholderClass: 'input-placeholder',
    placeholderStyle: 'color: #c0c4cc',
    showWordLimit: false,
    confirmType: 'done',
    confirmHold: false,
    holdKeyboard: false,
    focus: false,
    autoBlur: false,
    disableDefaultPadding: false,
    cursor: -1,
    cursorSpacing: 30,
    selectionStart: -1,
    selectionEnd: -1,
    adjustPosition: true,
    inputAlign: 'left',
    fontSize: '15px',
    color: '#303133',
    prefixIcon: '',
    prefixIconStyle: '',
    suffixIcon: '',
    suffixIconStyle: '',
    border: 'surround',
    readonly: false,
    shape: 'square',
    formatter: null
  }
};
exports.default = _default;

/***/ }),

/***/ 1103:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-status-bar/props.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    bgColor: {
      type: String,
      default: uni.$u.props.statusBar.bgColor
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 111:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/keyboard.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:07:49
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/keyboard.js
 */
var _default = {
  // 键盘组件
  keyboard: {
    mode: 'number',
    dotDisabled: false,
    tooltip: true,
    showTips: true,
    tips: '',
    showCancel: true,
    showConfirm: true,
    random: false,
    safeAreaInsetBottom: true,
    closeOnClickOverlay: true,
    show: false,
    overlay: true,
    zIndex: 10075,
    cancelText: '取消',
    confirmText: '确定',
    autoChange: false
  }
};
exports.default = _default;

/***/ }),

/***/ 1111:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-transition/props.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否展示组件
    show: {
      type: Boolean,
      default: uni.$u.props.transition.show
    },
    // 使用的动画模式
    mode: {
      type: String,
      default: uni.$u.props.transition.mode
    },
    // 动画的执行时间，单位ms
    duration: {
      type: [String, Number],
      default: uni.$u.props.transition.duration
    },
    // 使用的动画过渡函数
    timingFunction: {
      type: String,
      default: uni.$u.props.transition.timingFunction
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 1112:
/*!**************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-transition/transition.js ***!
  \**************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 63));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 65));
var _nvueAniMap = _interopRequireDefault(__webpack_require__(/*! ./nvue.ani-map.js */ 1113));
// 定义一个一定时间后自动成功的promise，让调用nextTick方法处，进入下一个then方法
var nextTick = function nextTick() {
  return new Promise(function (resolve) {
    return setTimeout(resolve, 1000 / 50);
  });
};
// nvue动画模块实现细节抽离在外部文件

// 定义类名，通过给元素动态切换类名，赋予元素一定的css动画样式
var getClassNames = function getClassNames(name) {
  return {
    enter: "u-".concat(name, "-enter u-").concat(name, "-enter-active"),
    'enter-to': "u-".concat(name, "-enter-to u-").concat(name, "-enter-active"),
    leave: "u-".concat(name, "-leave u-").concat(name, "-leave-active"),
    'leave-to': "u-".concat(name, "-leave-to u-").concat(name, "-leave-active")
  };
};
var _default = {
  methods: {
    // 组件被点击发出事件
    clickHandler: function clickHandler() {
      this.$emit('click');
    },
    // vue版本的组件进场处理
    vueEnter: function vueEnter() {
      var _this = this;
      // 动画进入时的类名
      var classNames = getClassNames(this.mode);
      // 定义状态和发出动画进入前事件
      this.status = 'enter';
      this.$emit('beforeEnter');
      this.inited = true;
      this.display = true;
      this.classes = classNames.enter;
      this.$nextTick( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
        return _regenerator.default.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                // 标识动画尚未结束
                _this.$emit('enter');
                _this.transitionEnded = false;
                // 组件动画进入后触发的事件
                _this.$emit('afterEnter');
                // 赋予组件enter-to类名
                _this.classes = classNames['enter-to'];
              case 4:
              case "end":
                return _context.stop();
            }
          }
        }, _callee);
      })));
    },
    // 动画离场处理
    vueLeave: function vueLeave() {
      var _this2 = this;
      // 如果不是展示状态，无需执行逻辑
      if (!this.display) return;
      var classNames = getClassNames(this.mode);
      // 标记离开状态和发出事件
      this.status = 'leave';
      this.$emit('beforeLeave');
      // 获得类名
      this.classes = classNames.leave;
      this.$nextTick(function () {
        // 动画正在离场的状态
        _this2.transitionEnded = false;
        _this2.$emit('leave');
        // 组件执行动画，到了执行的执行时间后，执行一些额外处理
        setTimeout(_this2.onTransitionEnd, _this2.duration);
        _this2.classes = classNames['leave-to'];
      });
    },
    // 完成过渡后触发
    onTransitionEnd: function onTransitionEnd() {
      // 如果已经是结束的状态，无需再处理
      if (this.transitionEnded) return;
      this.transitionEnded = true;
      // 发出组件动画执行后的事件
      this.$emit(this.status === 'leave' ? 'afterLeave' : 'afterEnter');
      if (!this.show && this.display) {
        this.display = false;
        this.inited = false;
      }
    }
  }
};
exports.default = _default;

/***/ }),

/***/ 1113:
/*!****************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-transition/nvue.ani-map.js ***!
  \****************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  fade: {
    enter: {
      opacity: 0
    },
    'enter-to': {
      opacity: 1
    },
    leave: {
      opacity: 1
    },
    'leave-to': {
      opacity: 0
    }
  },
  'fade-up': {
    enter: {
      opacity: 0,
      transform: 'translateY(100%)'
    },
    'enter-to': {
      opacity: 1,
      transform: 'translateY(0)'
    },
    leave: {
      opacity: 1,
      transform: 'translateY(0)'
    },
    'leave-to': {
      opacity: 0,
      transform: 'translateY(100%)'
    }
  },
  'fade-down': {
    enter: {
      opacity: 0,
      transform: 'translateY(-100%)'
    },
    'enter-to': {
      opacity: 1,
      transform: 'translateY(0)'
    },
    leave: {
      opacity: 1,
      transform: 'translateY(0)'
    },
    'leave-to': {
      opacity: 0,
      transform: 'translateY(-100%)'
    }
  },
  'fade-left': {
    enter: {
      opacity: 0,
      transform: 'translateX(-100%)'
    },
    'enter-to': {
      opacity: 1,
      transform: 'translateY(0)'
    },
    leave: {
      opacity: 1,
      transform: 'translateY(0)'
    },
    'leave-to': {
      opacity: 0,
      transform: 'translateX(-100%)'
    }
  },
  'fade-right': {
    enter: {
      opacity: 0,
      transform: 'translateX(100%)'
    },
    'enter-to': {
      opacity: 1,
      transform: 'translateY(0)'
    },
    leave: {
      opacity: 1,
      transform: 'translateY(0)'
    },
    'leave-to': {
      opacity: 0,
      transform: 'translateX(100%)'
    }
  },
  'slide-up': {
    enter: {
      transform: 'translateY(100%)'
    },
    'enter-to': {
      transform: 'translateY(0)'
    },
    leave: {
      transform: 'translateY(0)'
    },
    'leave-to': {
      transform: 'translateY(100%)'
    }
  },
  'slide-down': {
    enter: {
      transform: 'translateY(-100%)'
    },
    'enter-to': {
      transform: 'translateY(0)'
    },
    leave: {
      transform: 'translateY(0)'
    },
    'leave-to': {
      transform: 'translateY(-100%)'
    }
  },
  'slide-left': {
    enter: {
      transform: 'translateX(-100%)'
    },
    'enter-to': {
      transform: 'translateY(0)'
    },
    leave: {
      transform: 'translateY(0)'
    },
    'leave-to': {
      transform: 'translateX(-100%)'
    }
  },
  'slide-right': {
    enter: {
      transform: 'translateX(100%)'
    },
    'enter-to': {
      transform: 'translateY(0)'
    },
    leave: {
      transform: 'translateY(0)'
    },
    'leave-to': {
      transform: 'translateX(100%)'
    }
  },
  zoom: {
    enter: {
      transform: 'scale(0.95)'
    },
    'enter-to': {
      transform: 'scale(1)'
    },
    leave: {
      transform: 'scale(1)'
    },
    'leave-to': {
      transform: 'scale(0.95)'
    }
  },
  'fade-zoom': {
    enter: {
      opacity: 0,
      transform: 'scale(0.95)'
    },
    'enter-to': {
      opacity: 1,
      transform: 'scale(1)'
    },
    leave: {
      opacity: 1,
      transform: 'scale(1)'
    },
    'leave-to': {
      opacity: 0,
      transform: 'scale(0.95)'
    }
  }
};
exports.default = _default;

/***/ }),

/***/ 112:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/line.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:04:49
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/line.js
 */
var _default = {
  // line组件
  line: {
    color: '#d6d7d9',
    length: '100%',
    direction: 'row',
    hairline: true,
    margin: 0,
    dashed: false
  }
};
exports.default = _default;

/***/ }),

/***/ 1121:
/*!**********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-safe-bottom/props.js ***!
  \**********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {}
};
exports.default = _default;

/***/ }),

/***/ 1129:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-toolbar/props.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否展示工具条
    show: {
      type: Boolean,
      default: uni.$u.props.toolbar.show
    },
    // 取消按钮的文字
    cancelText: {
      type: String,
      default: uni.$u.props.toolbar.cancelText
    },
    // 确认按钮的文字
    confirmText: {
      type: String,
      default: uni.$u.props.toolbar.confirmText
    },
    // 取消按钮的颜色
    cancelColor: {
      type: String,
      default: uni.$u.props.toolbar.cancelColor
    },
    // 确认按钮的颜色
    confirmColor: {
      type: String,
      default: uni.$u.props.toolbar.confirmColor
    },
    // 标题文字
    title: {
      type: String,
      default: uni.$u.props.toolbar.title
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 113:
/*!**********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/lineProgress.js ***!
  \**********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:14:11
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/lineProgress.js
 */
var _default = {
  // lineProgress 组件
  lineProgress: {
    activeColor: '#19be6b',
    inactiveColor: '#ececec',
    percentage: 0,
    showText: true,
    height: 12
  }
};
exports.default = _default;

/***/ }),

/***/ 1137:
/*!***********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-loading-icon/props.js ***!
  \***********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否显示组件
    show: {
      type: Boolean,
      default: uni.$u.props.loadingIcon.show
    },
    // 颜色
    color: {
      type: String,
      default: uni.$u.props.loadingIcon.color
    },
    // 提示文字颜色
    textColor: {
      type: String,
      default: uni.$u.props.loadingIcon.textColor
    },
    // 文字和图标是否垂直排列
    vertical: {
      type: Boolean,
      default: uni.$u.props.loadingIcon.vertical
    },
    // 模式选择，circle-圆形，spinner-花朵形，semicircle-半圆形
    mode: {
      type: String,
      default: uni.$u.props.loadingIcon.mode
    },
    // 图标大小，单位默认px
    size: {
      type: [String, Number],
      default: uni.$u.props.loadingIcon.size
    },
    // 文字大小
    textSize: {
      type: [String, Number],
      default: uni.$u.props.loadingIcon.textSize
    },
    // 文字内容
    text: {
      type: [String, Number],
      default: uni.$u.props.loadingIcon.text
    },
    // 动画模式
    timingFunction: {
      type: String,
      default: uni.$u.props.loadingIcon.timingFunction
    },
    // 动画执行周期时间
    duration: {
      type: [String, Number],
      default: uni.$u.props.loadingIcon.duration
    },
    // mode=circle时的暗边颜色
    inactiveColor: {
      type: String,
      default: uni.$u.props.loadingIcon.inactiveColor
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 114:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/link.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _config = _interopRequireDefault(__webpack_require__(/*! ../config */ 73));
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:45:36
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/link.js
 */

var color = _config.default.color;
var _default = {
  // link超链接组件props参数
  link: {
    color: color['u-primary'],
    fontSize: 15,
    underLine: false,
    href: '',
    mpTips: '链接已复制，请在浏览器打开',
    lineColor: '',
    text: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 1145:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-line/props.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    color: {
      type: String,
      default: uni.$u.props.line.color
    },
    // 长度，竖向时表现为高度，横向时表现为长度，可以为百分比，带px单位的值等
    length: {
      type: [String, Number],
      default: uni.$u.props.line.length
    },
    // 线条方向，col-竖向，row-横向
    direction: {
      type: String,
      default: uni.$u.props.line.direction
    },
    // 是否显示细边框
    hairline: {
      type: Boolean,
      default: uni.$u.props.line.hairline
    },
    // 线条与上下左右元素的间距，字符串形式，如"30px"、"20px 30px"
    margin: {
      type: [String, Number],
      default: uni.$u.props.line.margin
    },
    // 是否虚线，true-虚线，false-实线
    dashed: {
      type: Boolean,
      default: uni.$u.props.line.dashed
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 115:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/list.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:14:53
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/list.js
 */
var _default = {
  // list 组件
  list: {
    showScrollbar: false,
    lowerThreshold: 50,
    upperThreshold: 0,
    scrollTop: 0,
    offsetAccuracy: 10,
    enableFlex: false,
    pagingEnabled: false,
    scrollable: true,
    scrollIntoView: '',
    scrollWithAnimation: false,
    enableBackToTop: false,
    height: 0,
    width: 0,
    preLoadScreen: 1
  }
};
exports.default = _default;

/***/ }),

/***/ 1158:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-text/value.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  computed: {
    // 经处理后需要显示的值
    value: function value() {
      var text = this.text,
        mode = this.mode,
        format = this.format,
        href = this.href;
      // 价格类型
      if (mode === 'price') {
        // 如果text不为金额进行提示
        if (!/^\d+(\.\d+)?$/.test(text)) {
          uni.$u.error('金额模式下，text参数需要为金额格式');
        }
        // 进行格式化，判断用户传入的format参数为正则，或者函数，如果没有传入format，则使用默认的金额格式化处理
        if (uni.$u.test.func(format)) {
          // 如果用户传入的是函数，使用函数格式化
          return format(text);
        }
        // 如果format非正则，非函数，则使用默认的金额格式化方法进行操作
        return uni.$u.priceFormat(text, 2);
      }
      if (mode === 'date') {
        // 判断是否合法的日期或者时间戳
        !uni.$u.test.date(text) && uni.$u.error('日期模式下，text参数需要为日期或时间戳格式');
        // 进行格式化，判断用户传入的format参数为正则，或者函数，如果没有传入format，则使用默认的格式化处理
        if (uni.$u.test.func(format)) {
          // 如果用户传入的是函数，使用函数格式化
          return format(text);
        }
        if (format) {
          // 如果format非正则，非函数，则使用默认的时间格式化方法进行操作
          return uni.$u.timeFormat(text, format);
        }
        // 如果没有设置format，则设置为默认的时间格式化形式
        return uni.$u.timeFormat(text, 'yyyy-mm-dd');
      }
      if (mode === 'phone') {
        // 判断是否合法的手机号
        // !uni.$u.test.mobile(text) && uni.$u.error('手机号模式下，text参数需要为手机号码格式')
        if (uni.$u.test.func(format)) {
          // 如果用户传入的是函数，使用函数格式化
          return format(text);
        }
        if (format === 'encrypt') {
          // 如果format为encrypt，则将手机号进行星号加密处理
          return "".concat(text.substr(0, 3), "****").concat(text.substr(7));
        }
        return text;
      }
      if (mode === 'name') {
        // 判断是否合法的字符粗
        !(typeof text === 'string') && uni.$u.error('姓名模式下，text参数需要为字符串格式');
        if (uni.$u.test.func(format)) {
          // 如果用户传入的是函数，使用函数格式化
          return format(text);
        }
        if (format === 'encrypt') {
          // 如果format为encrypt，则将姓名进行星号加密处理
          return this.formatName(text);
        }
        return text;
      }
      if (mode === 'link') {
        // 判断是否合法的字符粗
        !uni.$u.test.url(href) && uni.$u.error('超链接模式下，href参数需要为URL格式');
        return text;
      }
      return text;
    }
  },
  methods: {
    // 默认的姓名脱敏规则
    formatName: function formatName(name) {
      var value = '';
      if (name.length === 2) {
        value = name.substr(0, 1) + '*';
      } else if (name.length > 2) {
        var char = '';
        for (var i = 0, len = name.length - 2; i < len; i++) {
          char += '*';
        }
        value = name.substr(0, 1) + char + name.substr(-1, 1);
      } else {
        value = name;
      }
      return value;
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 116:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/listItem.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:15:40
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/listItem.js
 */
var _default = {
  // listItem 组件
  listItem: {
    anchor: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 1166:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-link/props.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 文字颜色
    color: {
      type: String,
      default: uni.$u.props.link.color
    },
    // 字体大小，单位px
    fontSize: {
      type: [String, Number],
      default: uni.$u.props.link.fontSize
    },
    // 是否显示下划线
    underLine: {
      type: Boolean,
      default: uni.$u.props.link.underLine
    },
    // 要跳转的链接
    href: {
      type: String,
      default: uni.$u.props.link.href
    },
    // 小程序中复制到粘贴板的提示语
    mpTips: {
      type: String,
      default: uni.$u.props.link.mpTips
    },
    // 下划线颜色
    lineColor: {
      type: String,
      default: uni.$u.props.link.lineColor
    },
    // 超链接的问题，不使用slot形式传入，是因为nvue下无法修改颜色
    text: {
      type: String,
      default: uni.$u.props.link.text
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 117:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/loadingIcon.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _config = _interopRequireDefault(__webpack_require__(/*! ../config */ 73));
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:45:47
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/loadingIcon.js
 */

var color = _config.default.color;
var _default = {
  // loading-icon加载中图标组件
  loadingIcon: {
    show: true,
    color: color['u-tips-color'],
    textColor: color['u-tips-color'],
    vertical: false,
    mode: 'spinner',
    size: 24,
    textSize: 15,
    text: '',
    timingFunction: 'ease-in-out',
    duration: 1200,
    inactiveColor: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 118:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/loadingPage.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:00:23
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/loadingPage.js
 */
var _default = {
  // loading-page组件
  loadingPage: {
    loadingText: '正在加载',
    image: '',
    loadingMode: 'circle',
    loading: false,
    bgColor: '#ffffff',
    color: '#C8C8C8',
    fontSize: 19,
    iconSize: 28,
    loadingColor: '#C8C8C8'
  }
};
exports.default = _default;

/***/ }),

/***/ 119:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/loadmore.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:15:26
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/loadmore.js
 */
var _default = {
  // loadmore 组件
  loadmore: {
    status: 'loadmore',
    bgColor: 'transparent',
    icon: true,
    fontSize: 14,
    iconSize: 17,
    color: '#606266',
    loadingIcon: 'spinner',
    loadmoreText: '加载更多',
    loadingText: '正在加载...',
    nomoreText: '没有更多了',
    isDot: false,
    iconColor: '#b7b7b7',
    marginTop: 10,
    marginBottom: 10,
    height: 'auto',
    line: false,
    lineColor: '#E6E8EB',
    dashed: false
  }
};
exports.default = _default;

/***/ }),

/***/ 12:
/*!**************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
  \**************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var _typeof = __webpack_require__(/*! ./typeof.js */ 13)["default"];
var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ 14);
function _toPropertyKey(arg) {
  var key = toPrimitive(arg, "string");
  return _typeof(key) === "symbol" ? key : String(key);
}
module.exports = _toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 120:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/modal.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:15:59
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/modal.js
 */
var _default = {
  // modal 组件
  modal: {
    show: false,
    title: '',
    content: '',
    confirmText: '确认',
    cancelText: '取消',
    showConfirmButton: true,
    showCancelButton: false,
    confirmColor: '#2979ff',
    cancelColor: '#606266',
    buttonReverse: false,
    zoom: true,
    asyncClose: false,
    closeOnClickOverlay: false,
    negativeTop: 0,
    width: '650rpx',
    confirmButtonShape: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 121:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/navbar.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _color = _interopRequireDefault(__webpack_require__(/*! ../color */ 122));
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:16:18
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/navbar.js
 */
var _default = {
  // navbar 组件
  navbar: {
    safeAreaInsetTop: true,
    placeholder: false,
    fixed: true,
    border: false,
    leftIcon: 'arrow-left',
    leftText: '',
    rightText: '',
    rightIcon: '',
    title: '',
    bgColor: '#ffffff',
    titleWidth: '400rpx',
    height: '44px',
    leftIconSize: 20,
    leftIconColor: _color.default.mainColor,
    autoBack: false,
    titleStyle: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 122:
/*!*********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/color.js ***!
  \*********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
// 为了让用户能够自定义主题，会逐步弃用此文件，各颜色通过css提供
// 为了给某些特殊场景使用和向后兼容，无需删除此文件(2020-06-20)
var color = {
  primary: '#3c9cff',
  info: '#909399',
  default: '#909399',
  warning: '#f9ae3d',
  error: '#f56c6c',
  success: '#5ac725',
  mainColor: '#303133',
  contentColor: '#606266',
  tipsColor: '#909399',
  lightColor: '#c0c4cc',
  borderColor: '#e4e7ed'
};
var _default = color;
exports.default = _default;

/***/ }),

/***/ 123:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/noNetwork.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:16:39
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/noNetwork.js
 */
var _default = {
  // noNetwork
  noNetwork: {
    tips: '哎呀，网络信号丢失',
    zIndex: '',
    image: 'data:image/png;base64,[encoded data, 28508 characters]'
  }
};
exports.default = _default;

/***/ }),

/***/ 124:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/noticeBar.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:17:13
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/noticeBar.js
 */
var _default = {
  // noticeBar
  noticeBar: {
    text: function text() {
      return [];
    },
    direction: 'row',
    step: false,
    icon: 'volume',
    mode: '',
    color: '#f9ae3d',
    bgColor: '#fdf6ec',
    speed: 80,
    fontSize: 14,
    duration: 2000,
    disableTouch: true,
    url: '',
    linkType: 'navigateTo'
  }
};
exports.default = _default;

/***/ }),

/***/ 125:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/notify.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:10:21
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/notify.js
 */
var _default = {
  // notify组件
  notify: {
    top: 0,
    type: 'primary',
    color: '#ffffff',
    bgColor: '',
    message: '',
    duration: 3000,
    fontSize: 15,
    safeAreaInsetTop: false
  }
};
exports.default = _default;

/***/ }),

/***/ 126:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/numberBox.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:11:46
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/numberBox.js
 */
var _default = {
  // 步进器组件
  numberBox: {
    name: '',
    value: 0,
    min: 1,
    max: Number.MAX_SAFE_INTEGER,
    step: 1,
    integer: false,
    disabled: false,
    disabledInput: false,
    asyncChange: false,
    inputWidth: 35,
    showMinus: true,
    showPlus: true,
    decimalLength: null,
    longPress: true,
    color: '#323233',
    buttonSize: 30,
    bgColor: '#EBECEE',
    cursorSpacing: 100,
    disableMinus: false,
    disablePlus: false,
    iconStyle: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 127:
/*!************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/numberKeyboard.js ***!
  \************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:08:05
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/numberKeyboard.js
 */
var _default = {
  // 数字键盘
  numberKeyboard: {
    mode: 'number',
    dotDisabled: false,
    random: false
  }
};
exports.default = _default;

/***/ }),

/***/ 128:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/overlay.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:06:50
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/overlay.js
 */
var _default = {
  // overlay组件
  overlay: {
    show: false,
    zIndex: 10070,
    duration: 300,
    opacity: 0.5
  }
};
exports.default = _default;

/***/ }),

/***/ 129:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/parse.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:17:33
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/parse.js
 */
var _default = {
  // parse
  parse: {
    copyLink: true,
    errorImg: '',
    lazyLoad: false,
    loadingImg: '',
    pauseVideo: true,
    previewImg: true,
    setTitle: true,
    showImgMenu: true
  }
};
exports.default = _default;

/***/ }),

/***/ 13:
/*!*******************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/typeof.js ***!
  \*******************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _typeof(obj) {
  "@babel/helpers - typeof";

  return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
    return typeof obj;
  } : function (obj) {
    return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
  }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(obj);
}
module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 130:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/picker.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:18:20
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/picker.js
 */
var _default = {
  // picker
  picker: {
    show: false,
    showToolbar: true,
    title: '',
    columns: function columns() {
      return [];
    },
    loading: false,
    itemHeight: 44,
    cancelText: '取消',
    confirmText: '确定',
    cancelColor: '#909193',
    confirmColor: '#3c9cff',
    visibleItemCount: 5,
    keyName: 'text',
    closeOnClickOverlay: false,
    defaultIndex: function defaultIndex() {
      return [];
    },
    immediateChange: false
  }
};
exports.default = _default;

/***/ }),

/***/ 131:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/popup.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:06:33
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/popup.js
 */
var _default = {
  // popup组件
  popup: {
    show: false,
    overlay: true,
    mode: 'bottom',
    duration: 300,
    closeable: false,
    overlayStyle: function overlayStyle() {},
    closeOnClickOverlay: true,
    zIndex: 10075,
    safeAreaInsetBottom: true,
    safeAreaInsetTop: false,
    closeIconPos: 'top-right',
    round: 0,
    zoom: true,
    bgColor: '',
    overlayOpacity: 0.5
  }
};
exports.default = _default;

/***/ }),

/***/ 132:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/radio.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:02:34
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/radio.js
 */
var _default = {
  // radio组件
  radio: {
    name: '',
    shape: '',
    disabled: '',
    labelDisabled: '',
    activeColor: '',
    inactiveColor: '',
    iconSize: '',
    labelSize: '',
    label: '',
    labelColor: '',
    size: '',
    iconColor: '',
    placement: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 133:
/*!********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/radioGroup.js ***!
  \********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:03:12
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/radioGroup.js
 */
var _default = {
  // radio-group组件
  radioGroup: {
    value: '',
    disabled: false,
    shape: 'circle',
    activeColor: '#2979ff',
    inactiveColor: '#c8c9cc',
    name: '',
    size: 18,
    placement: 'row',
    label: '',
    labelColor: '#303133',
    labelSize: 14,
    labelDisabled: false,
    iconColor: '#ffffff',
    iconSize: 12,
    borderBottom: false,
    iconPlacement: 'left'
  }
};
exports.default = _default;

/***/ }),

/***/ 134:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/rate.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:05:09
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/rate.js
 */
var _default = {
  // rate组件
  rate: {
    value: 1,
    count: 5,
    disabled: false,
    size: 18,
    inactiveColor: '#b2b2b2',
    activeColor: '#FA3534',
    gutter: 4,
    minCount: 1,
    allowHalf: false,
    activeIcon: 'star-fill',
    inactiveIcon: 'star',
    touchable: true
  }
};
exports.default = _default;

/***/ }),

/***/ 135:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/readMore.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:18:41
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/readMore.js
 */
var _default = {
  // readMore
  readMore: {
    showHeight: 400,
    toggle: false,
    closeText: '展开阅读全文',
    openText: '收起',
    color: '#2979ff',
    fontSize: 14,
    textIndent: '2em',
    name: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 136:
/*!*************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/row.js ***!
  \*************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:18:58
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/row.js
 */
var _default = {
  // row
  row: {
    gutter: 0,
    justify: 'start',
    align: 'center'
  }
};
exports.default = _default;

/***/ }),

/***/ 137:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/rowNotice.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:19:13
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/rowNotice.js
 */
var _default = {
  // rowNotice
  rowNotice: {
    text: '',
    icon: 'volume',
    mode: '',
    color: '#f9ae3d',
    bgColor: '#fdf6ec',
    fontSize: 14,
    speed: 80
  }
};
exports.default = _default;

/***/ }),

/***/ 138:
/*!********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/scrollList.js ***!
  \********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:19:28
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/scrollList.js
 */
var _default = {
  // scrollList
  scrollList: {
    indicatorWidth: 50,
    indicatorBarWidth: 20,
    indicator: true,
    indicatorColor: '#f2f2f2',
    indicatorActiveColor: '#3c9cff',
    indicatorStyle: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 139:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/search.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:19:45
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/search.js
 */
var _default = {
  // search
  search: {
    shape: 'round',
    bgColor: '#f2f2f2',
    placeholder: '请输入关键字',
    clearabled: true,
    focus: false,
    showAction: true,
    actionStyle: function actionStyle() {
      return {};
    },
    actionText: '搜索',
    inputAlign: 'left',
    inputStyle: function inputStyle() {
      return {};
    },
    disabled: false,
    borderColor: 'transparent',
    searchIconColor: '#909399',
    searchIconSize: 22,
    color: '#606266',
    placeholderColor: '#909399',
    searchIcon: 'search',
    margin: '0',
    animation: false,
    value: '',
    maxlength: '-1',
    height: 32,
    label: null
  }
};
exports.default = _default;

/***/ }),

/***/ 14:
/*!************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/toPrimitive.js ***!
  \************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var _typeof = __webpack_require__(/*! ./typeof.js */ 13)["default"];
function _toPrimitive(input, hint) {
  if (_typeof(input) !== "object" || input === null) return input;
  var prim = input[Symbol.toPrimitive];
  if (prim !== undefined) {
    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);
}
module.exports = _toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 140:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/section.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:07:33
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/section.js
 */
var _default = {
  // u-section组件
  section: {
    title: '',
    subTitle: '更多',
    right: true,
    fontSize: 15,
    bold: true,
    color: '#303133',
    subColor: '#909399',
    showLine: true,
    lineColor: '',
    arrow: true
  }
};
exports.default = _default;

/***/ }),

/***/ 141:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/skeleton.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:20:14
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/skeleton.js
 */
var _default = {
  // skeleton
  skeleton: {
    loading: true,
    animate: true,
    rows: 0,
    rowsWidth: '100%',
    rowsHeight: 18,
    title: true,
    titleWidth: '50%',
    titleHeight: 18,
    avatar: false,
    avatarSize: 32,
    avatarShape: 'circle'
  }
};
exports.default = _default;

/***/ }),

/***/ 142:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/slider.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:08:25
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/slider.js
 */
var _default = {
  // slider组件
  slider: {
    value: 0,
    blockSize: 18,
    min: 0,
    max: 100,
    step: 1,
    activeColor: '#2979ff',
    inactiveColor: '#c0c4cc',
    blockColor: '#ffffff',
    showValue: false,
    disabled: false,
    blockStyle: function blockStyle() {}
  }
};
exports.default = _default;

/***/ }),

/***/ 143:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/statusBar.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:20:39
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/statusBar.js
 */
var _default = {
  // statusBar
  statusBar: {
    bgColor: 'transparent'
  }
};
exports.default = _default;

/***/ }),

/***/ 144:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/steps.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:12:37
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/steps.js
 */
var _default = {
  // steps组件
  steps: {
    direction: 'row',
    current: 0,
    activeColor: '#3c9cff',
    inactiveColor: '#969799',
    activeIcon: '',
    inactiveIcon: '',
    dot: false
  }
};
exports.default = _default;

/***/ }),

/***/ 145:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/stepsItem.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:12:55
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/stepsItem.js
 */
var _default = {
  // steps-item组件
  stepsItem: {
    title: '',
    desc: '',
    iconSize: 17,
    error: false
  }
};
exports.default = _default;

/***/ }),

/***/ 146:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/sticky.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:01:30
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/sticky.js
 */
var _default = {
  // sticky组件
  sticky: {
    offsetTop: 0,
    customNavHeight: 0,
    disabled: false,
    bgColor: 'transparent',
    zIndex: '',
    index: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 147:
/*!********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/subsection.js ***!
  \********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:12:20
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/subsection.js
 */
var _default = {
  // subsection组件
  subsection: {
    list: [],
    current: 0,
    activeColor: '#3c9cff',
    inactiveColor: '#303133',
    mode: 'button',
    fontSize: 12,
    bold: true,
    bgColor: '#eeeeef',
    keyName: 'name'
  }
};
exports.default = _default;

/***/ }),

/***/ 148:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/swipeAction.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:00:42
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/swipeAction.js
 */
var _default = {
  // swipe-action组件
  swipeAction: {
    autoClose: true
  }
};
exports.default = _default;

/***/ }),

/***/ 149:
/*!*************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/swipeActionItem.js ***!
  \*************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:01:13
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/swipeActionItem.js
 */
var _default = {
  // swipeActionItem 组件
  swipeActionItem: {
    show: false,
    name: '',
    disabled: false,
    threshold: 20,
    autoClose: true,
    options: [],
    duration: 300
  }
};
exports.default = _default;

/***/ }),

/***/ 15:
/*!**********************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/construct.js ***!
  \**********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ 16);
var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ 17);
function _construct(Parent, args, Class) {
  if (isNativeReflectConstruct()) {
    module.exports = _construct = Reflect.construct.bind(), module.exports.__esModule = true, module.exports["default"] = module.exports;
  } else {
    module.exports = _construct = function _construct(Parent, args, Class) {
      var a = [null];
      a.push.apply(a, args);
      var Constructor = Function.bind.apply(Parent, a);
      var instance = new Constructor();
      if (Class) setPrototypeOf(instance, Class.prototype);
      return instance;
    }, module.exports.__esModule = true, module.exports["default"] = module.exports;
  }
  return _construct.apply(null, arguments);
}
module.exports = _construct, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 150:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/swiper.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:21:38
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/swiper.js
 */
var _default = {
  // swiper 组件
  swiper: {
    list: function list() {
      return [];
    },
    indicator: false,
    indicatorActiveColor: '#FFFFFF',
    indicatorInactiveColor: 'rgba(255, 255, 255, 0.35)',
    indicatorStyle: '',
    indicatorMode: 'line',
    autoplay: true,
    current: 0,
    currentItemId: '',
    interval: 3000,
    duration: 300,
    circular: false,
    previousMargin: 0,
    nextMargin: 0,
    acceleration: false,
    displayMultipleItems: 1,
    easingFunction: 'default',
    keyName: 'url',
    imgMode: 'aspectFill',
    height: 130,
    bgColor: '#f3f4f6',
    radius: 4,
    loading: false,
    showTitle: false
  }
};
exports.default = _default;

/***/ }),

/***/ 151:
/*!**************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/swipterIndicator.js ***!
  \**************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:22:07
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/swiperIndicator.js
 */
var _default = {
  // swiperIndicator 组件
  swiperIndicator: {
    length: 0,
    current: 0,
    indicatorActiveColor: '',
    indicatorInactiveColor: '',
    indicatorMode: 'line'
  }
};
exports.default = _default;

/***/ }),

/***/ 152:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/switch.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:22:24
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/switch.js
 */
var _default = {
  // switch
  switch: {
    loading: false,
    disabled: false,
    size: 25,
    activeColor: '#2979ff',
    inactiveColor: '#ffffff',
    value: false,
    activeValue: true,
    inactiveValue: false,
    asyncChange: false,
    space: 0
  }
};
exports.default = _default;

/***/ }),

/***/ 153:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/tabbar.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:22:40
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/tabbar.js
 */
var _default = {
  // tabbar
  tabbar: {
    value: null,
    safeAreaInsetBottom: true,
    border: true,
    zIndex: 1,
    activeColor: '#1989fa',
    inactiveColor: '#7d7e80',
    fixed: true,
    placeholder: true
  }
};
exports.default = _default;

/***/ }),

/***/ 154:
/*!********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/tabbarItem.js ***!
  \********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:22:55
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/tabbarItem.js
 */
var _default = {
  //
  tabbarItem: {
    name: null,
    icon: '',
    badge: null,
    dot: false,
    text: '',
    badgeStyle: 'top: 6px;right:2px;'
  }
};
exports.default = _default;

/***/ }),

/***/ 155:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/tabs.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:23:14
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/tabs.js
 */
var _default = {
  //
  tabs: {
    duration: 300,
    list: function list() {
      return [];
    },
    lineColor: '#3c9cff',
    activeStyle: function activeStyle() {
      return {
        color: '#303133'
      };
    },
    inactiveStyle: function inactiveStyle() {
      return {
        color: '#606266'
      };
    },
    lineWidth: 20,
    lineHeight: 3,
    lineBgSize: 'cover',
    itemStyle: function itemStyle() {
      return {
        height: '44px'
      };
    },
    scrollable: true,
    current: 0,
    keyName: 'name'
  }
};
exports.default = _default;

/***/ }),

/***/ 156:
/*!*************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/tag.js ***!
  \*************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:23:37
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/tag.js
 */
var _default = {
  // tag 组件
  tag: {
    type: 'primary',
    disabled: false,
    size: 'medium',
    shape: 'square',
    text: '',
    bgColor: '',
    color: '',
    borderColor: '',
    closeColor: '#C6C7CB',
    name: '',
    plainFill: false,
    plain: false,
    closable: false,
    show: true,
    icon: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 157:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/text.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:23:58
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/text.js
 */
var _default = {
  // text 组件
  text: {
    type: '',
    show: true,
    text: '',
    prefixIcon: '',
    suffixIcon: '',
    mode: '',
    href: '',
    format: '',
    call: false,
    openType: '',
    bold: false,
    block: false,
    lines: '',
    color: '#303133',
    size: 15,
    iconStyle: function iconStyle() {
      return {
        fontSize: '15px'
      };
    },
    decoration: 'none',
    margin: 0,
    lineHeight: '',
    align: 'left',
    wordWrap: 'normal'
  }
};
exports.default = _default;

/***/ }),

/***/ 158:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/textarea.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:24:32
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/textarea.js
 */
var _default = {
  // textarea 组件
  textarea: {
    value: '',
    placeholder: '',
    placeholderClass: 'textarea-placeholder',
    placeholderStyle: 'color: #c0c4cc',
    height: 70,
    confirmType: 'done',
    disabled: false,
    count: false,
    focus: false,
    autoHeight: false,
    fixed: false,
    cursorSpacing: 0,
    cursor: '',
    showConfirmBar: true,
    selectionStart: -1,
    selectionEnd: -1,
    adjustPosition: true,
    disableDefaultPadding: false,
    holdKeyboard: false,
    maxlength: 140,
    border: 'surround',
    formatter: null
  }
};
exports.default = _default;

/***/ }),

/***/ 159:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/toast.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:07:07
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/toast.js
 */
var _default = {
  // toast组件
  toast: {
    zIndex: 10090,
    loading: false,
    text: '',
    icon: '',
    type: '',
    loadingMode: '',
    show: '',
    overlay: false,
    position: 'center',
    params: function params() {},
    duration: 2000,
    isTab: false,
    url: '',
    callback: null,
    back: false
  }
};
exports.default = _default;

/***/ }),

/***/ 16:
/*!***************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  }, module.exports.__esModule = true, module.exports["default"] = module.exports;
  return _setPrototypeOf(o, p);
}
module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 160:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/toolbar.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:24:55
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/toolbar.js
 */
var _default = {
  // toolbar 组件
  toolbar: {
    show: true,
    cancelText: '取消',
    confirmText: '确认',
    cancelColor: '#909193',
    confirmColor: '#3c9cff',
    title: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 161:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/tooltip.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:25:14
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/tooltip.js
 */
var _default = {
  // tooltip 组件
  tooltip: {
    text: '',
    copyText: '',
    size: 14,
    color: '#606266',
    bgColor: 'transparent',
    direction: 'top',
    zIndex: 10071,
    showCopy: true,
    buttons: function buttons() {
      return [];
    },
    overlay: true,
    showToast: true
  }
};
exports.default = _default;

/***/ }),

/***/ 162:
/*!********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/transition.js ***!
  \********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:59:00
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/transition.js
 */
var _default = {
  // transition动画组件的props
  transition: {
    show: false,
    mode: 'fade',
    duration: '300',
    timingFunction: 'ease-out'
  }
};
exports.default = _default;

/***/ }),

/***/ 163:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/upload.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:09:50
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/upload.js
 */
var _default = {
  // upload组件
  upload: {
    accept: 'image',
    capture: function capture() {
      return ['album', 'camera'];
    },
    compressed: true,
    camera: 'back',
    maxDuration: 60,
    uploadIcon: 'camera-fill',
    uploadIconColor: '#D3D4D6',
    useBeforeRead: false,
    previewFullImage: true,
    maxCount: 52,
    disabled: false,
    imageMode: 'aspectFill',
    name: '',
    sizeType: function sizeType() {
      return ['original', 'compressed'];
    },
    multiple: false,
    deletable: true,
    maxSize: Number.MAX_VALUE,
    fileList: function fileList() {
      return [];
    },
    uploadText: '',
    width: 80,
    height: 80,
    previewImage: true
  }
};
exports.default = _default;

/***/ }),

/***/ 164:
/*!**********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/zIndex.js ***!
  \**********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
// uniapp在H5中各API的z-index值如下：
/**
 * actionsheet: 999
 * modal: 999
 * navigate: 998
 * tabbar: 998
 * toast: 999
 */
var _default = {
  toast: 10090,
  noNetwork: 10080,
  // popup包含popup，actionsheet，keyboard，picker的值
  popup: 10075,
  mask: 10070,
  navbar: 980,
  topTips: 975,
  sticky: 970,
  indexListSticky: 965
};
exports.default = _default;

/***/ }),

/***/ 165:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/function/platform.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/**
 * 注意：
 * 此部分内容，在vue-cli模式下，需要在vue.config.js加入如下内容才有效：
 * module.exports = {
 *     transpileDependencies: ['uview-v2']
 * }
 */

var platform = 'none';
platform = 'vue2';
platform = 'weixin';
platform = 'mp';
var _default = platform;
exports.default = _default;

/***/ }),

/***/ 17:
/*!*************************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js ***!
  \*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

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;
  }
}
module.exports = _isNativeReflectConstruct, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 172:
/*!***************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/static/images/juxing.png ***!
  \***************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAGCAYAAACvkeyYAAAAAXNSR0IArs4c6QAAAShJREFUOE/FkzFSw0AMRf/fdSQ6wtCm4hY5SK5ARQX3gDPQUPgsFFyAAoaeBqrY+oxsQ0wmDGUqzWrX47fvawmJuHs7WZ51bp28qae2jd5r9F5KNSq8V/WshcWI4lC42BgkZ9AhOgkDOKwja66DTsCzL3Hcnyo09gkaBAF8VuD+9bppAYBo2wqsbfn5Dea2jcUIlj8uxajq/R4YVTxI2wdTgu6DsRgCrl9geQ4jWH7DvCAcgYeXm3o1gK2wto8ZWImFd/+AhYozwUBHvzOWYCUNzY2pWELswNK6dsYGMDimcxAviU1bV5s/wKYoDxpjY/ETpZxpJYEyPmZsefspyslY7uNQlEN/BJMGi09jlO8XvrRzO9qMzcDG2UMQEHE7H/7jzlg+EgKPX01F14VFzosSAAAAAElFTkSuQmCC"

/***/ }),

/***/ 18:
/*!******************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/toConsumableArray.js ***!
  \******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ 19);
var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ 20);
var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 8);
var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ 21);
function _toConsumableArray(arr) {
  return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
}
module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 19:
/*!******************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***!
  \******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 9);
function _arrayWithoutHoles(arr) {
  if (Array.isArray(arr)) return arrayLikeToArray(arr);
}
module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 197:
/*!*****************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/utils/index.js ***!
  \*****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.readablizeBytes = readablizeBytes;
exports.renderTime = renderTime;
function renderTime(time) {
  var t = new Date(parseInt(time));
  var Y = t.getFullYear();
  var M = t.getMonth() + 1 < 10 ? '0' + (t.getMonth() + 1) : t.getMonth() + 1;
  var D = t.getDate() < 10 ? '0' + t.getDate() : t.getDate();
  var H = t.getHours() < 10 ? '0' + t.getHours() : t.getHours();
  var F = t.getMinutes() < 10 ? '0' + t.getMinutes() : t.getMinutes();
  var S = t.getSeconds() < 10 ? '0' + t.getSeconds() : t.getSeconds();
  return "".concat(M, "-").concat(D, " ").concat(H, ":").concat(F);
}
function readablizeBytes(value) {
  var s = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB'];
  var e = Math.floor(Math.log(value) / Math.log(1024));
  return (value / Math.pow(1024, Math.floor(e))).toFixed(2) + ' ' + s[e];
}

/***/ }),

/***/ 2:
/*!************************************************************!*\
  !*** ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js ***!
  \************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(wx, global) {

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.createApp = createApp;
exports.createComponent = createComponent;
exports.createPage = createPage;
exports.createPlugin = createPlugin;
exports.createSubpackageApp = createSubpackageApp;
exports.default = void 0;
var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 5));
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _construct2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/construct */ 15));
var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 18));
var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
var _uniI18n = __webpack_require__(/*! @dcloudio/uni-i18n */ 22);
var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 25));
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
var realAtob;
var b64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
var b64re = /^(?:[A-Za-z\d+/]{4})*?(?:[A-Za-z\d+/]{2}(?:==)?|[A-Za-z\d+/]{3}=?)?$/;
if (typeof atob !== 'function') {
  realAtob = function realAtob(str) {
    str = String(str).replace(/[\t\n\f\r ]+/g, '');
    if (!b64re.test(str)) {
      throw new Error("Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.");
    }

    // Adding the padding if missing, for semplicity
    str += '=='.slice(2 - (str.length & 3));
    var bitmap;
    var result = '';
    var r1;
    var r2;
    var i = 0;
    for (; i < str.length;) {
      bitmap = b64.indexOf(str.charAt(i++)) << 18 | b64.indexOf(str.charAt(i++)) << 12 | (r1 = b64.indexOf(str.charAt(i++))) << 6 | (r2 = b64.indexOf(str.charAt(i++)));
      result += r1 === 64 ? String.fromCharCode(bitmap >> 16 & 255) : r2 === 64 ? String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255) : String.fromCharCode(bitmap >> 16 & 255, bitmap >> 8 & 255, bitmap & 255);
    }
    return result;
  };
} else {
  // 注意atob只能在全局对象上调用，例如：`const Base64 = {atob};Base64.atob('xxxx')`是错误的用法
  realAtob = atob;
}
function b64DecodeUnicode(str) {
  return decodeURIComponent(realAtob(str).split('').map(function (c) {
    return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
  }).join(''));
}
function getCurrentUserInfo() {
  var token = wx.getStorageSync('uni_id_token') || '';
  var tokenArr = token.split('.');
  if (!token || tokenArr.length !== 3) {
    return {
      uid: null,
      role: [],
      permission: [],
      tokenExpired: 0
    };
  }
  var userInfo;
  try {
    userInfo = JSON.parse(b64DecodeUnicode(tokenArr[1]));
  } catch (error) {
    throw new Error('获取当前用户信息出错，详细错误信息为：' + error.message);
  }
  userInfo.tokenExpired = userInfo.exp * 1000;
  delete userInfo.exp;
  delete userInfo.iat;
  return userInfo;
}
function uniIdMixin(Vue) {
  Vue.prototype.uniIDHasRole = function (roleId) {
    var _getCurrentUserInfo = getCurrentUserInfo(),
      role = _getCurrentUserInfo.role;
    return role.indexOf(roleId) > -1;
  };
  Vue.prototype.uniIDHasPermission = function (permissionId) {
    var _getCurrentUserInfo2 = getCurrentUserInfo(),
      permission = _getCurrentUserInfo2.permission;
    return this.uniIDHasRole('admin') || permission.indexOf(permissionId) > -1;
  };
  Vue.prototype.uniIDTokenValid = function () {
    var _getCurrentUserInfo3 = getCurrentUserInfo(),
      tokenExpired = _getCurrentUserInfo3.tokenExpired;
    return tokenExpired > Date.now();
  };
}
var _toString = Object.prototype.toString;
var hasOwnProperty = Object.prototype.hasOwnProperty;
function isFn(fn) {
  return typeof fn === 'function';
}
function isStr(str) {
  return typeof str === 'string';
}
function isObject(obj) {
  return obj !== null && (0, _typeof2.default)(obj) === 'object';
}
function isPlainObject(obj) {
  return _toString.call(obj) === '[object Object]';
}
function hasOwn(obj, key) {
  return hasOwnProperty.call(obj, key);
}
function noop() {}

/**
 * Create a cached version of a pure function.
 */
function cached(fn) {
  var cache = Object.create(null);
  return function cachedFn(str) {
    var hit = cache[str];
    return hit || (cache[str] = fn(str));
  };
}

/**
 * Camelize a hyphen-delimited string.
 */
var camelizeRE = /-(\w)/g;
var camelize = cached(function (str) {
  return str.replace(camelizeRE, function (_, c) {
    return c ? c.toUpperCase() : '';
  });
});
function sortObject(obj) {
  var sortObj = {};
  if (isPlainObject(obj)) {
    Object.keys(obj).sort().forEach(function (key) {
      sortObj[key] = obj[key];
    });
  }
  return !Object.keys(sortObj) ? obj : sortObj;
}
var HOOKS = ['invoke', 'success', 'fail', 'complete', 'returnValue'];
var globalInterceptors = {};
var scopedInterceptors = {};
function mergeHook(parentVal, childVal) {
  var res = childVal ? parentVal ? parentVal.concat(childVal) : Array.isArray(childVal) ? childVal : [childVal] : parentVal;
  return res ? dedupeHooks(res) : res;
}
function dedupeHooks(hooks) {
  var res = [];
  for (var i = 0; i < hooks.length; i++) {
    if (res.indexOf(hooks[i]) === -1) {
      res.push(hooks[i]);
    }
  }
  return res;
}
function removeHook(hooks, hook) {
  var index = hooks.indexOf(hook);
  if (index !== -1) {
    hooks.splice(index, 1);
  }
}
function mergeInterceptorHook(interceptor, option) {
  Object.keys(option).forEach(function (hook) {
    if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
      interceptor[hook] = mergeHook(interceptor[hook], option[hook]);
    }
  });
}
function removeInterceptorHook(interceptor, option) {
  if (!interceptor || !option) {
    return;
  }
  Object.keys(option).forEach(function (hook) {
    if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {
      removeHook(interceptor[hook], option[hook]);
    }
  });
}
function addInterceptor(method, option) {
  if (typeof method === 'string' && isPlainObject(option)) {
    mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option);
  } else if (isPlainObject(method)) {
    mergeInterceptorHook(globalInterceptors, method);
  }
}
function removeInterceptor(method, option) {
  if (typeof method === 'string') {
    if (isPlainObject(option)) {
      removeInterceptorHook(scopedInterceptors[method], option);
    } else {
      delete scopedInterceptors[method];
    }
  } else if (isPlainObject(method)) {
    removeInterceptorHook(globalInterceptors, method);
  }
}
function wrapperHook(hook, params) {
  return function (data) {
    return hook(data, params) || data;
  };
}
function isPromise(obj) {
  return !!obj && ((0, _typeof2.default)(obj) === 'object' || typeof obj === 'function') && typeof obj.then === 'function';
}
function queue(hooks, data, params) {
  var promise = false;
  for (var i = 0; i < hooks.length; i++) {
    var hook = hooks[i];
    if (promise) {
      promise = Promise.resolve(wrapperHook(hook, params));
    } else {
      var res = hook(data, params);
      if (isPromise(res)) {
        promise = Promise.resolve(res);
      }
      if (res === false) {
        return {
          then: function then() {}
        };
      }
    }
  }
  return promise || {
    then: function then(callback) {
      return callback(data);
    }
  };
}
function wrapperOptions(interceptor) {
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  ['success', 'fail', 'complete'].forEach(function (name) {
    if (Array.isArray(interceptor[name])) {
      var oldCallback = options[name];
      options[name] = function callbackInterceptor(res) {
        queue(interceptor[name], res, options).then(function (res) {
          /* eslint-disable no-mixed-operators */
          return isFn(oldCallback) && oldCallback(res) || res;
        });
      };
    }
  });
  return options;
}
function wrapperReturnValue(method, returnValue) {
  var returnValueHooks = [];
  if (Array.isArray(globalInterceptors.returnValue)) {
    returnValueHooks.push.apply(returnValueHooks, (0, _toConsumableArray2.default)(globalInterceptors.returnValue));
  }
  var interceptor = scopedInterceptors[method];
  if (interceptor && Array.isArray(interceptor.returnValue)) {
    returnValueHooks.push.apply(returnValueHooks, (0, _toConsumableArray2.default)(interceptor.returnValue));
  }
  returnValueHooks.forEach(function (hook) {
    returnValue = hook(returnValue) || returnValue;
  });
  return returnValue;
}
function getApiInterceptorHooks(method) {
  var interceptor = Object.create(null);
  Object.keys(globalInterceptors).forEach(function (hook) {
    if (hook !== 'returnValue') {
      interceptor[hook] = globalInterceptors[hook].slice();
    }
  });
  var scopedInterceptor = scopedInterceptors[method];
  if (scopedInterceptor) {
    Object.keys(scopedInterceptor).forEach(function (hook) {
      if (hook !== 'returnValue') {
        interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);
      }
    });
  }
  return interceptor;
}
function invokeApi(method, api, options) {
  for (var _len = arguments.length, params = new Array(_len > 3 ? _len - 3 : 0), _key = 3; _key < _len; _key++) {
    params[_key - 3] = arguments[_key];
  }
  var interceptor = getApiInterceptorHooks(method);
  if (interceptor && Object.keys(interceptor).length) {
    if (Array.isArray(interceptor.invoke)) {
      var res = queue(interceptor.invoke, options);
      return res.then(function (options) {
        // 重新访问 getApiInterceptorHooks, 允许 invoke 中再次调用 addInterceptor,removeInterceptor
        return api.apply(void 0, [wrapperOptions(getApiInterceptorHooks(method), options)].concat(params));
      });
    } else {
      return api.apply(void 0, [wrapperOptions(interceptor, options)].concat(params));
    }
  }
  return api.apply(void 0, [options].concat(params));
}
var promiseInterceptor = {
  returnValue: function returnValue(res) {
    if (!isPromise(res)) {
      return res;
    }
    return new Promise(function (resolve, reject) {
      res.then(function (res) {
        if (res[0]) {
          reject(res[0]);
        } else {
          resolve(res[1]);
        }
      });
    });
  }
};
var SYNC_API_RE = /^\$|Window$|WindowStyle$|sendHostEvent|sendNativeEvent|restoreGlobal|requireGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64|getLocale|setLocale|invokePushCallback|getWindowInfo|getDeviceInfo|getAppBaseInfo|getSystemSetting|getAppAuthorizeSetting|initUTS|requireUTS|registerUTS/;
var CONTEXT_API_RE = /^create|Manager$/;

// Context例外情况
var CONTEXT_API_RE_EXC = ['createBLEConnection'];

// 同步例外情况
var ASYNC_API = ['createBLEConnection', 'createPushMessage'];
var CALLBACK_API_RE = /^on|^off/;
function isContextApi(name) {
  return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1;
}
function isSyncApi(name) {
  return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1;
}
function isCallbackApi(name) {
  return CALLBACK_API_RE.test(name) && name !== 'onPush';
}
function handlePromise(promise) {
  return promise.then(function (data) {
    return [null, data];
  }).catch(function (err) {
    return [err];
  });
}
function shouldPromise(name) {
  if (isContextApi(name) || isSyncApi(name) || isCallbackApi(name)) {
    return false;
  }
  return true;
}

/* eslint-disable no-extend-native */
if (!Promise.prototype.finally) {
  Promise.prototype.finally = function (callback) {
    var promise = this.constructor;
    return this.then(function (value) {
      return promise.resolve(callback()).then(function () {
        return value;
      });
    }, function (reason) {
      return promise.resolve(callback()).then(function () {
        throw reason;
      });
    });
  };
}
function promisify(name, api) {
  if (!shouldPromise(name) || !isFn(api)) {
    return api;
  }
  return function promiseApi() {
    var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    for (var _len2 = arguments.length, params = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
      params[_key2 - 1] = arguments[_key2];
    }
    if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {
      return wrapperReturnValue(name, invokeApi.apply(void 0, [name, api, options].concat(params)));
    }
    return wrapperReturnValue(name, handlePromise(new Promise(function (resolve, reject) {
      invokeApi.apply(void 0, [name, api, Object.assign({}, options, {
        success: resolve,
        fail: reject
      })].concat(params));
    })));
  };
}
var EPS = 1e-4;
var BASE_DEVICE_WIDTH = 750;
var isIOS = false;
var deviceWidth = 0;
var deviceDPR = 0;
function checkDeviceWidth() {
  var _wx$getSystemInfoSync = wx.getSystemInfoSync(),
    platform = _wx$getSystemInfoSync.platform,
    pixelRatio = _wx$getSystemInfoSync.pixelRatio,
    windowWidth = _wx$getSystemInfoSync.windowWidth; // uni=>wx runtime 编译目标是 uni 对象，内部不允许直接使用 uni

  deviceWidth = windowWidth;
  deviceDPR = pixelRatio;
  isIOS = platform === 'ios';
}
function upx2px(number, newDeviceWidth) {
  if (deviceWidth === 0) {
    checkDeviceWidth();
  }
  number = Number(number);
  if (number === 0) {
    return 0;
  }
  var result = number / BASE_DEVICE_WIDTH * (newDeviceWidth || deviceWidth);
  if (result < 0) {
    result = -result;
  }
  result = Math.floor(result + EPS);
  if (result === 0) {
    if (deviceDPR === 1 || !isIOS) {
      result = 1;
    } else {
      result = 0.5;
    }
  }
  return number < 0 ? -result : result;
}
var LOCALE_ZH_HANS = 'zh-Hans';
var LOCALE_ZH_HANT = 'zh-Hant';
var LOCALE_EN = 'en';
var LOCALE_FR = 'fr';
var LOCALE_ES = 'es';
var messages = {};
var locale;
{
  locale = normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;
}
function initI18nMessages() {
  if (!isEnableLocale()) {
    return;
  }
  var localeKeys = Object.keys(__uniConfig.locales);
  if (localeKeys.length) {
    localeKeys.forEach(function (locale) {
      var curMessages = messages[locale];
      var userMessages = __uniConfig.locales[locale];
      if (curMessages) {
        Object.assign(curMessages, userMessages);
      } else {
        messages[locale] = userMessages;
      }
    });
  }
}
initI18nMessages();
var i18n = (0, _uniI18n.initVueI18n)(locale, {});
var t = i18n.t;
var i18nMixin = i18n.mixin = {
  beforeCreate: function beforeCreate() {
    var _this = this;
    var unwatch = i18n.i18n.watchLocale(function () {
      _this.$forceUpdate();
    });
    this.$once('hook:beforeDestroy', function () {
      unwatch();
    });
  },
  methods: {
    $$t: function $$t(key, values) {
      return t(key, values);
    }
  }
};
var setLocale = i18n.setLocale;
var getLocale = i18n.getLocale;
function initAppLocale(Vue, appVm, locale) {
  var state = Vue.observable({
    locale: locale || i18n.getLocale()
  });
  var localeWatchers = [];
  appVm.$watchLocale = function (fn) {
    localeWatchers.push(fn);
  };
  Object.defineProperty(appVm, '$locale', {
    get: function get() {
      return state.locale;
    },
    set: function set(v) {
      state.locale = v;
      localeWatchers.forEach(function (watch) {
        return watch(v);
      });
    }
  });
}
function isEnableLocale() {
  return typeof __uniConfig !== 'undefined' && __uniConfig.locales && !!Object.keys(__uniConfig.locales).length;
}
function include(str, parts) {
  return !!parts.find(function (part) {
    return str.indexOf(part) !== -1;
  });
}
function startsWith(str, parts) {
  return parts.find(function (part) {
    return str.indexOf(part) === 0;
  });
}
function normalizeLocale(locale, messages) {
  if (!locale) {
    return;
  }
  locale = locale.trim().replace(/_/g, '-');
  if (messages && messages[locale]) {
    return locale;
  }
  locale = locale.toLowerCase();
  if (locale === 'chinese') {
    // 支付宝
    return LOCALE_ZH_HANS;
  }
  if (locale.indexOf('zh') === 0) {
    if (locale.indexOf('-hans') > -1) {
      return LOCALE_ZH_HANS;
    }
    if (locale.indexOf('-hant') > -1) {
      return LOCALE_ZH_HANT;
    }
    if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {
      return LOCALE_ZH_HANT;
    }
    return LOCALE_ZH_HANS;
  }
  var lang = startsWith(locale, [LOCALE_EN, LOCALE_FR, LOCALE_ES]);
  if (lang) {
    return lang;
  }
}
// export function initI18n() {
//   const localeKeys = Object.keys(__uniConfig.locales || {})
//   if (localeKeys.length) {
//     localeKeys.forEach((locale) =>
//       i18n.add(locale, __uniConfig.locales[locale])
//     )
//   }
// }

function getLocale$1() {
  // 优先使用 $locale
  if (isFn(getApp)) {
    var app = getApp({
      allowDefault: true
    });
    if (app && app.$vm) {
      return app.$vm.$locale;
    }
  }
  return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;
}
function setLocale$1(locale) {
  var app = isFn(getApp) ? getApp() : false;
  if (!app) {
    return false;
  }
  var oldLocale = app.$vm.$locale;
  if (oldLocale !== locale) {
    app.$vm.$locale = locale;
    onLocaleChangeCallbacks.forEach(function (fn) {
      return fn({
        locale: locale
      });
    });
    return true;
  }
  return false;
}
var onLocaleChangeCallbacks = [];
function onLocaleChange(fn) {
  if (onLocaleChangeCallbacks.indexOf(fn) === -1) {
    onLocaleChangeCallbacks.push(fn);
  }
}
if (typeof global !== 'undefined') {
  global.getLocale = getLocale$1;
}
var interceptors = {
  promiseInterceptor: promiseInterceptor
};
var baseApi = /*#__PURE__*/Object.freeze({
  __proto__: null,
  upx2px: upx2px,
  getLocale: getLocale$1,
  setLocale: setLocale$1,
  onLocaleChange: onLocaleChange,
  addInterceptor: addInterceptor,
  removeInterceptor: removeInterceptor,
  interceptors: interceptors
});
function findExistsPageIndex(url) {
  var pages = getCurrentPages();
  var len = pages.length;
  while (len--) {
    var page = pages[len];
    if (page.$page && page.$page.fullPath === url) {
      return len;
    }
  }
  return -1;
}
var redirectTo = {
  name: function name(fromArgs) {
    if (fromArgs.exists === 'back' && fromArgs.delta) {
      return 'navigateBack';
    }
    return 'redirectTo';
  },
  args: function args(fromArgs) {
    if (fromArgs.exists === 'back' && fromArgs.url) {
      var existsPageIndex = findExistsPageIndex(fromArgs.url);
      if (existsPageIndex !== -1) {
        var delta = getCurrentPages().length - 1 - existsPageIndex;
        if (delta > 0) {
          fromArgs.delta = delta;
        }
      }
    }
  }
};
var previewImage = {
  args: function args(fromArgs) {
    var currentIndex = parseInt(fromArgs.current);
    if (isNaN(currentIndex)) {
      return;
    }
    var urls = fromArgs.urls;
    if (!Array.isArray(urls)) {
      return;
    }
    var len = urls.length;
    if (!len) {
      return;
    }
    if (currentIndex < 0) {
      currentIndex = 0;
    } else if (currentIndex >= len) {
      currentIndex = len - 1;
    }
    if (currentIndex > 0) {
      fromArgs.current = urls[currentIndex];
      fromArgs.urls = urls.filter(function (item, index) {
        return index < currentIndex ? item !== urls[currentIndex] : true;
      });
    } else {
      fromArgs.current = urls[0];
    }
    return {
      indicator: false,
      loop: false
    };
  }
};
var UUID_KEY = '__DC_STAT_UUID';
var deviceId;
function useDeviceId(result) {
  deviceId = deviceId || wx.getStorageSync(UUID_KEY);
  if (!deviceId) {
    deviceId = Date.now() + '' + Math.floor(Math.random() * 1e7);
    wx.setStorage({
      key: UUID_KEY,
      data: deviceId
    });
  }
  result.deviceId = deviceId;
}
function addSafeAreaInsets(result) {
  if (result.safeArea) {
    var safeArea = result.safeArea;
    result.safeAreaInsets = {
      top: safeArea.top,
      left: safeArea.left,
      right: result.windowWidth - safeArea.right,
      bottom: result.screenHeight - safeArea.bottom
    };
  }
}
function populateParameters(result) {
  var _result$brand = result.brand,
    brand = _result$brand === void 0 ? '' : _result$brand,
    _result$model = result.model,
    model = _result$model === void 0 ? '' : _result$model,
    _result$system = result.system,
    system = _result$system === void 0 ? '' : _result$system,
    _result$language = result.language,
    language = _result$language === void 0 ? '' : _result$language,
    theme = result.theme,
    version = result.version,
    platform = result.platform,
    fontSizeSetting = result.fontSizeSetting,
    SDKVersion = result.SDKVersion,
    pixelRatio = result.pixelRatio,
    deviceOrientation = result.deviceOrientation;
  // const isQuickApp = "mp-weixin".indexOf('quickapp-webview') !== -1

  var extraParam = {};

  // osName osVersion
  var osName = '';
  var osVersion = '';
  {
    osName = system.split(' ')[0] || '';
    osVersion = system.split(' ')[1] || '';
  }
  var hostVersion = version;

  // deviceType
  var deviceType = getGetDeviceType(result, model);

  // deviceModel
  var deviceBrand = getDeviceBrand(brand);

  // hostName
  var _hostName = getHostName(result);

  // deviceOrientation
  var _deviceOrientation = deviceOrientation; // 仅 微信 百度 支持

  // devicePixelRatio
  var _devicePixelRatio = pixelRatio;

  // SDKVersion
  var _SDKVersion = SDKVersion;

  // hostLanguage
  var hostLanguage = language.replace(/_/g, '-');

  // wx.getAccountInfoSync

  var parameters = {
    appId: "__UNI__EE8311D",
    appName: "候选人",
    appVersion: "1.0.0",
    appVersionCode: "100",
    appLanguage: getAppLanguage(hostLanguage),
    uniCompileVersion: "3.96",
    uniRuntimeVersion: "3.96",
    uniPlatform: undefined || "mp-weixin",
    deviceBrand: deviceBrand,
    deviceModel: model,
    deviceType: deviceType,
    devicePixelRatio: _devicePixelRatio,
    deviceOrientation: _deviceOrientation,
    osName: osName.toLocaleLowerCase(),
    osVersion: osVersion,
    hostTheme: theme,
    hostVersion: hostVersion,
    hostLanguage: hostLanguage,
    hostName: _hostName,
    hostSDKVersion: _SDKVersion,
    hostFontSizeSetting: fontSizeSetting,
    windowTop: 0,
    windowBottom: 0,
    // TODO
    osLanguage: undefined,
    osTheme: undefined,
    ua: undefined,
    hostPackageName: undefined,
    browserName: undefined,
    browserVersion: undefined
  };
  Object.assign(result, parameters, extraParam);
}
function getGetDeviceType(result, model) {
  var deviceType = result.deviceType || 'phone';
  {
    var deviceTypeMaps = {
      ipad: 'pad',
      windows: 'pc',
      mac: 'pc'
    };
    var deviceTypeMapsKeys = Object.keys(deviceTypeMaps);
    var _model = model.toLocaleLowerCase();
    for (var index = 0; index < deviceTypeMapsKeys.length; index++) {
      var _m = deviceTypeMapsKeys[index];
      if (_model.indexOf(_m) !== -1) {
        deviceType = deviceTypeMaps[_m];
        break;
      }
    }
  }
  return deviceType;
}
function getDeviceBrand(brand) {
  var deviceBrand = brand;
  if (deviceBrand) {
    deviceBrand = brand.toLocaleLowerCase();
  }
  return deviceBrand;
}
function getAppLanguage(defaultLanguage) {
  return getLocale$1 ? getLocale$1() : defaultLanguage;
}
function getHostName(result) {
  var _platform = 'WeChat';
  var _hostName = result.hostName || _platform; // mp-jd
  {
    if (result.environment) {
      _hostName = result.environment;
    } else if (result.host && result.host.env) {
      _hostName = result.host.env;
    }
  }
  return _hostName;
}
var getSystemInfo = {
  returnValue: function returnValue(result) {
    useDeviceId(result);
    addSafeAreaInsets(result);
    populateParameters(result);
  }
};
var showActionSheet = {
  args: function args(fromArgs) {
    if ((0, _typeof2.default)(fromArgs) === 'object') {
      fromArgs.alertText = fromArgs.title;
    }
  }
};
var getAppBaseInfo = {
  returnValue: function returnValue(result) {
    var _result = result,
      version = _result.version,
      language = _result.language,
      SDKVersion = _result.SDKVersion,
      theme = _result.theme;
    var _hostName = getHostName(result);
    var hostLanguage = language.replace('_', '-');
    result = sortObject(Object.assign(result, {
      appId: "__UNI__EE8311D",
      appName: "候选人",
      appVersion: "1.0.0",
      appVersionCode: "100",
      appLanguage: getAppLanguage(hostLanguage),
      hostVersion: version,
      hostLanguage: hostLanguage,
      hostName: _hostName,
      hostSDKVersion: SDKVersion,
      hostTheme: theme
    }));
  }
};
var getDeviceInfo = {
  returnValue: function returnValue(result) {
    var _result2 = result,
      brand = _result2.brand,
      model = _result2.model;
    var deviceType = getGetDeviceType(result, model);
    var deviceBrand = getDeviceBrand(brand);
    useDeviceId(result);
    result = sortObject(Object.assign(result, {
      deviceType: deviceType,
      deviceBrand: deviceBrand,
      deviceModel: model
    }));
  }
};
var getWindowInfo = {
  returnValue: function returnValue(result) {
    addSafeAreaInsets(result);
    result = sortObject(Object.assign(result, {
      windowTop: 0,
      windowBottom: 0
    }));
  }
};
var getAppAuthorizeSetting = {
  returnValue: function returnValue(result) {
    var locationReducedAccuracy = result.locationReducedAccuracy;
    result.locationAccuracy = 'unsupported';
    if (locationReducedAccuracy === true) {
      result.locationAccuracy = 'reduced';
    } else if (locationReducedAccuracy === false) {
      result.locationAccuracy = 'full';
    }
  }
};

// import navigateTo from 'uni-helpers/navigate-to'

var compressImage = {
  args: function args(fromArgs) {
    // https://developers.weixin.qq.com/community/develop/doc/000c08940c865011298e0a43256800?highLine=compressHeight
    if (fromArgs.compressedHeight && !fromArgs.compressHeight) {
      fromArgs.compressHeight = fromArgs.compressedHeight;
    }
    if (fromArgs.compressedWidth && !fromArgs.compressWidth) {
      fromArgs.compressWidth = fromArgs.compressedWidth;
    }
  }
};
var protocols = {
  redirectTo: redirectTo,
  // navigateTo,  // 由于在微信开发者工具的页面参数，会显示__id__参数，因此暂时关闭mp-weixin对于navigateTo的AOP
  previewImage: previewImage,
  getSystemInfo: getSystemInfo,
  getSystemInfoSync: getSystemInfo,
  showActionSheet: showActionSheet,
  getAppBaseInfo: getAppBaseInfo,
  getDeviceInfo: getDeviceInfo,
  getWindowInfo: getWindowInfo,
  getAppAuthorizeSetting: getAppAuthorizeSetting,
  compressImage: compressImage
};
var todos = ['vibrate', 'preloadPage', 'unPreloadPage', 'loadSubPackage'];
var canIUses = [];
var CALLBACKS = ['success', 'fail', 'cancel', 'complete'];
function processCallback(methodName, method, returnValue) {
  return function (res) {
    return method(processReturnValue(methodName, res, returnValue));
  };
}
function processArgs(methodName, fromArgs) {
  var argsOption = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  var returnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
  var keepFromArgs = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
  if (isPlainObject(fromArgs)) {
    // 一般 api 的参数解析
    var toArgs = keepFromArgs === true ? fromArgs : {}; // returnValue 为 false 时，说明是格式化返回值，直接在返回值对象上修改赋值
    if (isFn(argsOption)) {
      argsOption = argsOption(fromArgs, toArgs) || {};
    }
    for (var key in fromArgs) {
      if (hasOwn(argsOption, key)) {
        var keyOption = argsOption[key];
        if (isFn(keyOption)) {
          keyOption = keyOption(fromArgs[key], fromArgs, toArgs);
        }
        if (!keyOption) {
          // 不支持的参数
          console.warn("The '".concat(methodName, "' method of platform '\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F' does not support option '").concat(key, "'"));
        } else if (isStr(keyOption)) {
          // 重写参数 key
          toArgs[keyOption] = fromArgs[key];
        } else if (isPlainObject(keyOption)) {
          // {name:newName,value:value}可重新指定参数 key:value
          toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;
        }
      } else if (CALLBACKS.indexOf(key) !== -1) {
        if (isFn(fromArgs[key])) {
          toArgs[key] = processCallback(methodName, fromArgs[key], returnValue);
        }
      } else {
        if (!keepFromArgs) {
          toArgs[key] = fromArgs[key];
        }
      }
    }
    return toArgs;
  } else if (isFn(fromArgs)) {
    fromArgs = processCallback(methodName, fromArgs, returnValue);
  }
  return fromArgs;
}
function processReturnValue(methodName, res, returnValue) {
  var keepReturnValue = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
  if (isFn(protocols.returnValue)) {
    // 处理通用 returnValue
    res = protocols.returnValue(methodName, res);
  }
  return processArgs(methodName, res, returnValue, {}, keepReturnValue);
}
function wrapper(methodName, method) {
  if (hasOwn(protocols, methodName)) {
    var protocol = protocols[methodName];
    if (!protocol) {
      // 暂不支持的 api
      return function () {
        console.error("Platform '\u5FAE\u4FE1\u5C0F\u7A0B\u5E8F' does not support '".concat(methodName, "'."));
      };
    }
    return function (arg1, arg2) {
      // 目前 api 最多两个参数
      var options = protocol;
      if (isFn(protocol)) {
        options = protocol(arg1);
      }
      arg1 = processArgs(methodName, arg1, options.args, options.returnValue);
      var args = [arg1];
      if (typeof arg2 !== 'undefined') {
        args.push(arg2);
      }
      if (isFn(options.name)) {
        methodName = options.name(arg1);
      } else if (isStr(options.name)) {
        methodName = options.name;
      }
      var returnValue = wx[methodName].apply(wx, args);
      if (isSyncApi(methodName)) {
        // 同步 api
        return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName));
      }
      return returnValue;
    };
  }
  return method;
}
var todoApis = Object.create(null);
var TODOS = ['onTabBarMidButtonTap', 'subscribePush', 'unsubscribePush', 'onPush', 'offPush', 'share'];
function createTodoApi(name) {
  return function todoApi(_ref) {
    var fail = _ref.fail,
      complete = _ref.complete;
    var res = {
      errMsg: "".concat(name, ":fail method '").concat(name, "' not supported")
    };
    isFn(fail) && fail(res);
    isFn(complete) && complete(res);
  };
}
TODOS.forEach(function (name) {
  todoApis[name] = createTodoApi(name);
});
var providers = {
  oauth: ['weixin'],
  share: ['weixin'],
  payment: ['wxpay'],
  push: ['weixin']
};
function getProvider(_ref2) {
  var service = _ref2.service,
    success = _ref2.success,
    fail = _ref2.fail,
    complete = _ref2.complete;
  var res = false;
  if (providers[service]) {
    res = {
      errMsg: 'getProvider:ok',
      service: service,
      provider: providers[service]
    };
    isFn(success) && success(res);
  } else {
    res = {
      errMsg: 'getProvider:fail service not found'
    };
    isFn(fail) && fail(res);
  }
  isFn(complete) && complete(res);
}
var extraApi = /*#__PURE__*/Object.freeze({
  __proto__: null,
  getProvider: getProvider
});
var getEmitter = function () {
  var Emitter;
  return function getUniEmitter() {
    if (!Emitter) {
      Emitter = new _vue.default();
    }
    return Emitter;
  };
}();
function apply(ctx, method, args) {
  return ctx[method].apply(ctx, args);
}
function $on() {
  return apply(getEmitter(), '$on', Array.prototype.slice.call(arguments));
}
function $off() {
  return apply(getEmitter(), '$off', Array.prototype.slice.call(arguments));
}
function $once() {
  return apply(getEmitter(), '$once', Array.prototype.slice.call(arguments));
}
function $emit() {
  return apply(getEmitter(), '$emit', Array.prototype.slice.call(arguments));
}
var eventApi = /*#__PURE__*/Object.freeze({
  __proto__: null,
  $on: $on,
  $off: $off,
  $once: $once,
  $emit: $emit
});

/**
 * 框架内 try-catch
 */
/**
 * 开发者 try-catch
 */
function tryCatch(fn) {
  return function () {
    try {
      return fn.apply(fn, arguments);
    } catch (e) {
      // TODO
      console.error(e);
    }
  };
}
function getApiCallbacks(params) {
  var apiCallbacks = {};
  for (var name in params) {
    var param = params[name];
    if (isFn(param)) {
      apiCallbacks[name] = tryCatch(param);
      delete params[name];
    }
  }
  return apiCallbacks;
}
var cid;
var cidErrMsg;
var enabled;
function normalizePushMessage(message) {
  try {
    return JSON.parse(message);
  } catch (e) {}
  return message;
}
function invokePushCallback(args) {
  if (args.type === 'enabled') {
    enabled = true;
  } else if (args.type === 'clientId') {
    cid = args.cid;
    cidErrMsg = args.errMsg;
    invokeGetPushCidCallbacks(cid, args.errMsg);
  } else if (args.type === 'pushMsg') {
    var message = {
      type: 'receive',
      data: normalizePushMessage(args.message)
    };
    for (var i = 0; i < onPushMessageCallbacks.length; i++) {
      var callback = onPushMessageCallbacks[i];
      callback(message);
      // 该消息已被阻止
      if (message.stopped) {
        break;
      }
    }
  } else if (args.type === 'click') {
    onPushMessageCallbacks.forEach(function (callback) {
      callback({
        type: 'click',
        data: normalizePushMessage(args.message)
      });
    });
  }
}
var getPushCidCallbacks = [];
function invokeGetPushCidCallbacks(cid, errMsg) {
  getPushCidCallbacks.forEach(function (callback) {
    callback(cid, errMsg);
  });
  getPushCidCallbacks.length = 0;
}
function getPushClientId(args) {
  if (!isPlainObject(args)) {
    args = {};
  }
  var _getApiCallbacks = getApiCallbacks(args),
    success = _getApiCallbacks.success,
    fail = _getApiCallbacks.fail,
    complete = _getApiCallbacks.complete;
  var hasSuccess = isFn(success);
  var hasFail = isFn(fail);
  var hasComplete = isFn(complete);
  Promise.resolve().then(function () {
    if (typeof enabled === 'undefined') {
      enabled = false;
      cid = '';
      cidErrMsg = 'uniPush is not enabled';
    }
    getPushCidCallbacks.push(function (cid, errMsg) {
      var res;
      if (cid) {
        res = {
          errMsg: 'getPushClientId:ok',
          cid: cid
        };
        hasSuccess && success(res);
      } else {
        res = {
          errMsg: 'getPushClientId:fail' + (errMsg ? ' ' + errMsg : '')
        };
        hasFail && fail(res);
      }
      hasComplete && complete(res);
    });
    if (typeof cid !== 'undefined') {
      invokeGetPushCidCallbacks(cid, cidErrMsg);
    }
  });
}
var onPushMessageCallbacks = [];
// 不使用 defineOnApi 实现，是因为 defineOnApi 依赖 UniServiceJSBridge ，该对象目前在小程序上未提供，故简单实现
var onPushMessage = function onPushMessage(fn) {
  if (onPushMessageCallbacks.indexOf(fn) === -1) {
    onPushMessageCallbacks.push(fn);
  }
};
var offPushMessage = function offPushMessage(fn) {
  if (!fn) {
    onPushMessageCallbacks.length = 0;
  } else {
    var index = onPushMessageCallbacks.indexOf(fn);
    if (index > -1) {
      onPushMessageCallbacks.splice(index, 1);
    }
  }
};
var baseInfo = wx.getAppBaseInfo && wx.getAppBaseInfo();
if (!baseInfo) {
  baseInfo = wx.getSystemInfoSync();
}
var host = baseInfo ? baseInfo.host : null;
var shareVideoMessage = host && host.env === 'SAAASDK' ? wx.miniapp.shareVideoMessage : wx.shareVideoMessage;
var api = /*#__PURE__*/Object.freeze({
  __proto__: null,
  shareVideoMessage: shareVideoMessage,
  getPushClientId: getPushClientId,
  onPushMessage: onPushMessage,
  offPushMessage: offPushMessage,
  invokePushCallback: invokePushCallback
});
var mocks = ['__route__', '__wxExparserNodeId__', '__wxWebviewId__'];
function findVmByVueId(vm, vuePid) {
  var $children = vm.$children;
  // 优先查找直属(反向查找:https://github.com/dcloudio/uni-app/issues/1200)
  for (var i = $children.length - 1; i >= 0; i--) {
    var childVm = $children[i];
    if (childVm.$scope._$vueId === vuePid) {
      return childVm;
    }
  }
  // 反向递归查找
  var parentVm;
  for (var _i = $children.length - 1; _i >= 0; _i--) {
    parentVm = findVmByVueId($children[_i], vuePid);
    if (parentVm) {
      return parentVm;
    }
  }
}
function initBehavior(options) {
  return Behavior(options);
}
function isPage() {
  return !!this.route;
}
function initRelation(detail) {
  this.triggerEvent('__l', detail);
}
function selectAllComponents(mpInstance, selector, $refs) {
  var components = mpInstance.selectAllComponents(selector) || [];
  components.forEach(function (component) {
    var ref = component.dataset.ref;
    $refs[ref] = component.$vm || toSkip(component);
    {
      if (component.dataset.vueGeneric === 'scoped') {
        component.selectAllComponents('.scoped-ref').forEach(function (scopedComponent) {
          selectAllComponents(scopedComponent, selector, $refs);
        });
      }
    }
  });
}
function syncRefs(refs, newRefs) {
  var oldKeys = (0, _construct2.default)(Set, (0, _toConsumableArray2.default)(Object.keys(refs)));
  var newKeys = Object.keys(newRefs);
  newKeys.forEach(function (key) {
    var oldValue = refs[key];
    var newValue = newRefs[key];
    if (Array.isArray(oldValue) && Array.isArray(newValue) && oldValue.length === newValue.length && newValue.every(function (value) {
      return oldValue.includes(value);
    })) {
      return;
    }
    refs[key] = newValue;
    oldKeys.delete(key);
  });
  oldKeys.forEach(function (key) {
    delete refs[key];
  });
  return refs;
}
function initRefs(vm) {
  var mpInstance = vm.$scope;
  var refs = {};
  Object.defineProperty(vm, '$refs', {
    get: function get() {
      var $refs = {};
      selectAllComponents(mpInstance, '.vue-ref', $refs);
      // TODO 暂不考虑 for 中的 scoped
      var forComponents = mpInstance.selectAllComponents('.vue-ref-in-for') || [];
      forComponents.forEach(function (component) {
        var ref = component.dataset.ref;
        if (!$refs[ref]) {
          $refs[ref] = [];
        }
        $refs[ref].push(component.$vm || toSkip(component));
      });
      return syncRefs(refs, $refs);
    }
  });
}
function handleLink(event) {
  var _ref3 = event.detail || event.value,
    vuePid = _ref3.vuePid,
    vueOptions = _ref3.vueOptions; // detail 是微信,value 是百度(dipatch)

  var parentVm;
  if (vuePid) {
    parentVm = findVmByVueId(this.$vm, vuePid);
  }
  if (!parentVm) {
    parentVm = this.$vm;
  }
  vueOptions.parent = parentVm;
}
function markMPComponent(component) {
  // 在 Vue 中标记为小程序组件
  var IS_MP = '__v_isMPComponent';
  Object.defineProperty(component, IS_MP, {
    configurable: true,
    enumerable: false,
    value: true
  });
  return component;
}
function toSkip(obj) {
  var OB = '__ob__';
  var SKIP = '__v_skip';
  if (isObject(obj) && Object.isExtensible(obj)) {
    // 避免被 @vue/composition-api 观测
    Object.defineProperty(obj, OB, {
      configurable: true,
      enumerable: false,
      value: (0, _defineProperty2.default)({}, SKIP, true)
    });
  }
  return obj;
}
var WORKLET_RE = /_(.*)_worklet_factory_/;
function initWorkletMethods(mpMethods, vueMethods) {
  if (vueMethods) {
    Object.keys(vueMethods).forEach(function (name) {
      var matches = name.match(WORKLET_RE);
      if (matches) {
        var workletName = matches[1];
        mpMethods[name] = vueMethods[name];
        mpMethods[workletName] = vueMethods[workletName];
      }
    });
  }
}
var MPPage = Page;
var MPComponent = Component;
var customizeRE = /:/g;
var customize = cached(function (str) {
  return camelize(str.replace(customizeRE, '-'));
});
function initTriggerEvent(mpInstance) {
  var oldTriggerEvent = mpInstance.triggerEvent;
  var newTriggerEvent = function newTriggerEvent(event) {
    for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
      args[_key3 - 1] = arguments[_key3];
    }
    // 事件名统一转驼峰格式，仅处理：当前组件为 vue 组件、当前组件为 vue 组件子组件
    if (this.$vm || this.dataset && this.dataset.comType) {
      event = customize(event);
    } else {
      // 针对微信/QQ小程序单独补充驼峰格式事件，以兼容历史项目
      var newEvent = customize(event);
      if (newEvent !== event) {
        oldTriggerEvent.apply(this, [newEvent].concat(args));
      }
    }
    return oldTriggerEvent.apply(this, [event].concat(args));
  };
  try {
    // 京东小程序 triggerEvent 为只读
    mpInstance.triggerEvent = newTriggerEvent;
  } catch (error) {
    mpInstance._triggerEvent = newTriggerEvent;
  }
}
function initHook(name, options, isComponent) {
  var oldHook = options[name];
  options[name] = function () {
    markMPComponent(this);
    initTriggerEvent(this);
    if (oldHook) {
      for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
        args[_key4] = arguments[_key4];
      }
      return oldHook.apply(this, args);
    }
  };
}
if (!MPPage.__$wrappered) {
  MPPage.__$wrappered = true;
  Page = function Page() {
    var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    initHook('onLoad', options);
    return MPPage(options);
  };
  Page.after = MPPage.after;
  Component = function Component() {
    var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    initHook('created', options);
    return MPComponent(options);
  };
}
var PAGE_EVENT_HOOKS = ['onPullDownRefresh', 'onReachBottom', 'onAddToFavorites', 'onShareTimeline', 'onShareAppMessage', 'onPageScroll', 'onResize', 'onTabItemTap'];
function initMocks(vm, mocks) {
  var mpInstance = vm.$mp[vm.mpType];
  mocks.forEach(function (mock) {
    if (hasOwn(mpInstance, mock)) {
      vm[mock] = mpInstance[mock];
    }
  });
}
function hasHook(hook, vueOptions) {
  if (!vueOptions) {
    return true;
  }
  if (_vue.default.options && Array.isArray(_vue.default.options[hook])) {
    return true;
  }
  vueOptions = vueOptions.default || vueOptions;
  if (isFn(vueOptions)) {
    if (isFn(vueOptions.extendOptions[hook])) {
      return true;
    }
    if (vueOptions.super && vueOptions.super.options && Array.isArray(vueOptions.super.options[hook])) {
      return true;
    }
    return false;
  }
  if (isFn(vueOptions[hook]) || Array.isArray(vueOptions[hook])) {
    return true;
  }
  var mixins = vueOptions.mixins;
  if (Array.isArray(mixins)) {
    return !!mixins.find(function (mixin) {
      return hasHook(hook, mixin);
    });
  }
}
function initHooks(mpOptions, hooks, vueOptions) {
  hooks.forEach(function (hook) {
    if (hasHook(hook, vueOptions)) {
      mpOptions[hook] = function (args) {
        return this.$vm && this.$vm.__call_hook(hook, args);
      };
    }
  });
}
function initUnknownHooks(mpOptions, vueOptions) {
  var excludes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
  findHooks(vueOptions).forEach(function (hook) {
    return initHook$1(mpOptions, hook, excludes);
  });
}
function findHooks(vueOptions) {
  var hooks = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
  if (vueOptions) {
    Object.keys(vueOptions).forEach(function (name) {
      if (name.indexOf('on') === 0 && isFn(vueOptions[name])) {
        hooks.push(name);
      }
    });
  }
  return hooks;
}
function initHook$1(mpOptions, hook, excludes) {
  if (excludes.indexOf(hook) === -1 && !hasOwn(mpOptions, hook)) {
    mpOptions[hook] = function (args) {
      return this.$vm && this.$vm.__call_hook(hook, args);
    };
  }
}
function initVueComponent(Vue, vueOptions) {
  vueOptions = vueOptions.default || vueOptions;
  var VueComponent;
  if (isFn(vueOptions)) {
    VueComponent = vueOptions;
  } else {
    VueComponent = Vue.extend(vueOptions);
  }
  vueOptions = VueComponent.options;
  return [VueComponent, vueOptions];
}
function initSlots(vm, vueSlots) {
  if (Array.isArray(vueSlots) && vueSlots.length) {
    var $slots = Object.create(null);
    vueSlots.forEach(function (slotName) {
      $slots[slotName] = true;
    });
    vm.$scopedSlots = vm.$slots = $slots;
  }
}
function initVueIds(vueIds, mpInstance) {
  vueIds = (vueIds || '').split(',');
  var len = vueIds.length;
  if (len === 1) {
    mpInstance._$vueId = vueIds[0];
  } else if (len === 2) {
    mpInstance._$vueId = vueIds[0];
    mpInstance._$vuePid = vueIds[1];
  }
}
function initData(vueOptions, context) {
  var data = vueOptions.data || {};
  var methods = vueOptions.methods || {};
  if (typeof data === 'function') {
    try {
      data = data.call(context); // 支持 Vue.prototype 上挂的数据
    } catch (e) {
      if (Object({"NODE_ENV":"development","VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"候选人","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
        console.warn('根据 Vue 的 data 函数初始化小程序 data 失败，请尽量确保 data 函数中不访问 vm 对象，否则可能影响首次数据渲染速度。', data);
      }
    }
  } else {
    try {
      // 对 data 格式化
      data = JSON.parse(JSON.stringify(data));
    } catch (e) {}
  }
  if (!isPlainObject(data)) {
    data = {};
  }
  Object.keys(methods).forEach(function (methodName) {
    if (context.__lifecycle_hooks__.indexOf(methodName) === -1 && !hasOwn(data, methodName)) {
      data[methodName] = methods[methodName];
    }
  });
  return data;
}
var PROP_TYPES = [String, Number, Boolean, Object, Array, null];
function createObserver(name) {
  return function observer(newVal, oldVal) {
    if (this.$vm) {
      this.$vm[name] = newVal; // 为了触发其他非 render watcher
    }
  };
}

function initBehaviors(vueOptions, initBehavior) {
  var vueBehaviors = vueOptions.behaviors;
  var vueExtends = vueOptions.extends;
  var vueMixins = vueOptions.mixins;
  var vueProps = vueOptions.props;
  if (!vueProps) {
    vueOptions.props = vueProps = [];
  }
  var behaviors = [];
  if (Array.isArray(vueBehaviors)) {
    vueBehaviors.forEach(function (behavior) {
      behaviors.push(behavior.replace('uni://', "wx".concat("://")));
      if (behavior === 'uni://form-field') {
        if (Array.isArray(vueProps)) {
          vueProps.push('name');
          vueProps.push('value');
        } else {
          vueProps.name = {
            type: String,
            default: ''
          };
          vueProps.value = {
            type: [String, Number, Boolean, Array, Object, Date],
            default: ''
          };
        }
      }
    });
  }
  if (isPlainObject(vueExtends) && vueExtends.props) {
    behaviors.push(initBehavior({
      properties: initProperties(vueExtends.props, true)
    }));
  }
  if (Array.isArray(vueMixins)) {
    vueMixins.forEach(function (vueMixin) {
      if (isPlainObject(vueMixin) && vueMixin.props) {
        behaviors.push(initBehavior({
          properties: initProperties(vueMixin.props, true)
        }));
      }
    });
  }
  return behaviors;
}
function parsePropType(key, type, defaultValue, file) {
  // [String]=>String
  if (Array.isArray(type) && type.length === 1) {
    return type[0];
  }
  return type;
}
function initProperties(props) {
  var isBehavior = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  var file = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
  var options = arguments.length > 3 ? arguments[3] : undefined;
  var properties = {};
  if (!isBehavior) {
    properties.vueId = {
      type: String,
      value: ''
    };
    {
      if (options.virtualHost) {
        properties.virtualHostStyle = {
          type: null,
          value: ''
        };
        properties.virtualHostClass = {
          type: null,
          value: ''
        };
      }
    }
    // scopedSlotsCompiler auto
    properties.scopedSlotsCompiler = {
      type: String,
      value: ''
    };
    properties.vueSlots = {
      // 小程序不能直接定义 $slots 的 props，所以通过 vueSlots 转换到 $slots
      type: null,
      value: [],
      observer: function observer(newVal, oldVal) {
        var $slots = Object.create(null);
        newVal.forEach(function (slotName) {
          $slots[slotName] = true;
        });
        this.setData({
          $slots: $slots
        });
      }
    };
  }
  if (Array.isArray(props)) {
    // ['title']
    props.forEach(function (key) {
      properties[key] = {
        type: null,
        observer: createObserver(key)
      };
    });
  } else if (isPlainObject(props)) {
    // {title:{type:String,default:''},content:String}
    Object.keys(props).forEach(function (key) {
      var opts = props[key];
      if (isPlainObject(opts)) {
        // title:{type:String,default:''}
        var value = opts.default;
        if (isFn(value)) {
          value = value();
        }
        opts.type = parsePropType(key, opts.type);
        properties[key] = {
          type: PROP_TYPES.indexOf(opts.type) !== -1 ? opts.type : null,
          value: value,
          observer: createObserver(key)
        };
      } else {
        // content:String
        var type = parsePropType(key, opts);
        properties[key] = {
          type: PROP_TYPES.indexOf(type) !== -1 ? type : null,
          observer: createObserver(key)
        };
      }
    });
  }
  return properties;
}
function wrapper$1(event) {
  // TODO 又得兼容 mpvue 的 mp 对象
  try {
    event.mp = JSON.parse(JSON.stringify(event));
  } catch (e) {}
  event.stopPropagation = noop;
  event.preventDefault = noop;
  event.target = event.target || {};
  if (!hasOwn(event, 'detail')) {
    event.detail = {};
  }
  if (hasOwn(event, 'markerId')) {
    event.detail = (0, _typeof2.default)(event.detail) === 'object' ? event.detail : {};
    event.detail.markerId = event.markerId;
  }
  if (isPlainObject(event.detail)) {
    event.target = Object.assign({}, event.target, event.detail);
  }
  return event;
}
function getExtraValue(vm, dataPathsArray) {
  var context = vm;
  dataPathsArray.forEach(function (dataPathArray) {
    var dataPath = dataPathArray[0];
    var value = dataPathArray[2];
    if (dataPath || typeof value !== 'undefined') {
      // ['','',index,'disable']
      var propPath = dataPathArray[1];
      var valuePath = dataPathArray[3];
      var vFor;
      if (Number.isInteger(dataPath)) {
        vFor = dataPath;
      } else if (!dataPath) {
        vFor = context;
      } else if (typeof dataPath === 'string' && dataPath) {
        if (dataPath.indexOf('#s#') === 0) {
          vFor = dataPath.substr(3);
        } else {
          vFor = vm.__get_value(dataPath, context);
        }
      }
      if (Number.isInteger(vFor)) {
        context = value;
      } else if (!propPath) {
        context = vFor[value];
      } else {
        if (Array.isArray(vFor)) {
          context = vFor.find(function (vForItem) {
            return vm.__get_value(propPath, vForItem) === value;
          });
        } else if (isPlainObject(vFor)) {
          context = Object.keys(vFor).find(function (vForKey) {
            return vm.__get_value(propPath, vFor[vForKey]) === value;
          });
        } else {
          console.error('v-for 暂不支持循环数据：', vFor);
        }
      }
      if (valuePath) {
        context = vm.__get_value(valuePath, context);
      }
    }
  });
  return context;
}
function processEventExtra(vm, extra, event, __args__) {
  var extraObj = {};
  if (Array.isArray(extra) && extra.length) {
    /**
     *[
     *    ['data.items', 'data.id', item.data.id],
     *    ['metas', 'id', meta.id]
     *],
     *[
     *    ['data.items', 'data.id', item.data.id],
     *    ['metas', 'id', meta.id]
     *],
     *'test'
     */
    extra.forEach(function (dataPath, index) {
      if (typeof dataPath === 'string') {
        if (!dataPath) {
          // model,prop.sync
          extraObj['$' + index] = vm;
        } else {
          if (dataPath === '$event') {
            // $event
            extraObj['$' + index] = event;
          } else if (dataPath === 'arguments') {
            extraObj['$' + index] = event.detail ? event.detail.__args__ || __args__ : __args__;
          } else if (dataPath.indexOf('$event.') === 0) {
            // $event.target.value
            extraObj['$' + index] = vm.__get_value(dataPath.replace('$event.', ''), event);
          } else {
            extraObj['$' + index] = vm.__get_value(dataPath);
          }
        }
      } else {
        extraObj['$' + index] = getExtraValue(vm, dataPath);
      }
    });
  }
  return extraObj;
}
function getObjByArray(arr) {
  var obj = {};
  for (var i = 1; i < arr.length; i++) {
    var element = arr[i];
    obj[element[0]] = element[1];
  }
  return obj;
}
function processEventArgs(vm, event) {
  var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
  var extra = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
  var isCustom = arguments.length > 4 ? arguments[4] : undefined;
  var methodName = arguments.length > 5 ? arguments[5] : undefined;
  var isCustomMPEvent = false; // wxcomponent 组件，传递原始 event 对象

  // fixed 用户直接触发 mpInstance.triggerEvent
  var __args__ = isPlainObject(event.detail) ? event.detail.__args__ || [event.detail] : [event.detail];
  if (isCustom) {
    // 自定义事件
    isCustomMPEvent = event.currentTarget && event.currentTarget.dataset && event.currentTarget.dataset.comType === 'wx';
    if (!args.length) {
      // 无参数，直接传入 event 或 detail 数组
      if (isCustomMPEvent) {
        return [event];
      }
      return __args__;
    }
  }
  var extraObj = processEventExtra(vm, extra, event, __args__);
  var ret = [];
  args.forEach(function (arg) {
    if (arg === '$event') {
      if (methodName === '__set_model' && !isCustom) {
        // input v-model value
        ret.push(event.target.value);
      } else {
        if (isCustom && !isCustomMPEvent) {
          ret.push(__args__[0]);
        } else {
          // wxcomponent 组件或内置组件
          ret.push(event);
        }
      }
    } else {
      if (Array.isArray(arg) && arg[0] === 'o') {
        ret.push(getObjByArray(arg));
      } else if (typeof arg === 'string' && hasOwn(extraObj, arg)) {
        ret.push(extraObj[arg]);
      } else {
        ret.push(arg);
      }
    }
  });
  return ret;
}
var ONCE = '~';
var CUSTOM = '^';
function isMatchEventType(eventType, optType) {
  return eventType === optType || optType === 'regionchange' && (eventType === 'begin' || eventType === 'end');
}
function getContextVm(vm) {
  var $parent = vm.$parent;
  // 父组件是 scoped slots 或者其他自定义组件时继续查找
  while ($parent && $parent.$parent && ($parent.$options.generic || $parent.$parent.$options.generic || $parent.$scope._$vuePid)) {
    $parent = $parent.$parent;
  }
  return $parent && $parent.$parent;
}
function handleEvent(event) {
  var _this2 = this;
  event = wrapper$1(event);

  // [['tap',[['handle',[1,2,a]],['handle1',[1,2,a]]]]]
  var dataset = (event.currentTarget || event.target).dataset;
  if (!dataset) {
    return console.warn('事件信息不存在');
  }
  var eventOpts = dataset.eventOpts || dataset['event-opts']; // 支付宝 web-view 组件 dataset 非驼峰
  if (!eventOpts) {
    return console.warn('事件信息不存在');
  }

  // [['handle',[1,2,a]],['handle1',[1,2,a]]]
  var eventType = event.type;
  var ret = [];
  eventOpts.forEach(function (eventOpt) {
    var type = eventOpt[0];
    var eventsArray = eventOpt[1];
    var isCustom = type.charAt(0) === CUSTOM;
    type = isCustom ? type.slice(1) : type;
    var isOnce = type.charAt(0) === ONCE;
    type = isOnce ? type.slice(1) : type;
    if (eventsArray && isMatchEventType(eventType, type)) {
      eventsArray.forEach(function (eventArray) {
        var methodName = eventArray[0];
        if (methodName) {
          var handlerCtx = _this2.$vm;
          if (handlerCtx.$options.generic) {
            // mp-weixin,mp-toutiao 抽象节点模拟 scoped slots
            handlerCtx = getContextVm(handlerCtx) || handlerCtx;
          }
          if (methodName === '$emit') {
            handlerCtx.$emit.apply(handlerCtx, processEventArgs(_this2.$vm, event, eventArray[1], eventArray[2], isCustom, methodName));
            return;
          }
          var handler = handlerCtx[methodName];
          if (!isFn(handler)) {
            var _type = _this2.$vm.mpType === 'page' ? 'Page' : 'Component';
            var path = _this2.route || _this2.is;
            throw new Error("".concat(_type, " \"").concat(path, "\" does not have a method \"").concat(methodName, "\""));
          }
          if (isOnce) {
            if (handler.once) {
              return;
            }
            handler.once = true;
          }
          var params = processEventArgs(_this2.$vm, event, eventArray[1], eventArray[2], isCustom, methodName);
          params = Array.isArray(params) ? params : [];
          // 参数尾部增加原始事件对象用于复杂表达式内获取额外数据
          if (/=\s*\S+\.eventParams\s*\|\|\s*\S+\[['"]event-params['"]\]/.test(handler.toString())) {
            // eslint-disable-next-line no-sparse-arrays
            params = params.concat([,,,,,,,,,, event]);
          }
          ret.push(handler.apply(handlerCtx, params));
        }
      });
    }
  });
  if (eventType === 'input' && ret.length === 1 && typeof ret[0] !== 'undefined') {
    return ret[0];
  }
}
var eventChannels = {};
function getEventChannel(id) {
  var eventChannel = eventChannels[id];
  delete eventChannels[id];
  return eventChannel;
}
var hooks = ['onShow', 'onHide', 'onError', 'onPageNotFound', 'onThemeChange', 'onUnhandledRejection'];
function initEventChannel() {
  _vue.default.prototype.getOpenerEventChannel = function () {
    // 微信小程序使用自身getOpenerEventChannel
    {
      return this.$scope.getOpenerEventChannel();
    }
  };
  var callHook = _vue.default.prototype.__call_hook;
  _vue.default.prototype.__call_hook = function (hook, args) {
    if (hook === 'onLoad' && args && args.__id__) {
      this.__eventChannel__ = getEventChannel(args.__id__);
      delete args.__id__;
    }
    return callHook.call(this, hook, args);
  };
}
function initScopedSlotsParams() {
  var center = {};
  var parents = {};
  function currentId(fn) {
    var vueIds = this.$options.propsData.vueId;
    if (vueIds) {
      var vueId = vueIds.split(',')[0];
      fn(vueId);
    }
  }
  _vue.default.prototype.$hasSSP = function (vueId) {
    var slot = center[vueId];
    if (!slot) {
      parents[vueId] = this;
      this.$on('hook:destroyed', function () {
        delete parents[vueId];
      });
    }
    return slot;
  };
  _vue.default.prototype.$getSSP = function (vueId, name, needAll) {
    var slot = center[vueId];
    if (slot) {
      var params = slot[name] || [];
      if (needAll) {
        return params;
      }
      return params[0];
    }
  };
  _vue.default.prototype.$setSSP = function (name, value) {
    var index = 0;
    currentId.call(this, function (vueId) {
      var slot = center[vueId];
      var params = slot[name] = slot[name] || [];
      params.push(value);
      index = params.length - 1;
    });
    return index;
  };
  _vue.default.prototype.$initSSP = function () {
    currentId.call(this, function (vueId) {
      center[vueId] = {};
    });
  };
  _vue.default.prototype.$callSSP = function () {
    currentId.call(this, function (vueId) {
      if (parents[vueId]) {
        parents[vueId].$forceUpdate();
      }
    });
  };
  _vue.default.mixin({
    destroyed: function destroyed() {
      var propsData = this.$options.propsData;
      var vueId = propsData && propsData.vueId;
      if (vueId) {
        delete center[vueId];
        delete parents[vueId];
      }
    }
  });
}
function parseBaseApp(vm, _ref4) {
  var mocks = _ref4.mocks,
    initRefs = _ref4.initRefs;
  initEventChannel();
  {
    initScopedSlotsParams();
  }
  if (vm.$options.store) {
    _vue.default.prototype.$store = vm.$options.store;
  }
  uniIdMixin(_vue.default);
  _vue.default.prototype.mpHost = "mp-weixin";
  _vue.default.mixin({
    beforeCreate: function beforeCreate() {
      if (!this.$options.mpType) {
        return;
      }
      this.mpType = this.$options.mpType;
      this.$mp = (0, _defineProperty2.default)({
        data: {}
      }, this.mpType, this.$options.mpInstance);
      this.$scope = this.$options.mpInstance;
      delete this.$options.mpType;
      delete this.$options.mpInstance;
      if (this.mpType === 'page' && typeof getApp === 'function') {
        // hack vue-i18n
        var app = getApp();
        if (app.$vm && app.$vm.$i18n) {
          this._i18n = app.$vm.$i18n;
        }
      }
      if (this.mpType !== 'app') {
        initRefs(this);
        initMocks(this, mocks);
      }
    }
  });
  var appOptions = {
    onLaunch: function onLaunch(args) {
      if (this.$vm) {
        // 已经初始化过了，主要是为了百度，百度 onShow 在 onLaunch 之前
        return;
      }
      {
        if (wx.canIUse && !wx.canIUse('nextTick')) {
          // 事实 上2.2.3 即可，简单使用 2.3.0 的 nextTick 判断
          console.error('当前微信基础库版本过低，请将 微信开发者工具-详情-项目设置-调试基础库版本 更换为`2.3.0`以上');
        }
      }
      this.$vm = vm;
      this.$vm.$mp = {
        app: this
      };
      this.$vm.$scope = this;
      // vm 上也挂载 globalData
      this.$vm.globalData = this.globalData;
      this.$vm._isMounted = true;
      this.$vm.__call_hook('mounted', args);
      this.$vm.__call_hook('onLaunch', args);
    }
  };

  // 兼容旧版本 globalData
  appOptions.globalData = vm.$options.globalData || {};
  // 将 methods 中的方法挂在 getApp() 中
  var methods = vm.$options.methods;
  if (methods) {
    Object.keys(methods).forEach(function (name) {
      appOptions[name] = methods[name];
    });
  }
  initAppLocale(_vue.default, vm, normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN);
  initHooks(appOptions, hooks);
  initUnknownHooks(appOptions, vm.$options);
  return appOptions;
}
function parseApp(vm) {
  return parseBaseApp(vm, {
    mocks: mocks,
    initRefs: initRefs
  });
}
function createApp(vm) {
  App(parseApp(vm));
  return vm;
}
var encodeReserveRE = /[!'()*]/g;
var encodeReserveReplacer = function encodeReserveReplacer(c) {
  return '%' + c.charCodeAt(0).toString(16);
};
var commaRE = /%2C/g;

// fixed encodeURIComponent which is more conformant to RFC3986:
// - escapes [!'()*]
// - preserve commas
var encode = function encode(str) {
  return encodeURIComponent(str).replace(encodeReserveRE, encodeReserveReplacer).replace(commaRE, ',');
};
function stringifyQuery(obj) {
  var encodeStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : encode;
  var res = obj ? Object.keys(obj).map(function (key) {
    var val = obj[key];
    if (val === undefined) {
      return '';
    }
    if (val === null) {
      return encodeStr(key);
    }
    if (Array.isArray(val)) {
      var result = [];
      val.forEach(function (val2) {
        if (val2 === undefined) {
          return;
        }
        if (val2 === null) {
          result.push(encodeStr(key));
        } else {
          result.push(encodeStr(key) + '=' + encodeStr(val2));
        }
      });
      return result.join('&');
    }
    return encodeStr(key) + '=' + encodeStr(val);
  }).filter(function (x) {
    return x.length > 0;
  }).join('&') : null;
  return res ? "?".concat(res) : '';
}
function parseBaseComponent(vueComponentOptions) {
  var _ref5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
    isPage = _ref5.isPage,
    initRelation = _ref5.initRelation;
  var needVueOptions = arguments.length > 2 ? arguments[2] : undefined;
  var _initVueComponent = initVueComponent(_vue.default, vueComponentOptions),
    _initVueComponent2 = (0, _slicedToArray2.default)(_initVueComponent, 2),
    VueComponent = _initVueComponent2[0],
    vueOptions = _initVueComponent2[1];
  var options = _objectSpread({
    multipleSlots: true,
    // styleIsolation: 'apply-shared',
    addGlobalClass: true
  }, vueOptions.options || {});
  {
    // 微信 multipleSlots 部分情况有 bug，导致内容顺序错乱 如 u-list，提供覆盖选项
    if (vueOptions['mp-weixin'] && vueOptions['mp-weixin'].options) {
      Object.assign(options, vueOptions['mp-weixin'].options);
    }
  }
  var componentOptions = {
    options: options,
    data: initData(vueOptions, _vue.default.prototype),
    behaviors: initBehaviors(vueOptions, initBehavior),
    properties: initProperties(vueOptions.props, false, vueOptions.__file, options),
    lifetimes: {
      attached: function attached() {
        var properties = this.properties;
        var options = {
          mpType: isPage.call(this) ? 'page' : 'component',
          mpInstance: this,
          propsData: properties
        };
        initVueIds(properties.vueId, this);

        // 处理父子关系
        initRelation.call(this, {
          vuePid: this._$vuePid,
          vueOptions: options
        });

        // 初始化 vue 实例
        this.$vm = new VueComponent(options);

        // 处理$slots,$scopedSlots（暂不支持动态变化$slots）
        initSlots(this.$vm, properties.vueSlots);

        // 触发首次 setData
        this.$vm.$mount();
      },
      ready: function ready() {
        // 当组件 props 默认值为 true，初始化时传入 false 会导致 created,ready 触发, 但 attached 不触发
        // https://developers.weixin.qq.com/community/develop/doc/00066ae2844cc0f8eb883e2a557800
        if (this.$vm) {
          this.$vm._isMounted = true;
          this.$vm.__call_hook('mounted');
          this.$vm.__call_hook('onReady');
        }
      },
      detached: function detached() {
        this.$vm && this.$vm.$destroy();
      }
    },
    pageLifetimes: {
      show: function show(args) {
        this.$vm && this.$vm.__call_hook('onPageShow', args);
      },
      hide: function hide() {
        this.$vm && this.$vm.__call_hook('onPageHide');
      },
      resize: function resize(size) {
        this.$vm && this.$vm.__call_hook('onPageResize', size);
      }
    },
    methods: {
      __l: handleLink,
      __e: handleEvent
    }
  };
  // externalClasses
  if (vueOptions.externalClasses) {
    componentOptions.externalClasses = vueOptions.externalClasses;
  }
  if (Array.isArray(vueOptions.wxsCallMethods)) {
    vueOptions.wxsCallMethods.forEach(function (callMethod) {
      componentOptions.methods[callMethod] = function (args) {
        return this.$vm[callMethod](args);
      };
    });
  }
  if (needVueOptions) {
    return [componentOptions, vueOptions, VueComponent];
  }
  if (isPage) {
    return componentOptions;
  }
  return [componentOptions, VueComponent];
}
function parseComponent(vueComponentOptions, needVueOptions) {
  return parseBaseComponent(vueComponentOptions, {
    isPage: isPage,
    initRelation: initRelation
  }, needVueOptions);
}
var hooks$1 = ['onShow', 'onHide', 'onUnload'];
hooks$1.push.apply(hooks$1, PAGE_EVENT_HOOKS);
function parseBasePage(vuePageOptions) {
  var _parseComponent = parseComponent(vuePageOptions, true),
    _parseComponent2 = (0, _slicedToArray2.default)(_parseComponent, 2),
    pageOptions = _parseComponent2[0],
    vueOptions = _parseComponent2[1];
  initHooks(pageOptions.methods, hooks$1, vueOptions);
  pageOptions.methods.onLoad = function (query) {
    this.options = query;
    var copyQuery = Object.assign({}, query);
    delete copyQuery.__id__;
    this.$page = {
      fullPath: '/' + (this.route || this.is) + stringifyQuery(copyQuery)
    };
    this.$vm.$mp.query = query; // 兼容 mpvue
    this.$vm.__call_hook('onLoad', query);
  };
  {
    initUnknownHooks(pageOptions.methods, vuePageOptions, ['onReady']);
  }
  {
    initWorkletMethods(pageOptions.methods, vueOptions.methods);
  }
  return pageOptions;
}
function parsePage(vuePageOptions) {
  return parseBasePage(vuePageOptions);
}
function createPage(vuePageOptions) {
  {
    return Component(parsePage(vuePageOptions));
  }
}
function createComponent(vueOptions) {
  {
    return Component(parseComponent(vueOptions));
  }
}
function createSubpackageApp(vm) {
  var appOptions = parseApp(vm);
  var app = getApp({
    allowDefault: true
  });
  vm.$scope = app;
  var globalData = app.globalData;
  if (globalData) {
    Object.keys(appOptions.globalData).forEach(function (name) {
      if (!hasOwn(globalData, name)) {
        globalData[name] = appOptions.globalData[name];
      }
    });
  }
  Object.keys(appOptions).forEach(function (name) {
    if (!hasOwn(app, name)) {
      app[name] = appOptions[name];
    }
  });
  if (isFn(appOptions.onShow) && wx.onAppShow) {
    wx.onAppShow(function () {
      for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {
        args[_key5] = arguments[_key5];
      }
      vm.__call_hook('onShow', args);
    });
  }
  if (isFn(appOptions.onHide) && wx.onAppHide) {
    wx.onAppHide(function () {
      for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {
        args[_key6] = arguments[_key6];
      }
      vm.__call_hook('onHide', args);
    });
  }
  if (isFn(appOptions.onLaunch)) {
    var args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();
    vm.__call_hook('onLaunch', args);
  }
  return vm;
}
function createPlugin(vm) {
  var appOptions = parseApp(vm);
  if (isFn(appOptions.onShow) && wx.onAppShow) {
    wx.onAppShow(function () {
      for (var _len7 = arguments.length, args = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {
        args[_key7] = arguments[_key7];
      }
      vm.__call_hook('onShow', args);
    });
  }
  if (isFn(appOptions.onHide) && wx.onAppHide) {
    wx.onAppHide(function () {
      for (var _len8 = arguments.length, args = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {
        args[_key8] = arguments[_key8];
      }
      vm.__call_hook('onHide', args);
    });
  }
  if (isFn(appOptions.onLaunch)) {
    var args = wx.getLaunchOptionsSync && wx.getLaunchOptionsSync();
    vm.__call_hook('onLaunch', args);
  }
  return vm;
}
todos.forEach(function (todoApi) {
  protocols[todoApi] = false;
});
canIUses.forEach(function (canIUseApi) {
  var apiName = protocols[canIUseApi] && protocols[canIUseApi].name ? protocols[canIUseApi].name : canIUseApi;
  if (!wx.canIUse(apiName)) {
    protocols[canIUseApi] = false;
  }
});
var uni = {};
if (typeof Proxy !== 'undefined' && "mp-weixin" !== 'app-plus') {
  uni = new Proxy({}, {
    get: function get(target, name) {
      if (hasOwn(target, name)) {
        return target[name];
      }
      if (baseApi[name]) {
        return baseApi[name];
      }
      if (api[name]) {
        return promisify(name, api[name]);
      }
      {
        if (extraApi[name]) {
          return promisify(name, extraApi[name]);
        }
        if (todoApis[name]) {
          return promisify(name, todoApis[name]);
        }
      }
      if (eventApi[name]) {
        return eventApi[name];
      }
      return promisify(name, wrapper(name, wx[name]));
    },
    set: function set(target, name, value) {
      target[name] = value;
      return true;
    }
  });
} else {
  Object.keys(baseApi).forEach(function (name) {
    uni[name] = baseApi[name];
  });
  {
    Object.keys(todoApis).forEach(function (name) {
      uni[name] = promisify(name, todoApis[name]);
    });
    Object.keys(extraApi).forEach(function (name) {
      uni[name] = promisify(name, extraApi[name]);
    });
  }
  Object.keys(eventApi).forEach(function (name) {
    uni[name] = eventApi[name];
  });
  Object.keys(api).forEach(function (name) {
    uni[name] = promisify(name, api[name]);
  });
  Object.keys(wx).forEach(function (name) {
    if (hasOwn(wx, name) || hasOwn(protocols, name)) {
      uni[name] = promisify(name, wrapper(name, wx[name]));
    }
  });
}
wx.createApp = createApp;
wx.createPage = createPage;
wx.createComponent = createComponent;
wx.createSubpackageApp = createSubpackageApp;
wx.createPlugin = createPlugin;
var uni$1 = uni;
var _default = uni$1;
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js */ 1)["default"], __webpack_require__(/*! ./../../../webpack/buildin/global.js */ 3)))

/***/ }),

/***/ 20:
/*!****************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/iterableToArray.js ***!
  \****************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _iterableToArray(iter) {
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
}
module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 21:
/*!******************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/nonIterableSpread.js ***!
  \******************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _nonIterableSpread() {
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 22:
/*!*************************************************************!*\
  !*** ./node_modules/@dcloudio/uni-i18n/dist/uni-i18n.es.js ***!
  \*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni, global) {

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.LOCALE_ZH_HANT = exports.LOCALE_ZH_HANS = exports.LOCALE_FR = exports.LOCALE_ES = exports.LOCALE_EN = exports.I18n = exports.Formatter = void 0;
exports.compileI18nJsonStr = compileI18nJsonStr;
exports.hasI18nJson = hasI18nJson;
exports.initVueI18n = initVueI18n;
exports.isI18nStr = isI18nStr;
exports.isString = void 0;
exports.normalizeLocale = normalizeLocale;
exports.parseI18nJson = parseI18nJson;
exports.resolveLocale = resolveLocale;
var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 5));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
var isObject = function isObject(val) {
  return val !== null && (0, _typeof2.default)(val) === 'object';
};
var defaultDelimiters = ['{', '}'];
var BaseFormatter = /*#__PURE__*/function () {
  function BaseFormatter() {
    (0, _classCallCheck2.default)(this, BaseFormatter);
    this._caches = Object.create(null);
  }
  (0, _createClass2.default)(BaseFormatter, [{
    key: "interpolate",
    value: function interpolate(message, values) {
      var delimiters = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : defaultDelimiters;
      if (!values) {
        return [message];
      }
      var tokens = this._caches[message];
      if (!tokens) {
        tokens = parse(message, delimiters);
        this._caches[message] = tokens;
      }
      return compile(tokens, values);
    }
  }]);
  return BaseFormatter;
}();
exports.Formatter = BaseFormatter;
var RE_TOKEN_LIST_VALUE = /^(?:\d)+/;
var RE_TOKEN_NAMED_VALUE = /^(?:\w)+/;
function parse(format, _ref) {
  var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
    startDelimiter = _ref2[0],
    endDelimiter = _ref2[1];
  var tokens = [];
  var position = 0;
  var text = '';
  while (position < format.length) {
    var char = format[position++];
    if (char === startDelimiter) {
      if (text) {
        tokens.push({
          type: 'text',
          value: text
        });
      }
      text = '';
      var sub = '';
      char = format[position++];
      while (char !== undefined && char !== endDelimiter) {
        sub += char;
        char = format[position++];
      }
      var isClosed = char === endDelimiter;
      var type = RE_TOKEN_LIST_VALUE.test(sub) ? 'list' : isClosed && RE_TOKEN_NAMED_VALUE.test(sub) ? 'named' : 'unknown';
      tokens.push({
        value: sub,
        type: type
      });
    }
    //  else if (char === '%') {
    //   // when found rails i18n syntax, skip text capture
    //   if (format[position] !== '{') {
    //     text += char
    //   }
    // }
    else {
      text += char;
    }
  }
  text && tokens.push({
    type: 'text',
    value: text
  });
  return tokens;
}
function compile(tokens, values) {
  var compiled = [];
  var index = 0;
  var mode = Array.isArray(values) ? 'list' : isObject(values) ? 'named' : 'unknown';
  if (mode === 'unknown') {
    return compiled;
  }
  while (index < tokens.length) {
    var token = tokens[index];
    switch (token.type) {
      case 'text':
        compiled.push(token.value);
        break;
      case 'list':
        compiled.push(values[parseInt(token.value, 10)]);
        break;
      case 'named':
        if (mode === 'named') {
          compiled.push(values[token.value]);
        } else {
          if (true) {
            console.warn("Type of token '".concat(token.type, "' and format of value '").concat(mode, "' don't match!"));
          }
        }
        break;
      case 'unknown':
        if (true) {
          console.warn("Detect 'unknown' type of token!");
        }
        break;
    }
    index++;
  }
  return compiled;
}
var LOCALE_ZH_HANS = 'zh-Hans';
exports.LOCALE_ZH_HANS = LOCALE_ZH_HANS;
var LOCALE_ZH_HANT = 'zh-Hant';
exports.LOCALE_ZH_HANT = LOCALE_ZH_HANT;
var LOCALE_EN = 'en';
exports.LOCALE_EN = LOCALE_EN;
var LOCALE_FR = 'fr';
exports.LOCALE_FR = LOCALE_FR;
var LOCALE_ES = 'es';
exports.LOCALE_ES = LOCALE_ES;
var hasOwnProperty = Object.prototype.hasOwnProperty;
var hasOwn = function hasOwn(val, key) {
  return hasOwnProperty.call(val, key);
};
var defaultFormatter = new BaseFormatter();
function include(str, parts) {
  return !!parts.find(function (part) {
    return str.indexOf(part) !== -1;
  });
}
function startsWith(str, parts) {
  return parts.find(function (part) {
    return str.indexOf(part) === 0;
  });
}
function normalizeLocale(locale, messages) {
  if (!locale) {
    return;
  }
  locale = locale.trim().replace(/_/g, '-');
  if (messages && messages[locale]) {
    return locale;
  }
  locale = locale.toLowerCase();
  if (locale === 'chinese') {
    // 支付宝
    return LOCALE_ZH_HANS;
  }
  if (locale.indexOf('zh') === 0) {
    if (locale.indexOf('-hans') > -1) {
      return LOCALE_ZH_HANS;
    }
    if (locale.indexOf('-hant') > -1) {
      return LOCALE_ZH_HANT;
    }
    if (include(locale, ['-tw', '-hk', '-mo', '-cht'])) {
      return LOCALE_ZH_HANT;
    }
    return LOCALE_ZH_HANS;
  }
  var locales = [LOCALE_EN, LOCALE_FR, LOCALE_ES];
  if (messages && Object.keys(messages).length > 0) {
    locales = Object.keys(messages);
  }
  var lang = startsWith(locale, locales);
  if (lang) {
    return lang;
  }
}
var I18n = /*#__PURE__*/function () {
  function I18n(_ref3) {
    var locale = _ref3.locale,
      fallbackLocale = _ref3.fallbackLocale,
      messages = _ref3.messages,
      watcher = _ref3.watcher,
      formater = _ref3.formater;
    (0, _classCallCheck2.default)(this, I18n);
    this.locale = LOCALE_EN;
    this.fallbackLocale = LOCALE_EN;
    this.message = {};
    this.messages = {};
    this.watchers = [];
    if (fallbackLocale) {
      this.fallbackLocale = fallbackLocale;
    }
    this.formater = formater || defaultFormatter;
    this.messages = messages || {};
    this.setLocale(locale || LOCALE_EN);
    if (watcher) {
      this.watchLocale(watcher);
    }
  }
  (0, _createClass2.default)(I18n, [{
    key: "setLocale",
    value: function setLocale(locale) {
      var _this = this;
      var oldLocale = this.locale;
      this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;
      if (!this.messages[this.locale]) {
        // 可能初始化时不存在
        this.messages[this.locale] = {};
      }
      this.message = this.messages[this.locale];
      // 仅发生变化时，通知
      if (oldLocale !== this.locale) {
        this.watchers.forEach(function (watcher) {
          watcher(_this.locale, oldLocale);
        });
      }
    }
  }, {
    key: "getLocale",
    value: function getLocale() {
      return this.locale;
    }
  }, {
    key: "watchLocale",
    value: function watchLocale(fn) {
      var _this2 = this;
      var index = this.watchers.push(fn) - 1;
      return function () {
        _this2.watchers.splice(index, 1);
      };
    }
  }, {
    key: "add",
    value: function add(locale, message) {
      var override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
      var curMessages = this.messages[locale];
      if (curMessages) {
        if (override) {
          Object.assign(curMessages, message);
        } else {
          Object.keys(message).forEach(function (key) {
            if (!hasOwn(curMessages, key)) {
              curMessages[key] = message[key];
            }
          });
        }
      } else {
        this.messages[locale] = message;
      }
    }
  }, {
    key: "f",
    value: function f(message, values, delimiters) {
      return this.formater.interpolate(message, values, delimiters).join('');
    }
  }, {
    key: "t",
    value: function t(key, locale, values) {
      var message = this.message;
      if (typeof locale === 'string') {
        locale = normalizeLocale(locale, this.messages);
        locale && (message = this.messages[locale]);
      } else {
        values = locale;
      }
      if (!hasOwn(message, key)) {
        console.warn("Cannot translate the value of keypath ".concat(key, ". Use the value of keypath as default."));
        return key;
      }
      return this.formater.interpolate(message[key], values).join('');
    }
  }]);
  return I18n;
}();
exports.I18n = I18n;
function watchAppLocale(appVm, i18n) {
  // 需要保证 watch 的触发在组件渲染之前
  if (appVm.$watchLocale) {
    // vue2
    appVm.$watchLocale(function (newLocale) {
      i18n.setLocale(newLocale);
    });
  } else {
    appVm.$watch(function () {
      return appVm.$locale;
    }, function (newLocale) {
      i18n.setLocale(newLocale);
    });
  }
}
function getDefaultLocale() {
  if (typeof uni !== 'undefined' && uni.getLocale) {
    return uni.getLocale();
  }
  // 小程序平台，uni 和 uni-i18n 互相引用，导致访问不到 uni，故在 global 上挂了 getLocale
  if (typeof global !== 'undefined' && global.getLocale) {
    return global.getLocale();
  }
  return LOCALE_EN;
}
function initVueI18n(locale) {
  var messages = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  var fallbackLocale = arguments.length > 2 ? arguments[2] : undefined;
  var watcher = arguments.length > 3 ? arguments[3] : undefined;
  // 兼容旧版本入参
  if (typeof locale !== 'string') {
    var _ref4 = [messages, locale];
    locale = _ref4[0];
    messages = _ref4[1];
  }
  if (typeof locale !== 'string') {
    // 因为小程序平台，uni-i18n 和 uni 互相引用，导致此时访问 uni 时，为 undefined
    locale = getDefaultLocale();
  }
  if (typeof fallbackLocale !== 'string') {
    fallbackLocale = typeof __uniConfig !== 'undefined' && __uniConfig.fallbackLocale || LOCALE_EN;
  }
  var i18n = new I18n({
    locale: locale,
    fallbackLocale: fallbackLocale,
    messages: messages,
    watcher: watcher
  });
  var _t = function t(key, values) {
    if (typeof getApp !== 'function') {
      // app view
      /* eslint-disable no-func-assign */
      _t = function t(key, values) {
        return i18n.t(key, values);
      };
    } else {
      var isWatchedAppLocale = false;
      _t = function t(key, values) {
        var appVm = getApp().$vm;
        // 可能$vm还不存在，比如在支付宝小程序中，组件定义较早，在props的default里使用了t()函数（如uni-goods-nav），此时app还未初始化
        // options: {
        // 	type: Array,
        // 	default () {
        // 		return [{
        // 			icon: 'shop',
        // 			text: t("uni-goods-nav.options.shop"),
        // 		}, {
        // 			icon: 'cart',
        // 			text: t("uni-goods-nav.options.cart")
        // 		}]
        // 	}
        // },
        if (appVm) {
          // 触发响应式
          appVm.$locale;
          if (!isWatchedAppLocale) {
            isWatchedAppLocale = true;
            watchAppLocale(appVm, i18n);
          }
        }
        return i18n.t(key, values);
      };
    }
    return _t(key, values);
  };
  return {
    i18n: i18n,
    f: function f(message, values, delimiters) {
      return i18n.f(message, values, delimiters);
    },
    t: function t(key, values) {
      return _t(key, values);
    },
    add: function add(locale, message) {
      var override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
      return i18n.add(locale, message, override);
    },
    watch: function watch(fn) {
      return i18n.watchLocale(fn);
    },
    getLocale: function getLocale() {
      return i18n.getLocale();
    },
    setLocale: function setLocale(newLocale) {
      return i18n.setLocale(newLocale);
    }
  };
}
var isString = function isString(val) {
  return typeof val === 'string';
};
exports.isString = isString;
var formater;
function hasI18nJson(jsonObj, delimiters) {
  if (!formater) {
    formater = new BaseFormatter();
  }
  return walkJsonObj(jsonObj, function (jsonObj, key) {
    var value = jsonObj[key];
    if (isString(value)) {
      if (isI18nStr(value, delimiters)) {
        return true;
      }
    } else {
      return hasI18nJson(value, delimiters);
    }
  });
}
function parseI18nJson(jsonObj, values, delimiters) {
  if (!formater) {
    formater = new BaseFormatter();
  }
  walkJsonObj(jsonObj, function (jsonObj, key) {
    var value = jsonObj[key];
    if (isString(value)) {
      if (isI18nStr(value, delimiters)) {
        jsonObj[key] = compileStr(value, values, delimiters);
      }
    } else {
      parseI18nJson(value, values, delimiters);
    }
  });
  return jsonObj;
}
function compileI18nJsonStr(jsonStr, _ref5) {
  var locale = _ref5.locale,
    locales = _ref5.locales,
    delimiters = _ref5.delimiters;
  if (!isI18nStr(jsonStr, delimiters)) {
    return jsonStr;
  }
  if (!formater) {
    formater = new BaseFormatter();
  }
  var localeValues = [];
  Object.keys(locales).forEach(function (name) {
    if (name !== locale) {
      localeValues.push({
        locale: name,
        values: locales[name]
      });
    }
  });
  localeValues.unshift({
    locale: locale,
    values: locales[locale]
  });
  try {
    return JSON.stringify(compileJsonObj(JSON.parse(jsonStr), localeValues, delimiters), null, 2);
  } catch (e) {}
  return jsonStr;
}
function isI18nStr(value, delimiters) {
  return value.indexOf(delimiters[0]) > -1;
}
function compileStr(value, values, delimiters) {
  return formater.interpolate(value, values, delimiters).join('');
}
function compileValue(jsonObj, key, localeValues, delimiters) {
  var value = jsonObj[key];
  if (isString(value)) {
    // 存在国际化
    if (isI18nStr(value, delimiters)) {
      jsonObj[key] = compileStr(value, localeValues[0].values, delimiters);
      if (localeValues.length > 1) {
        // 格式化国际化语言
        var valueLocales = jsonObj[key + 'Locales'] = {};
        localeValues.forEach(function (localValue) {
          valueLocales[localValue.locale] = compileStr(value, localValue.values, delimiters);
        });
      }
    }
  } else {
    compileJsonObj(value, localeValues, delimiters);
  }
}
function compileJsonObj(jsonObj, localeValues, delimiters) {
  walkJsonObj(jsonObj, function (jsonObj, key) {
    compileValue(jsonObj, key, localeValues, delimiters);
  });
  return jsonObj;
}
function walkJsonObj(jsonObj, walk) {
  if (Array.isArray(jsonObj)) {
    for (var i = 0; i < jsonObj.length; i++) {
      if (walk(jsonObj, i)) {
        return true;
      }
    }
  } else if (isObject(jsonObj)) {
    for (var key in jsonObj) {
      if (walk(jsonObj, key)) {
        return true;
      }
    }
  }
  return false;
}
function resolveLocale(locales) {
  return function (locale) {
    if (!locale) {
      return locale;
    }
    locale = normalizeLocale(locale) || locale;
    return resolveLocaleChain(locale).find(function (locale) {
      return locales.indexOf(locale) > -1;
    });
  };
}
function resolveLocaleChain(locale) {
  var chain = [];
  var tokens = locale.split('-');
  while (tokens.length) {
    chain.push(tokens.join('-'));
    tokens.pop();
  }
  return chain;
}
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"], __webpack_require__(/*! ./../../../webpack/buildin/global.js */ 3)))

/***/ }),

/***/ 23:
/*!***************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/classCallCheck.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}
module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 24:
/*!************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/createClass.js ***!
  \************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ 12);
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, toPropertyKey(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;
}
module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 25:
/*!******************************************************************************************!*\
  !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/mp-vue/dist/mp.runtime.esm.js ***!
  \******************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* WEBPACK VAR INJECTION */(function(global) {/*!
 * Vue.js v2.6.11
 * (c) 2014-2023 Evan You
 * Released under the MIT License.
 */
/*  */

var emptyObject = Object.freeze({});

// These helpers produce better VM code in JS engines due to their
// explicitness and function inlining.
function isUndef (v) {
  return v === undefined || v === null
}

function isDef (v) {
  return v !== undefined && v !== null
}

function isTrue (v) {
  return v === true
}

function isFalse (v) {
  return v === false
}

/**
 * Check if value is primitive.
 */
function isPrimitive (value) {
  return (
    typeof value === 'string' ||
    typeof value === 'number' ||
    // $flow-disable-line
    typeof value === 'symbol' ||
    typeof value === 'boolean'
  )
}

/**
 * Quick object check - this is primarily used to tell
 * Objects from primitive values when we know the value
 * is a JSON-compliant type.
 */
function isObject (obj) {
  return obj !== null && typeof obj === 'object'
}

/**
 * Get the raw type string of a value, e.g., [object Object].
 */
var _toString = Object.prototype.toString;

function toRawType (value) {
  return _toString.call(value).slice(8, -1)
}

/**
 * Strict object type check. Only returns true
 * for plain JavaScript objects.
 */
function isPlainObject (obj) {
  return _toString.call(obj) === '[object Object]'
}

function isRegExp (v) {
  return _toString.call(v) === '[object RegExp]'
}

/**
 * Check if val is a valid array index.
 */
function isValidArrayIndex (val) {
  var n = parseFloat(String(val));
  return n >= 0 && Math.floor(n) === n && isFinite(val)
}

function isPromise (val) {
  return (
    isDef(val) &&
    typeof val.then === 'function' &&
    typeof val.catch === 'function'
  )
}

/**
 * Convert a value to a string that is actually rendered.
 */
function toString (val) {
  return val == null
    ? ''
    : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)
      ? JSON.stringify(val, null, 2)
      : String(val)
}

/**
 * Convert an input value to a number for persistence.
 * If the conversion fails, return original string.
 */
function toNumber (val) {
  var n = parseFloat(val);
  return isNaN(n) ? val : n
}

/**
 * Make a map and return a function for checking if a key
 * is in that map.
 */
function makeMap (
  str,
  expectsLowerCase
) {
  var map = Object.create(null);
  var list = str.split(',');
  for (var i = 0; i < list.length; i++) {
    map[list[i]] = true;
  }
  return expectsLowerCase
    ? function (val) { return map[val.toLowerCase()]; }
    : function (val) { return map[val]; }
}

/**
 * Check if a tag is a built-in tag.
 */
var isBuiltInTag = makeMap('slot,component', true);

/**
 * Check if an attribute is a reserved attribute.
 */
var isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');

/**
 * Remove an item from an array.
 */
function remove (arr, item) {
  if (arr.length) {
    var index = arr.indexOf(item);
    if (index > -1) {
      return arr.splice(index, 1)
    }
  }
}

/**
 * Check whether an object has the property.
 */
var hasOwnProperty = Object.prototype.hasOwnProperty;
function hasOwn (obj, key) {
  return hasOwnProperty.call(obj, key)
}

/**
 * Create a cached version of a pure function.
 */
function cached (fn) {
  var cache = Object.create(null);
  return (function cachedFn (str) {
    var hit = cache[str];
    return hit || (cache[str] = fn(str))
  })
}

/**
 * Camelize a hyphen-delimited string.
 */
var camelizeRE = /-(\w)/g;
var camelize = cached(function (str) {
  return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })
});

/**
 * Capitalize a string.
 */
var capitalize = cached(function (str) {
  return str.charAt(0).toUpperCase() + str.slice(1)
});

/**
 * Hyphenate a camelCase string.
 */
var hyphenateRE = /\B([A-Z])/g;
var hyphenate = cached(function (str) {
  return str.replace(hyphenateRE, '-$1').toLowerCase()
});

/**
 * Simple bind polyfill for environments that do not support it,
 * e.g., PhantomJS 1.x. Technically, we don't need this anymore
 * since native bind is now performant enough in most browsers.
 * But removing it would mean breaking code that was able to run in
 * PhantomJS 1.x, so this must be kept for backward compatibility.
 */

/* istanbul ignore next */
function polyfillBind (fn, ctx) {
  function boundFn (a) {
    var l = arguments.length;
    return l
      ? l > 1
        ? fn.apply(ctx, arguments)
        : fn.call(ctx, a)
      : fn.call(ctx)
  }

  boundFn._length = fn.length;
  return boundFn
}

function nativeBind (fn, ctx) {
  return fn.bind(ctx)
}

var bind = Function.prototype.bind
  ? nativeBind
  : polyfillBind;

/**
 * Convert an Array-like object to a real Array.
 */
function toArray (list, start) {
  start = start || 0;
  var i = list.length - start;
  var ret = new Array(i);
  while (i--) {
    ret[i] = list[i + start];
  }
  return ret
}

/**
 * Mix properties into target object.
 */
function extend (to, _from) {
  for (var key in _from) {
    to[key] = _from[key];
  }
  return to
}

/**
 * Merge an Array of Objects into a single Object.
 */
function toObject (arr) {
  var res = {};
  for (var i = 0; i < arr.length; i++) {
    if (arr[i]) {
      extend(res, arr[i]);
    }
  }
  return res
}

/* eslint-disable no-unused-vars */

/**
 * Perform no operation.
 * Stubbing args to make Flow happy without leaving useless transpiled code
 * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).
 */
function noop (a, b, c) {}

/**
 * Always return false.
 */
var no = function (a, b, c) { return false; };

/* eslint-enable no-unused-vars */

/**
 * Return the same value.
 */
var identity = function (_) { return _; };

/**
 * Check if two values are loosely equal - that is,
 * if they are plain objects, do they have the same shape?
 */
function looseEqual (a, b) {
  if (a === b) { return true }
  var isObjectA = isObject(a);
  var isObjectB = isObject(b);
  if (isObjectA && isObjectB) {
    try {
      var isArrayA = Array.isArray(a);
      var isArrayB = Array.isArray(b);
      if (isArrayA && isArrayB) {
        return a.length === b.length && a.every(function (e, i) {
          return looseEqual(e, b[i])
        })
      } else if (a instanceof Date && b instanceof Date) {
        return a.getTime() === b.getTime()
      } else if (!isArrayA && !isArrayB) {
        var keysA = Object.keys(a);
        var keysB = Object.keys(b);
        return keysA.length === keysB.length && keysA.every(function (key) {
          return looseEqual(a[key], b[key])
        })
      } else {
        /* istanbul ignore next */
        return false
      }
    } catch (e) {
      /* istanbul ignore next */
      return false
    }
  } else if (!isObjectA && !isObjectB) {
    return String(a) === String(b)
  } else {
    return false
  }
}

/**
 * Return the first index at which a loosely equal value can be
 * found in the array (if value is a plain object, the array must
 * contain an object of the same shape), or -1 if it is not present.
 */
function looseIndexOf (arr, val) {
  for (var i = 0; i < arr.length; i++) {
    if (looseEqual(arr[i], val)) { return i }
  }
  return -1
}

/**
 * Ensure a function is called only once.
 */
function once (fn) {
  var called = false;
  return function () {
    if (!called) {
      called = true;
      fn.apply(this, arguments);
    }
  }
}

var ASSET_TYPES = [
  'component',
  'directive',
  'filter'
];

var LIFECYCLE_HOOKS = [
  'beforeCreate',
  'created',
  'beforeMount',
  'mounted',
  'beforeUpdate',
  'updated',
  'beforeDestroy',
  'destroyed',
  'activated',
  'deactivated',
  'errorCaptured',
  'serverPrefetch'
];

/*  */



var config = ({
  /**
   * Option merge strategies (used in core/util/options)
   */
  // $flow-disable-line
  optionMergeStrategies: Object.create(null),

  /**
   * Whether to suppress warnings.
   */
  silent: false,

  /**
   * Show production mode tip message on boot?
   */
  productionTip: "development" !== 'production',

  /**
   * Whether to enable devtools
   */
  devtools: "development" !== 'production',

  /**
   * Whether to record perf
   */
  performance: false,

  /**
   * Error handler for watcher errors
   */
  errorHandler: null,

  /**
   * Warn handler for watcher warns
   */
  warnHandler: null,

  /**
   * Ignore certain custom elements
   */
  ignoredElements: [],

  /**
   * Custom user key aliases for v-on
   */
  // $flow-disable-line
  keyCodes: Object.create(null),

  /**
   * Check if a tag is reserved so that it cannot be registered as a
   * component. This is platform-dependent and may be overwritten.
   */
  isReservedTag: no,

  /**
   * Check if an attribute is reserved so that it cannot be used as a component
   * prop. This is platform-dependent and may be overwritten.
   */
  isReservedAttr: no,

  /**
   * Check if a tag is an unknown element.
   * Platform-dependent.
   */
  isUnknownElement: no,

  /**
   * Get the namespace of an element
   */
  getTagNamespace: noop,

  /**
   * Parse the real tag name for the specific platform.
   */
  parsePlatformTagName: identity,

  /**
   * Check if an attribute must be bound using property, e.g. value
   * Platform-dependent.
   */
  mustUseProp: no,

  /**
   * Perform updates asynchronously. Intended to be used by Vue Test Utils
   * This will significantly reduce performance if set to false.
   */
  async: true,

  /**
   * Exposed for legacy reasons
   */
  _lifecycleHooks: LIFECYCLE_HOOKS
});

/*  */

/**
 * unicode letters used for parsing html tags, component names and property paths.
 * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname
 * skipping \u10000-\uEFFFF due to it freezing up PhantomJS
 */
var unicodeRegExp = /a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;

/**
 * Check if a string starts with $ or _
 */
function isReserved (str) {
  var c = (str + '').charCodeAt(0);
  return c === 0x24 || c === 0x5F
}

/**
 * Define a property.
 */
function def (obj, key, val, enumerable) {
  Object.defineProperty(obj, key, {
    value: val,
    enumerable: !!enumerable,
    writable: true,
    configurable: true
  });
}

/**
 * Parse simple path.
 */
var bailRE = new RegExp(("[^" + (unicodeRegExp.source) + ".$_\\d]"));
function parsePath (path) {
  if (bailRE.test(path)) {
    return
  }
  var segments = path.split('.');
  return function (obj) {
    for (var i = 0; i < segments.length; i++) {
      if (!obj) { return }
      obj = obj[segments[i]];
    }
    return obj
  }
}

/*  */

// can we use __proto__?
var hasProto = '__proto__' in {};

// Browser environment sniffing
var inBrowser = typeof window !== 'undefined';
var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;
var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();
var UA = inBrowser && window.navigator.userAgent.toLowerCase();
var isIE = UA && /msie|trident/.test(UA);
var isIE9 = UA && UA.indexOf('msie 9.0') > 0;
var isEdge = UA && UA.indexOf('edge/') > 0;
var isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');
var isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');
var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;
var isPhantomJS = UA && /phantomjs/.test(UA);
var isFF = UA && UA.match(/firefox\/(\d+)/);

// Firefox has a "watch" function on Object.prototype...
var nativeWatch = ({}).watch;
if (inBrowser) {
  try {
    var opts = {};
    Object.defineProperty(opts, 'passive', ({
      get: function get () {
      }
    })); // https://github.com/facebook/flow/issues/285
    window.addEventListener('test-passive', null, opts);
  } catch (e) {}
}

// this needs to be lazy-evaled because vue may be required before
// vue-server-renderer can set VUE_ENV
var _isServer;
var isServerRendering = function () {
  if (_isServer === undefined) {
    /* istanbul ignore if */
    if (!inBrowser && !inWeex && typeof global !== 'undefined') {
      // detect presence of vue-server-renderer and avoid
      // Webpack shimming the process
      _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';
    } else {
      _isServer = false;
    }
  }
  return _isServer
};

// detect devtools
var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;

/* istanbul ignore next */
function isNative (Ctor) {
  return typeof Ctor === 'function' && /native code/.test(Ctor.toString())
}

var hasSymbol =
  typeof Symbol !== 'undefined' && isNative(Symbol) &&
  typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);

var _Set;
/* istanbul ignore if */ // $flow-disable-line
if (typeof Set !== 'undefined' && isNative(Set)) {
  // use native Set when available.
  _Set = Set;
} else {
  // a non-standard Set polyfill that only works with primitive keys.
  _Set = /*@__PURE__*/(function () {
    function Set () {
      this.set = Object.create(null);
    }
    Set.prototype.has = function has (key) {
      return this.set[key] === true
    };
    Set.prototype.add = function add (key) {
      this.set[key] = true;
    };
    Set.prototype.clear = function clear () {
      this.set = Object.create(null);
    };

    return Set;
  }());
}

/*  */

var warn = noop;
var tip = noop;
var generateComponentTrace = (noop); // work around flow check
var formatComponentName = (noop);

if (true) {
  var hasConsole = typeof console !== 'undefined';
  var classifyRE = /(?:^|[-_])(\w)/g;
  var classify = function (str) { return str
    .replace(classifyRE, function (c) { return c.toUpperCase(); })
    .replace(/[-_]/g, ''); };

  warn = function (msg, vm) {
    var trace = vm ? generateComponentTrace(vm) : '';

    if (config.warnHandler) {
      config.warnHandler.call(null, msg, vm, trace);
    } else if (hasConsole && (!config.silent)) {
      console.error(("[Vue warn]: " + msg + trace));
    }
  };

  tip = function (msg, vm) {
    if (hasConsole && (!config.silent)) {
      console.warn("[Vue tip]: " + msg + (
        vm ? generateComponentTrace(vm) : ''
      ));
    }
  };

  formatComponentName = function (vm, includeFile) {
    if (vm.$root === vm) {
      if (vm.$options && vm.$options.__file) { // fixed by xxxxxx
        return ('') + vm.$options.__file
      }
      return '<Root>'
    }
    var options = typeof vm === 'function' && vm.cid != null
      ? vm.options
      : vm._isVue
        ? vm.$options || vm.constructor.options
        : vm;
    var name = options.name || options._componentTag;
    var file = options.__file;
    if (!name && file) {
      var match = file.match(/([^/\\]+)\.vue$/);
      name = match && match[1];
    }

    return (
      (name ? ("<" + (classify(name)) + ">") : "<Anonymous>") +
      (file && includeFile !== false ? (" at " + file) : '')
    )
  };

  var repeat = function (str, n) {
    var res = '';
    while (n) {
      if (n % 2 === 1) { res += str; }
      if (n > 1) { str += str; }
      n >>= 1;
    }
    return res
  };

  generateComponentTrace = function (vm) {
    if (vm._isVue && vm.$parent) {
      var tree = [];
      var currentRecursiveSequence = 0;
      while (vm && vm.$options.name !== 'PageBody') {
        if (tree.length > 0) {
          var last = tree[tree.length - 1];
          if (last.constructor === vm.constructor) {
            currentRecursiveSequence++;
            vm = vm.$parent;
            continue
          } else if (currentRecursiveSequence > 0) {
            tree[tree.length - 1] = [last, currentRecursiveSequence];
            currentRecursiveSequence = 0;
          }
        }
        !vm.$options.isReserved && tree.push(vm);
        vm = vm.$parent;
      }
      return '\n\nfound in\n\n' + tree
        .map(function (vm, i) { return ("" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)
            ? ((formatComponentName(vm[0])) + "... (" + (vm[1]) + " recursive calls)")
            : formatComponentName(vm))); })
        .join('\n')
    } else {
      return ("\n\n(found in " + (formatComponentName(vm)) + ")")
    }
  };
}

/*  */

var uid = 0;

/**
 * A dep is an observable that can have multiple
 * directives subscribing to it.
 */
var Dep = function Dep () {
  this.id = uid++;
  this.subs = [];
};

Dep.prototype.addSub = function addSub (sub) {
  this.subs.push(sub);
};

Dep.prototype.removeSub = function removeSub (sub) {
  remove(this.subs, sub);
};

Dep.prototype.depend = function depend () {
  if (Dep.SharedObject.target) {
    Dep.SharedObject.target.addDep(this);
  }
};

Dep.prototype.notify = function notify () {
  // stabilize the subscriber list first
  var subs = this.subs.slice();
  if ( true && !config.async) {
    // subs aren't sorted in scheduler if not running async
    // we need to sort them now to make sure they fire in correct
    // order
    subs.sort(function (a, b) { return a.id - b.id; });
  }
  for (var i = 0, l = subs.length; i < l; i++) {
    subs[i].update();
  }
};

// The current target watcher being evaluated.
// This is globally unique because only one watcher
// can be evaluated at a time.
// fixed by xxxxxx (nvue shared vuex)
/* eslint-disable no-undef */
Dep.SharedObject = {};
Dep.SharedObject.target = null;
Dep.SharedObject.targetStack = [];

function pushTarget (target) {
  Dep.SharedObject.targetStack.push(target);
  Dep.SharedObject.target = target;
  Dep.target = target;
}

function popTarget () {
  Dep.SharedObject.targetStack.pop();
  Dep.SharedObject.target = Dep.SharedObject.targetStack[Dep.SharedObject.targetStack.length - 1];
  Dep.target = Dep.SharedObject.target;
}

/*  */

var VNode = function VNode (
  tag,
  data,
  children,
  text,
  elm,
  context,
  componentOptions,
  asyncFactory
) {
  this.tag = tag;
  this.data = data;
  this.children = children;
  this.text = text;
  this.elm = elm;
  this.ns = undefined;
  this.context = context;
  this.fnContext = undefined;
  this.fnOptions = undefined;
  this.fnScopeId = undefined;
  this.key = data && data.key;
  this.componentOptions = componentOptions;
  this.componentInstance = undefined;
  this.parent = undefined;
  this.raw = false;
  this.isStatic = false;
  this.isRootInsert = true;
  this.isComment = false;
  this.isCloned = false;
  this.isOnce = false;
  this.asyncFactory = asyncFactory;
  this.asyncMeta = undefined;
  this.isAsyncPlaceholder = false;
};

var prototypeAccessors = { child: { configurable: true } };

// DEPRECATED: alias for componentInstance for backwards compat.
/* istanbul ignore next */
prototypeAccessors.child.get = function () {
  return this.componentInstance
};

Object.defineProperties( VNode.prototype, prototypeAccessors );

var createEmptyVNode = function (text) {
  if ( text === void 0 ) text = '';

  var node = new VNode();
  node.text = text;
  node.isComment = true;
  return node
};

function createTextVNode (val) {
  return new VNode(undefined, undefined, undefined, String(val))
}

// optimized shallow clone
// used for static nodes and slot nodes because they may be reused across
// multiple renders, cloning them avoids errors when DOM manipulations rely
// on their elm reference.
function cloneVNode (vnode) {
  var cloned = new VNode(
    vnode.tag,
    vnode.data,
    // #7975
    // clone children array to avoid mutating original in case of cloning
    // a child.
    vnode.children && vnode.children.slice(),
    vnode.text,
    vnode.elm,
    vnode.context,
    vnode.componentOptions,
    vnode.asyncFactory
  );
  cloned.ns = vnode.ns;
  cloned.isStatic = vnode.isStatic;
  cloned.key = vnode.key;
  cloned.isComment = vnode.isComment;
  cloned.fnContext = vnode.fnContext;
  cloned.fnOptions = vnode.fnOptions;
  cloned.fnScopeId = vnode.fnScopeId;
  cloned.asyncMeta = vnode.asyncMeta;
  cloned.isCloned = true;
  return cloned
}

/*
 * not type checking this file because flow doesn't play well with
 * dynamically accessing methods on Array prototype
 */

var arrayProto = Array.prototype;
var arrayMethods = Object.create(arrayProto);

var methodsToPatch = [
  'push',
  'pop',
  'shift',
  'unshift',
  'splice',
  'sort',
  'reverse'
];

/**
 * Intercept mutating methods and emit events
 */
methodsToPatch.forEach(function (method) {
  // cache original method
  var original = arrayProto[method];
  def(arrayMethods, method, function mutator () {
    var args = [], len = arguments.length;
    while ( len-- ) args[ len ] = arguments[ len ];

    var result = original.apply(this, args);
    var ob = this.__ob__;
    var inserted;
    switch (method) {
      case 'push':
      case 'unshift':
        inserted = args;
        break
      case 'splice':
        inserted = args.slice(2);
        break
    }
    if (inserted) { ob.observeArray(inserted); }
    // notify change
    ob.dep.notify();
    return result
  });
});

/*  */

var arrayKeys = Object.getOwnPropertyNames(arrayMethods);

/**
 * In some cases we may want to disable observation inside a component's
 * update computation.
 */
var shouldObserve = true;

function toggleObserving (value) {
  shouldObserve = value;
}

/**
 * Observer class that is attached to each observed
 * object. Once attached, the observer converts the target
 * object's property keys into getter/setters that
 * collect dependencies and dispatch updates.
 */
var Observer = function Observer (value) {
  this.value = value;
  this.dep = new Dep();
  this.vmCount = 0;
  def(value, '__ob__', this);
  if (Array.isArray(value)) {
    if (hasProto) {
      {// fixed by xxxxxx 微信小程序使用 plugins 之后，数组方法被直接挂载到了数组对象上，需要执行 copyAugment 逻辑
        if(value.push !== value.__proto__.push){
          copyAugment(value, arrayMethods, arrayKeys);
        } else {
          protoAugment(value, arrayMethods);
        }
      }
    } else {
      copyAugment(value, arrayMethods, arrayKeys);
    }
    this.observeArray(value);
  } else {
    this.walk(value);
  }
};

/**
 * Walk through all properties and convert them into
 * getter/setters. This method should only be called when
 * value type is Object.
 */
Observer.prototype.walk = function walk (obj) {
  var keys = Object.keys(obj);
  for (var i = 0; i < keys.length; i++) {
    defineReactive$$1(obj, keys[i]);
  }
};

/**
 * Observe a list of Array items.
 */
Observer.prototype.observeArray = function observeArray (items) {
  for (var i = 0, l = items.length; i < l; i++) {
    observe(items[i]);
  }
};

// helpers

/**
 * Augment a target Object or Array by intercepting
 * the prototype chain using __proto__
 */
function protoAugment (target, src) {
  /* eslint-disable no-proto */
  target.__proto__ = src;
  /* eslint-enable no-proto */
}

/**
 * Augment a target Object or Array by defining
 * hidden properties.
 */
/* istanbul ignore next */
function copyAugment (target, src, keys) {
  for (var i = 0, l = keys.length; i < l; i++) {
    var key = keys[i];
    def(target, key, src[key]);
  }
}

/**
 * Attempt to create an observer instance for a value,
 * returns the new observer if successfully observed,
 * or the existing observer if the value already has one.
 */
function observe (value, asRootData) {
  if (!isObject(value) || value instanceof VNode) {
    return
  }
  var ob;
  if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {
    ob = value.__ob__;
  } else if (
    shouldObserve &&
    !isServerRendering() &&
    (Array.isArray(value) || isPlainObject(value)) &&
    Object.isExtensible(value) &&
    !value._isVue &&
    !value.__v_isMPComponent
  ) {
    ob = new Observer(value);
  }
  if (asRootData && ob) {
    ob.vmCount++;
  }
  return ob
}

/**
 * Define a reactive property on an Object.
 */
function defineReactive$$1 (
  obj,
  key,
  val,
  customSetter,
  shallow
) {
  var dep = new Dep();

  var property = Object.getOwnPropertyDescriptor(obj, key);
  if (property && property.configurable === false) {
    return
  }

  // cater for pre-defined getter/setters
  var getter = property && property.get;
  var setter = property && property.set;
  if ((!getter || setter) && arguments.length === 2) {
    val = obj[key];
  }

  var childOb = !shallow && observe(val);
  Object.defineProperty(obj, key, {
    enumerable: true,
    configurable: true,
    get: function reactiveGetter () {
      var value = getter ? getter.call(obj) : val;
      if (Dep.SharedObject.target) { // fixed by xxxxxx
        dep.depend();
        if (childOb) {
          childOb.dep.depend();
          if (Array.isArray(value)) {
            dependArray(value);
          }
        }
      }
      return value
    },
    set: function reactiveSetter (newVal) {
      var value = getter ? getter.call(obj) : val;
      /* eslint-disable no-self-compare */
      if (newVal === value || (newVal !== newVal && value !== value)) {
        return
      }
      /* eslint-enable no-self-compare */
      if ( true && customSetter) {
        customSetter();
      }
      // #7981: for accessor properties without setter
      if (getter && !setter) { return }
      if (setter) {
        setter.call(obj, newVal);
      } else {
        val = newVal;
      }
      childOb = !shallow && observe(newVal);
      dep.notify();
    }
  });
}

/**
 * Set a property on an object. Adds the new property and
 * triggers change notification if the property doesn't
 * already exist.
 */
function set (target, key, val) {
  if ( true &&
    (isUndef(target) || isPrimitive(target))
  ) {
    warn(("Cannot set reactive property on undefined, null, or primitive value: " + ((target))));
  }
  if (Array.isArray(target) && isValidArrayIndex(key)) {
    target.length = Math.max(target.length, key);
    target.splice(key, 1, val);
    return val
  }
  if (key in target && !(key in Object.prototype)) {
    target[key] = val;
    return val
  }
  var ob = (target).__ob__;
  if (target._isVue || (ob && ob.vmCount)) {
     true && warn(
      'Avoid adding reactive properties to a Vue instance or its root $data ' +
      'at runtime - declare it upfront in the data option.'
    );
    return val
  }
  if (!ob) {
    target[key] = val;
    return val
  }
  defineReactive$$1(ob.value, key, val);
  ob.dep.notify();
  return val
}

/**
 * Delete a property and trigger change if necessary.
 */
function del (target, key) {
  if ( true &&
    (isUndef(target) || isPrimitive(target))
  ) {
    warn(("Cannot delete reactive property on undefined, null, or primitive value: " + ((target))));
  }
  if (Array.isArray(target) && isValidArrayIndex(key)) {
    target.splice(key, 1);
    return
  }
  var ob = (target).__ob__;
  if (target._isVue || (ob && ob.vmCount)) {
     true && warn(
      'Avoid deleting properties on a Vue instance or its root $data ' +
      '- just set it to null.'
    );
    return
  }
  if (!hasOwn(target, key)) {
    return
  }
  delete target[key];
  if (!ob) {
    return
  }
  ob.dep.notify();
}

/**
 * Collect dependencies on array elements when the array is touched, since
 * we cannot intercept array element access like property getters.
 */
function dependArray (value) {
  for (var e = (void 0), i = 0, l = value.length; i < l; i++) {
    e = value[i];
    e && e.__ob__ && e.__ob__.dep.depend();
    if (Array.isArray(e)) {
      dependArray(e);
    }
  }
}

/*  */

/**
 * Option overwriting strategies are functions that handle
 * how to merge a parent option value and a child option
 * value into the final value.
 */
var strats = config.optionMergeStrategies;

/**
 * Options with restrictions
 */
if (true) {
  strats.el = strats.propsData = function (parent, child, vm, key) {
    if (!vm) {
      warn(
        "option \"" + key + "\" can only be used during instance " +
        'creation with the `new` keyword.'
      );
    }
    return defaultStrat(parent, child)
  };
}

/**
 * Helper that recursively merges two data objects together.
 */
function mergeData (to, from) {
  if (!from) { return to }
  var key, toVal, fromVal;

  var keys = hasSymbol
    ? Reflect.ownKeys(from)
    : Object.keys(from);

  for (var i = 0; i < keys.length; i++) {
    key = keys[i];
    // in case the object is already observed...
    if (key === '__ob__') { continue }
    toVal = to[key];
    fromVal = from[key];
    if (!hasOwn(to, key)) {
      set(to, key, fromVal);
    } else if (
      toVal !== fromVal &&
      isPlainObject(toVal) &&
      isPlainObject(fromVal)
    ) {
      mergeData(toVal, fromVal);
    }
  }
  return to
}

/**
 * Data
 */
function mergeDataOrFn (
  parentVal,
  childVal,
  vm
) {
  if (!vm) {
    // in a Vue.extend merge, both should be functions
    if (!childVal) {
      return parentVal
    }
    if (!parentVal) {
      return childVal
    }
    // when parentVal & childVal are both present,
    // we need to return a function that returns the
    // merged result of both functions... no need to
    // check if parentVal is a function here because
    // it has to be a function to pass previous merges.
    return function mergedDataFn () {
      return mergeData(
        typeof childVal === 'function' ? childVal.call(this, this) : childVal,
        typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal
      )
    }
  } else {
    return function mergedInstanceDataFn () {
      // instance merge
      var instanceData = typeof childVal === 'function'
        ? childVal.call(vm, vm)
        : childVal;
      var defaultData = typeof parentVal === 'function'
        ? parentVal.call(vm, vm)
        : parentVal;
      if (instanceData) {
        return mergeData(instanceData, defaultData)
      } else {
        return defaultData
      }
    }
  }
}

strats.data = function (
  parentVal,
  childVal,
  vm
) {
  if (!vm) {
    if (childVal && typeof childVal !== 'function') {
       true && warn(
        'The "data" option should be a function ' +
        'that returns a per-instance value in component ' +
        'definitions.',
        vm
      );

      return parentVal
    }
    return mergeDataOrFn(parentVal, childVal)
  }

  return mergeDataOrFn(parentVal, childVal, vm)
};

/**
 * Hooks and props are merged as arrays.
 */
function mergeHook (
  parentVal,
  childVal
) {
  var res = childVal
    ? parentVal
      ? parentVal.concat(childVal)
      : Array.isArray(childVal)
        ? childVal
        : [childVal]
    : parentVal;
  return res
    ? dedupeHooks(res)
    : res
}

function dedupeHooks (hooks) {
  var res = [];
  for (var i = 0; i < hooks.length; i++) {
    if (res.indexOf(hooks[i]) === -1) {
      res.push(hooks[i]);
    }
  }
  return res
}

LIFECYCLE_HOOKS.forEach(function (hook) {
  strats[hook] = mergeHook;
});

/**
 * Assets
 *
 * When a vm is present (instance creation), we need to do
 * a three-way merge between constructor options, instance
 * options and parent options.
 */
function mergeAssets (
  parentVal,
  childVal,
  vm,
  key
) {
  var res = Object.create(parentVal || null);
  if (childVal) {
     true && assertObjectType(key, childVal, vm);
    return extend(res, childVal)
  } else {
    return res
  }
}

ASSET_TYPES.forEach(function (type) {
  strats[type + 's'] = mergeAssets;
});

/**
 * Watchers.
 *
 * Watchers hashes should not overwrite one
 * another, so we merge them as arrays.
 */
strats.watch = function (
  parentVal,
  childVal,
  vm,
  key
) {
  // work around Firefox's Object.prototype.watch...
  if (parentVal === nativeWatch) { parentVal = undefined; }
  if (childVal === nativeWatch) { childVal = undefined; }
  /* istanbul ignore if */
  if (!childVal) { return Object.create(parentVal || null) }
  if (true) {
    assertObjectType(key, childVal, vm);
  }
  if (!parentVal) { return childVal }
  var ret = {};
  extend(ret, parentVal);
  for (var key$1 in childVal) {
    var parent = ret[key$1];
    var child = childVal[key$1];
    if (parent && !Array.isArray(parent)) {
      parent = [parent];
    }
    ret[key$1] = parent
      ? parent.concat(child)
      : Array.isArray(child) ? child : [child];
  }
  return ret
};

/**
 * Other object hashes.
 */
strats.props =
strats.methods =
strats.inject =
strats.computed = function (
  parentVal,
  childVal,
  vm,
  key
) {
  if (childVal && "development" !== 'production') {
    assertObjectType(key, childVal, vm);
  }
  if (!parentVal) { return childVal }
  var ret = Object.create(null);
  extend(ret, parentVal);
  if (childVal) { extend(ret, childVal); }
  return ret
};
strats.provide = mergeDataOrFn;

/**
 * Default strategy.
 */
var defaultStrat = function (parentVal, childVal) {
  return childVal === undefined
    ? parentVal
    : childVal
};

/**
 * Validate component names
 */
function checkComponents (options) {
  for (var key in options.components) {
    validateComponentName(key);
  }
}

function validateComponentName (name) {
  if (!new RegExp(("^[a-zA-Z][\\-\\.0-9_" + (unicodeRegExp.source) + "]*$")).test(name)) {
    warn(
      'Invalid component name: "' + name + '". Component names ' +
      'should conform to valid custom element name in html5 specification.'
    );
  }
  if (isBuiltInTag(name) || config.isReservedTag(name)) {
    warn(
      'Do not use built-in or reserved HTML elements as component ' +
      'id: ' + name
    );
  }
}

/**
 * Ensure all props option syntax are normalized into the
 * Object-based format.
 */
function normalizeProps (options, vm) {
  var props = options.props;
  if (!props) { return }
  var res = {};
  var i, val, name;
  if (Array.isArray(props)) {
    i = props.length;
    while (i--) {
      val = props[i];
      if (typeof val === 'string') {
        name = camelize(val);
        res[name] = { type: null };
      } else if (true) {
        warn('props must be strings when using array syntax.');
      }
    }
  } else if (isPlainObject(props)) {
    for (var key in props) {
      val = props[key];
      name = camelize(key);
      res[name] = isPlainObject(val)
        ? val
        : { type: val };
    }
  } else if (true) {
    warn(
      "Invalid value for option \"props\": expected an Array or an Object, " +
      "but got " + (toRawType(props)) + ".",
      vm
    );
  }
  options.props = res;
}

/**
 * Normalize all injections into Object-based format
 */
function normalizeInject (options, vm) {
  var inject = options.inject;
  if (!inject) { return }
  var normalized = options.inject = {};
  if (Array.isArray(inject)) {
    for (var i = 0; i < inject.length; i++) {
      normalized[inject[i]] = { from: inject[i] };
    }
  } else if (isPlainObject(inject)) {
    for (var key in inject) {
      var val = inject[key];
      normalized[key] = isPlainObject(val)
        ? extend({ from: key }, val)
        : { from: val };
    }
  } else if (true) {
    warn(
      "Invalid value for option \"inject\": expected an Array or an Object, " +
      "but got " + (toRawType(inject)) + ".",
      vm
    );
  }
}

/**
 * Normalize raw function directives into object format.
 */
function normalizeDirectives (options) {
  var dirs = options.directives;
  if (dirs) {
    for (var key in dirs) {
      var def$$1 = dirs[key];
      if (typeof def$$1 === 'function') {
        dirs[key] = { bind: def$$1, update: def$$1 };
      }
    }
  }
}

function assertObjectType (name, value, vm) {
  if (!isPlainObject(value)) {
    warn(
      "Invalid value for option \"" + name + "\": expected an Object, " +
      "but got " + (toRawType(value)) + ".",
      vm
    );
  }
}

/**
 * Merge two option objects into a new one.
 * Core utility used in both instantiation and inheritance.
 */
function mergeOptions (
  parent,
  child,
  vm
) {
  if (true) {
    checkComponents(child);
  }

  if (typeof child === 'function') {
    child = child.options;
  }

  normalizeProps(child, vm);
  normalizeInject(child, vm);
  normalizeDirectives(child);

  // Apply extends and mixins on the child options,
  // but only if it is a raw options object that isn't
  // the result of another mergeOptions call.
  // Only merged options has the _base property.
  if (!child._base) {
    if (child.extends) {
      parent = mergeOptions(parent, child.extends, vm);
    }
    if (child.mixins) {
      for (var i = 0, l = child.mixins.length; i < l; i++) {
        parent = mergeOptions(parent, child.mixins[i], vm);
      }
    }
  }

  var options = {};
  var key;
  for (key in parent) {
    mergeField(key);
  }
  for (key in child) {
    if (!hasOwn(parent, key)) {
      mergeField(key);
    }
  }
  function mergeField (key) {
    var strat = strats[key] || defaultStrat;
    options[key] = strat(parent[key], child[key], vm, key);
  }
  return options
}

/**
 * Resolve an asset.
 * This function is used because child instances need access
 * to assets defined in its ancestor chain.
 */
function resolveAsset (
  options,
  type,
  id,
  warnMissing
) {
  /* istanbul ignore if */
  if (typeof id !== 'string') {
    return
  }
  var assets = options[type];
  // check local registration variations first
  if (hasOwn(assets, id)) { return assets[id] }
  var camelizedId = camelize(id);
  if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }
  var PascalCaseId = capitalize(camelizedId);
  if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }
  // fallback to prototype chain
  var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];
  if ( true && warnMissing && !res) {
    warn(
      'Failed to resolve ' + type.slice(0, -1) + ': ' + id,
      options
    );
  }
  return res
}

/*  */



function validateProp (
  key,
  propOptions,
  propsData,
  vm
) {
  var prop = propOptions[key];
  var absent = !hasOwn(propsData, key);
  var value = propsData[key];
  // boolean casting
  var booleanIndex = getTypeIndex(Boolean, prop.type);
  if (booleanIndex > -1) {
    if (absent && !hasOwn(prop, 'default')) {
      value = false;
    } else if (value === '' || value === hyphenate(key)) {
      // only cast empty string / same name to boolean if
      // boolean has higher priority
      var stringIndex = getTypeIndex(String, prop.type);
      if (stringIndex < 0 || booleanIndex < stringIndex) {
        value = true;
      }
    }
  }
  // check default value
  if (value === undefined) {
    value = getPropDefaultValue(vm, prop, key);
    // since the default value is a fresh copy,
    // make sure to observe it.
    var prevShouldObserve = shouldObserve;
    toggleObserving(true);
    observe(value);
    toggleObserving(prevShouldObserve);
  }
  if (
    true
  ) {
    assertProp(prop, key, value, vm, absent);
  }
  return value
}

/**
 * Get the default value of a prop.
 */
function getPropDefaultValue (vm, prop, key) {
  // no default, return undefined
  if (!hasOwn(prop, 'default')) {
    return undefined
  }
  var def = prop.default;
  // warn against non-factory defaults for Object & Array
  if ( true && isObject(def)) {
    warn(
      'Invalid default value for prop "' + key + '": ' +
      'Props with type Object/Array must use a factory function ' +
      'to return the default value.',
      vm
    );
  }
  // the raw prop value was also undefined from previous render,
  // return previous default value to avoid unnecessary watcher trigger
  if (vm && vm.$options.propsData &&
    vm.$options.propsData[key] === undefined &&
    vm._props[key] !== undefined
  ) {
    return vm._props[key]
  }
  // call factory function for non-Function types
  // a value is Function if its prototype is function even across different execution context
  return typeof def === 'function' && getType(prop.type) !== 'Function'
    ? def.call(vm)
    : def
}

/**
 * Assert whether a prop is valid.
 */
function assertProp (
  prop,
  name,
  value,
  vm,
  absent
) {
  if (prop.required && absent) {
    warn(
      'Missing required prop: "' + name + '"',
      vm
    );
    return
  }
  if (value == null && !prop.required) {
    return
  }
  var type = prop.type;
  var valid = !type || type === true;
  var expectedTypes = [];
  if (type) {
    if (!Array.isArray(type)) {
      type = [type];
    }
    for (var i = 0; i < type.length && !valid; i++) {
      var assertedType = assertType(value, type[i]);
      expectedTypes.push(assertedType.expectedType || '');
      valid = assertedType.valid;
    }
  }

  if (!valid) {
    warn(
      getInvalidTypeMessage(name, value, expectedTypes),
      vm
    );
    return
  }
  var validator = prop.validator;
  if (validator) {
    if (!validator(value)) {
      warn(
        'Invalid prop: custom validator check failed for prop "' + name + '".',
        vm
      );
    }
  }
}

var simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;

function assertType (value, type) {
  var valid;
  var expectedType = getType(type);
  if (simpleCheckRE.test(expectedType)) {
    var t = typeof value;
    valid = t === expectedType.toLowerCase();
    // for primitive wrapper objects
    if (!valid && t === 'object') {
      valid = value instanceof type;
    }
  } else if (expectedType === 'Object') {
    valid = isPlainObject(value);
  } else if (expectedType === 'Array') {
    valid = Array.isArray(value);
  } else {
    valid = value instanceof type;
  }
  return {
    valid: valid,
    expectedType: expectedType
  }
}

/**
 * Use function string name to check built-in types,
 * because a simple equality check will fail when running
 * across different vms / iframes.
 */
function getType (fn) {
  var match = fn && fn.toString().match(/^\s*function (\w+)/);
  return match ? match[1] : ''
}

function isSameType (a, b) {
  return getType(a) === getType(b)
}

function getTypeIndex (type, expectedTypes) {
  if (!Array.isArray(expectedTypes)) {
    return isSameType(expectedTypes, type) ? 0 : -1
  }
  for (var i = 0, len = expectedTypes.length; i < len; i++) {
    if (isSameType(expectedTypes[i], type)) {
      return i
    }
  }
  return -1
}

function getInvalidTypeMessage (name, value, expectedTypes) {
  var message = "Invalid prop: type check failed for prop \"" + name + "\"." +
    " Expected " + (expectedTypes.map(capitalize).join(', '));
  var expectedType = expectedTypes[0];
  var receivedType = toRawType(value);
  var expectedValue = styleValue(value, expectedType);
  var receivedValue = styleValue(value, receivedType);
  // check if we need to specify expected value
  if (expectedTypes.length === 1 &&
      isExplicable(expectedType) &&
      !isBoolean(expectedType, receivedType)) {
    message += " with value " + expectedValue;
  }
  message += ", got " + receivedType + " ";
  // check if we need to specify received value
  if (isExplicable(receivedType)) {
    message += "with value " + receivedValue + ".";
  }
  return message
}

function styleValue (value, type) {
  if (type === 'String') {
    return ("\"" + value + "\"")
  } else if (type === 'Number') {
    return ("" + (Number(value)))
  } else {
    return ("" + value)
  }
}

function isExplicable (value) {
  var explicitTypes = ['string', 'number', 'boolean'];
  return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })
}

function isBoolean () {
  var args = [], len = arguments.length;
  while ( len-- ) args[ len ] = arguments[ len ];

  return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })
}

/*  */

function handleError (err, vm, info) {
  // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.
  // See: https://github.com/vuejs/vuex/issues/1505
  pushTarget();
  try {
    if (vm) {
      var cur = vm;
      while ((cur = cur.$parent)) {
        var hooks = cur.$options.errorCaptured;
        if (hooks) {
          for (var i = 0; i < hooks.length; i++) {
            try {
              var capture = hooks[i].call(cur, err, vm, info) === false;
              if (capture) { return }
            } catch (e) {
              globalHandleError(e, cur, 'errorCaptured hook');
            }
          }
        }
      }
    }
    globalHandleError(err, vm, info);
  } finally {
    popTarget();
  }
}

function invokeWithErrorHandling (
  handler,
  context,
  args,
  vm,
  info
) {
  var res;
  try {
    res = args ? handler.apply(context, args) : handler.call(context);
    if (res && !res._isVue && isPromise(res) && !res._handled) {
      res.catch(function (e) { return handleError(e, vm, info + " (Promise/async)"); });
      // issue #9511
      // avoid catch triggering multiple times when nested calls
      res._handled = true;
    }
  } catch (e) {
    handleError(e, vm, info);
  }
  return res
}

function globalHandleError (err, vm, info) {
  if (config.errorHandler) {
    try {
      return config.errorHandler.call(null, err, vm, info)
    } catch (e) {
      // if the user intentionally throws the original error in the handler,
      // do not log it twice
      if (e !== err) {
        logError(e, null, 'config.errorHandler');
      }
    }
  }
  logError(err, vm, info);
}

function logError (err, vm, info) {
  if (true) {
    warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm);
  }
  /* istanbul ignore else */
  if ((inBrowser || inWeex) && typeof console !== 'undefined') {
    console.error(err);
  } else {
    throw err
  }
}

/*  */

var callbacks = [];
var pending = false;

function flushCallbacks () {
  pending = false;
  var copies = callbacks.slice(0);
  callbacks.length = 0;
  for (var i = 0; i < copies.length; i++) {
    copies[i]();
  }
}

// Here we have async deferring wrappers using microtasks.
// In 2.5 we used (macro) tasks (in combination with microtasks).
// However, it has subtle problems when state is changed right before repaint
// (e.g. #6813, out-in transitions).
// Also, using (macro) tasks in event handler would cause some weird behaviors
// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).
// So we now use microtasks everywhere, again.
// A major drawback of this tradeoff is that there are some scenarios
// where microtasks have too high a priority and fire in between supposedly
// sequential events (e.g. #4521, #6690, which have workarounds)
// or even between bubbling of the same event (#6566).
var timerFunc;

// The nextTick behavior leverages the microtask queue, which can be accessed
// via either native Promise.then or MutationObserver.
// MutationObserver has wider support, however it is seriously bugged in
// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It
// completely stops working after triggering a few times... so, if native
// Promise is available, we will use it:
/* istanbul ignore next, $flow-disable-line */
if (typeof Promise !== 'undefined' && isNative(Promise)) {
  var p = Promise.resolve();
  timerFunc = function () {
    p.then(flushCallbacks);
    // In problematic UIWebViews, Promise.then doesn't completely break, but
    // it can get stuck in a weird state where callbacks are pushed into the
    // microtask queue but the queue isn't being flushed, until the browser
    // needs to do some other work, e.g. handle a timer. Therefore we can
    // "force" the microtask queue to be flushed by adding an empty timer.
    if (isIOS) { setTimeout(noop); }
  };
} else if (!isIE && typeof MutationObserver !== 'undefined' && (
  isNative(MutationObserver) ||
  // PhantomJS and iOS 7.x
  MutationObserver.toString() === '[object MutationObserverConstructor]'
)) {
  // Use MutationObserver where native Promise is not available,
  // e.g. PhantomJS, iOS7, Android 4.4
  // (#6466 MutationObserver is unreliable in IE11)
  var counter = 1;
  var observer = new MutationObserver(flushCallbacks);
  var textNode = document.createTextNode(String(counter));
  observer.observe(textNode, {
    characterData: true
  });
  timerFunc = function () {
    counter = (counter + 1) % 2;
    textNode.data = String(counter);
  };
} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {
  // Fallback to setImmediate.
  // Technically it leverages the (macro) task queue,
  // but it is still a better choice than setTimeout.
  timerFunc = function () {
    setImmediate(flushCallbacks);
  };
} else {
  // Fallback to setTimeout.
  timerFunc = function () {
    setTimeout(flushCallbacks, 0);
  };
}

function nextTick (cb, ctx) {
  var _resolve;
  callbacks.push(function () {
    if (cb) {
      try {
        cb.call(ctx);
      } catch (e) {
        handleError(e, ctx, 'nextTick');
      }
    } else if (_resolve) {
      _resolve(ctx);
    }
  });
  if (!pending) {
    pending = true;
    timerFunc();
  }
  // $flow-disable-line
  if (!cb && typeof Promise !== 'undefined') {
    return new Promise(function (resolve) {
      _resolve = resolve;
    })
  }
}

/*  */

/* not type checking this file because flow doesn't play well with Proxy */

var initProxy;

if (true) {
  var allowedGlobals = makeMap(
    'Infinity,undefined,NaN,isFinite,isNaN,' +
    'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +
    'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +
    'require' // for Webpack/Browserify
  );

  var warnNonPresent = function (target, key) {
    warn(
      "Property or method \"" + key + "\" is not defined on the instance but " +
      'referenced during render. Make sure that this property is reactive, ' +
      'either in the data option, or for class-based components, by ' +
      'initializing the property. ' +
      'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',
      target
    );
  };

  var warnReservedPrefix = function (target, key) {
    warn(
      "Property \"" + key + "\" must be accessed with \"$data." + key + "\" because " +
      'properties starting with "$" or "_" are not proxied in the Vue instance to ' +
      'prevent conflicts with Vue internals. ' +
      'See: https://vuejs.org/v2/api/#data',
      target
    );
  };

  var hasProxy =
    typeof Proxy !== 'undefined' && isNative(Proxy);

  if (hasProxy) {
    var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');
    config.keyCodes = new Proxy(config.keyCodes, {
      set: function set (target, key, value) {
        if (isBuiltInModifier(key)) {
          warn(("Avoid overwriting built-in modifier in config.keyCodes: ." + key));
          return false
        } else {
          target[key] = value;
          return true
        }
      }
    });
  }

  var hasHandler = {
    has: function has (target, key) {
      var has = key in target;
      var isAllowed = allowedGlobals(key) ||
        (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));
      if (!has && !isAllowed) {
        if (key in target.$data) { warnReservedPrefix(target, key); }
        else { warnNonPresent(target, key); }
      }
      return has || !isAllowed
    }
  };

  var getHandler = {
    get: function get (target, key) {
      if (typeof key === 'string' && !(key in target)) {
        if (key in target.$data) { warnReservedPrefix(target, key); }
        else { warnNonPresent(target, key); }
      }
      return target[key]
    }
  };

  initProxy = function initProxy (vm) {
    if (hasProxy) {
      // determine which proxy handler to use
      var options = vm.$options;
      var handlers = options.render && options.render._withStripped
        ? getHandler
        : hasHandler;
      vm._renderProxy = new Proxy(vm, handlers);
    } else {
      vm._renderProxy = vm;
    }
  };
}

/*  */

var seenObjects = new _Set();

/**
 * Recursively traverse an object to evoke all converted
 * getters, so that every nested property inside the object
 * is collected as a "deep" dependency.
 */
function traverse (val) {
  _traverse(val, seenObjects);
  seenObjects.clear();
}

function _traverse (val, seen) {
  var i, keys;
  var isA = Array.isArray(val);
  if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {
    return
  }
  if (val.__ob__) {
    var depId = val.__ob__.dep.id;
    if (seen.has(depId)) {
      return
    }
    seen.add(depId);
  }
  if (isA) {
    i = val.length;
    while (i--) { _traverse(val[i], seen); }
  } else {
    keys = Object.keys(val);
    i = keys.length;
    while (i--) { _traverse(val[keys[i]], seen); }
  }
}

var mark;
var measure;

if (true) {
  var perf = inBrowser && window.performance;
  /* istanbul ignore if */
  if (
    perf &&
    perf.mark &&
    perf.measure &&
    perf.clearMarks &&
    perf.clearMeasures
  ) {
    mark = function (tag) { return perf.mark(tag); };
    measure = function (name, startTag, endTag) {
      perf.measure(name, startTag, endTag);
      perf.clearMarks(startTag);
      perf.clearMarks(endTag);
      // perf.clearMeasures(name)
    };
  }
}

/*  */

var normalizeEvent = cached(function (name) {
  var passive = name.charAt(0) === '&';
  name = passive ? name.slice(1) : name;
  var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first
  name = once$$1 ? name.slice(1) : name;
  var capture = name.charAt(0) === '!';
  name = capture ? name.slice(1) : name;
  return {
    name: name,
    once: once$$1,
    capture: capture,
    passive: passive
  }
});

function createFnInvoker (fns, vm) {
  function invoker () {
    var arguments$1 = arguments;

    var fns = invoker.fns;
    if (Array.isArray(fns)) {
      var cloned = fns.slice();
      for (var i = 0; i < cloned.length; i++) {
        invokeWithErrorHandling(cloned[i], null, arguments$1, vm, "v-on handler");
      }
    } else {
      // return handler return value for single handlers
      return invokeWithErrorHandling(fns, null, arguments, vm, "v-on handler")
    }
  }
  invoker.fns = fns;
  return invoker
}

function updateListeners (
  on,
  oldOn,
  add,
  remove$$1,
  createOnceHandler,
  vm
) {
  var name, def$$1, cur, old, event;
  for (name in on) {
    def$$1 = cur = on[name];
    old = oldOn[name];
    event = normalizeEvent(name);
    if (isUndef(cur)) {
       true && warn(
        "Invalid handler for event \"" + (event.name) + "\": got " + String(cur),
        vm
      );
    } else if (isUndef(old)) {
      if (isUndef(cur.fns)) {
        cur = on[name] = createFnInvoker(cur, vm);
      }
      if (isTrue(event.once)) {
        cur = on[name] = createOnceHandler(event.name, cur, event.capture);
      }
      add(event.name, cur, event.capture, event.passive, event.params);
    } else if (cur !== old) {
      old.fns = cur;
      on[name] = old;
    }
  }
  for (name in oldOn) {
    if (isUndef(on[name])) {
      event = normalizeEvent(name);
      remove$$1(event.name, oldOn[name], event.capture);
    }
  }
}

/*  */

/*  */

// fixed by xxxxxx (mp properties)
function extractPropertiesFromVNodeData(data, Ctor, res, context) {
  var propOptions = Ctor.options.mpOptions && Ctor.options.mpOptions.properties;
  if (isUndef(propOptions)) {
    return res
  }
  var externalClasses = Ctor.options.mpOptions.externalClasses || [];
  var attrs = data.attrs;
  var props = data.props;
  if (isDef(attrs) || isDef(props)) {
    for (var key in propOptions) {
      var altKey = hyphenate(key);
      var result = checkProp(res, props, key, altKey, true) ||
          checkProp(res, attrs, key, altKey, false);
      // externalClass
      if (
        result &&
        res[key] &&
        externalClasses.indexOf(altKey) !== -1 &&
        context[camelize(res[key])]
      ) {
        // 赋值 externalClass 真正的值(模板里 externalClass 的值可能是字符串)
        res[key] = context[camelize(res[key])];
      }
    }
  }
  return res
}

function extractPropsFromVNodeData (
  data,
  Ctor,
  tag,
  context// fixed by xxxxxx
) {
  // we are only extracting raw values here.
  // validation and default values are handled in the child
  // component itself.
  var propOptions = Ctor.options.props;
  if (isUndef(propOptions)) {
    // fixed by xxxxxx
    return extractPropertiesFromVNodeData(data, Ctor, {}, context)
  }
  var res = {};
  var attrs = data.attrs;
  var props = data.props;
  if (isDef(attrs) || isDef(props)) {
    for (var key in propOptions) {
      var altKey = hyphenate(key);
      if (true) {
        var keyInLowerCase = key.toLowerCase();
        if (
          key !== keyInLowerCase &&
          attrs && hasOwn(attrs, keyInLowerCase)
        ) {
          tip(
            "Prop \"" + keyInLowerCase + "\" is passed to component " +
            (formatComponentName(tag || Ctor)) + ", but the declared prop name is" +
            " \"" + key + "\". " +
            "Note that HTML attributes are case-insensitive and camelCased " +
            "props need to use their kebab-case equivalents when using in-DOM " +
            "templates. You should probably use \"" + altKey + "\" instead of \"" + key + "\"."
          );
        }
      }
      checkProp(res, props, key, altKey, true) ||
      checkProp(res, attrs, key, altKey, false);
    }
  }
  // fixed by xxxxxx
  return extractPropertiesFromVNodeData(data, Ctor, res, context)
}

function checkProp (
  res,
  hash,
  key,
  altKey,
  preserve
) {
  if (isDef(hash)) {
    if (hasOwn(hash, key)) {
      res[key] = hash[key];
      if (!preserve) {
        delete hash[key];
      }
      return true
    } else if (hasOwn(hash, altKey)) {
      res[key] = hash[altKey];
      if (!preserve) {
        delete hash[altKey];
      }
      return true
    }
  }
  return false
}

/*  */

// The template compiler attempts to minimize the need for normalization by
// statically analyzing the template at compile time.
//
// For plain HTML markup, normalization can be completely skipped because the
// generated render function is guaranteed to return Array<VNode>. There are
// two cases where extra normalization is needed:

// 1. When the children contains components - because a functional component
// may return an Array instead of a single root. In this case, just a simple
// normalization is needed - if any child is an Array, we flatten the whole
// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep
// because functional components already normalize their own children.
function simpleNormalizeChildren (children) {
  for (var i = 0; i < children.length; i++) {
    if (Array.isArray(children[i])) {
      return Array.prototype.concat.apply([], children)
    }
  }
  return children
}

// 2. When the children contains constructs that always generated nested Arrays,
// e.g. <template>, <slot>, v-for, or when the children is provided by user
// with hand-written render functions / JSX. In such cases a full normalization
// is needed to cater to all possible types of children values.
function normalizeChildren (children) {
  return isPrimitive(children)
    ? [createTextVNode(children)]
    : Array.isArray(children)
      ? normalizeArrayChildren(children)
      : undefined
}

function isTextNode (node) {
  return isDef(node) && isDef(node.text) && isFalse(node.isComment)
}

function normalizeArrayChildren (children, nestedIndex) {
  var res = [];
  var i, c, lastIndex, last;
  for (i = 0; i < children.length; i++) {
    c = children[i];
    if (isUndef(c) || typeof c === 'boolean') { continue }
    lastIndex = res.length - 1;
    last = res[lastIndex];
    //  nested
    if (Array.isArray(c)) {
      if (c.length > 0) {
        c = normalizeArrayChildren(c, ((nestedIndex || '') + "_" + i));
        // merge adjacent text nodes
        if (isTextNode(c[0]) && isTextNode(last)) {
          res[lastIndex] = createTextVNode(last.text + (c[0]).text);
          c.shift();
        }
        res.push.apply(res, c);
      }
    } else if (isPrimitive(c)) {
      if (isTextNode(last)) {
        // merge adjacent text nodes
        // this is necessary for SSR hydration because text nodes are
        // essentially merged when rendered to HTML strings
        res[lastIndex] = createTextVNode(last.text + c);
      } else if (c !== '') {
        // convert primitive to vnode
        res.push(createTextVNode(c));
      }
    } else {
      if (isTextNode(c) && isTextNode(last)) {
        // merge adjacent text nodes
        res[lastIndex] = createTextVNode(last.text + c.text);
      } else {
        // default key for nested array children (likely generated by v-for)
        if (isTrue(children._isVList) &&
          isDef(c.tag) &&
          isUndef(c.key) &&
          isDef(nestedIndex)) {
          c.key = "__vlist" + nestedIndex + "_" + i + "__";
        }
        res.push(c);
      }
    }
  }
  return res
}

/*  */

function initProvide (vm) {
  var provide = vm.$options.provide;
  if (provide) {
    vm._provided = typeof provide === 'function'
      ? provide.call(vm)
      : provide;
  }
}

function initInjections (vm) {
  var result = resolveInject(vm.$options.inject, vm);
  if (result) {
    toggleObserving(false);
    Object.keys(result).forEach(function (key) {
      /* istanbul ignore else */
      if (true) {
        defineReactive$$1(vm, key, result[key], function () {
          warn(
            "Avoid mutating an injected value directly since the changes will be " +
            "overwritten whenever the provided component re-renders. " +
            "injection being mutated: \"" + key + "\"",
            vm
          );
        });
      } else {}
    });
    toggleObserving(true);
  }
}

function resolveInject (inject, vm) {
  if (inject) {
    // inject is :any because flow is not smart enough to figure out cached
    var result = Object.create(null);
    var keys = hasSymbol
      ? Reflect.ownKeys(inject)
      : Object.keys(inject);

    for (var i = 0; i < keys.length; i++) {
      var key = keys[i];
      // #6574 in case the inject object is observed...
      if (key === '__ob__') { continue }
      var provideKey = inject[key].from;
      var source = vm;
      while (source) {
        if (source._provided && hasOwn(source._provided, provideKey)) {
          result[key] = source._provided[provideKey];
          break
        }
        source = source.$parent;
      }
      if (!source) {
        if ('default' in inject[key]) {
          var provideDefault = inject[key].default;
          result[key] = typeof provideDefault === 'function'
            ? provideDefault.call(vm)
            : provideDefault;
        } else if (true) {
          warn(("Injection \"" + key + "\" not found"), vm);
        }
      }
    }
    return result
  }
}

/*  */



/**
 * Runtime helper for resolving raw children VNodes into a slot object.
 */
function resolveSlots (
  children,
  context
) {
  if (!children || !children.length) {
    return {}
  }
  var slots = {};
  for (var i = 0, l = children.length; i < l; i++) {
    var child = children[i];
    var data = child.data;
    // remove slot attribute if the node is resolved as a Vue slot node
    if (data && data.attrs && data.attrs.slot) {
      delete data.attrs.slot;
    }
    // named slots should only be respected if the vnode was rendered in the
    // same context.
    if ((child.context === context || child.fnContext === context) &&
      data && data.slot != null
    ) {
      var name = data.slot;
      var slot = (slots[name] || (slots[name] = []));
      if (child.tag === 'template') {
        slot.push.apply(slot, child.children || []);
      } else {
        slot.push(child);
      }
    } else {
      // fixed by xxxxxx 临时 hack 掉 uni-app 中的异步 name slot page
      if(child.asyncMeta && child.asyncMeta.data && child.asyncMeta.data.slot === 'page'){
        (slots['page'] || (slots['page'] = [])).push(child);
      }else{
        (slots.default || (slots.default = [])).push(child);
      }
    }
  }
  // ignore slots that contains only whitespace
  for (var name$1 in slots) {
    if (slots[name$1].every(isWhitespace)) {
      delete slots[name$1];
    }
  }
  return slots
}

function isWhitespace (node) {
  return (node.isComment && !node.asyncFactory) || node.text === ' '
}

/*  */

function normalizeScopedSlots (
  slots,
  normalSlots,
  prevSlots
) {
  var res;
  var hasNormalSlots = Object.keys(normalSlots).length > 0;
  var isStable = slots ? !!slots.$stable : !hasNormalSlots;
  var key = slots && slots.$key;
  if (!slots) {
    res = {};
  } else if (slots._normalized) {
    // fast path 1: child component re-render only, parent did not change
    return slots._normalized
  } else if (
    isStable &&
    prevSlots &&
    prevSlots !== emptyObject &&
    key === prevSlots.$key &&
    !hasNormalSlots &&
    !prevSlots.$hasNormal
  ) {
    // fast path 2: stable scoped slots w/ no normal slots to proxy,
    // only need to normalize once
    return prevSlots
  } else {
    res = {};
    for (var key$1 in slots) {
      if (slots[key$1] && key$1[0] !== '$') {
        res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);
      }
    }
  }
  // expose normal slots on scopedSlots
  for (var key$2 in normalSlots) {
    if (!(key$2 in res)) {
      res[key$2] = proxyNormalSlot(normalSlots, key$2);
    }
  }
  // avoriaz seems to mock a non-extensible $scopedSlots object
  // and when that is passed down this would cause an error
  if (slots && Object.isExtensible(slots)) {
    (slots)._normalized = res;
  }
  def(res, '$stable', isStable);
  def(res, '$key', key);
  def(res, '$hasNormal', hasNormalSlots);
  return res
}

function normalizeScopedSlot(normalSlots, key, fn) {
  var normalized = function () {
    var res = arguments.length ? fn.apply(null, arguments) : fn({});
    res = res && typeof res === 'object' && !Array.isArray(res)
      ? [res] // single vnode
      : normalizeChildren(res);
    return res && (
      res.length === 0 ||
      (res.length === 1 && res[0].isComment) // #9658
    ) ? undefined
      : res
  };
  // this is a slot using the new v-slot syntax without scope. although it is
  // compiled as a scoped slot, render fn users would expect it to be present
  // on this.$slots because the usage is semantically a normal slot.
  if (fn.proxy) {
    Object.defineProperty(normalSlots, key, {
      get: normalized,
      enumerable: true,
      configurable: true
    });
  }
  return normalized
}

function proxyNormalSlot(slots, key) {
  return function () { return slots[key]; }
}

/*  */

/**
 * Runtime helper for rendering v-for lists.
 */
function renderList (
  val,
  render
) {
  var ret, i, l, keys, key;
  if (Array.isArray(val) || typeof val === 'string') {
    ret = new Array(val.length);
    for (i = 0, l = val.length; i < l; i++) {
      ret[i] = render(val[i], i, i, i); // fixed by xxxxxx
    }
  } else if (typeof val === 'number') {
    ret = new Array(val);
    for (i = 0; i < val; i++) {
      ret[i] = render(i + 1, i, i, i); // fixed by xxxxxx
    }
  } else if (isObject(val)) {
    if (hasSymbol && val[Symbol.iterator]) {
      ret = [];
      var iterator = val[Symbol.iterator]();
      var result = iterator.next();
      while (!result.done) {
        ret.push(render(result.value, ret.length, i, i++)); // fixed by xxxxxx
        result = iterator.next();
      }
    } else {
      keys = Object.keys(val);
      ret = new Array(keys.length);
      for (i = 0, l = keys.length; i < l; i++) {
        key = keys[i];
        ret[i] = render(val[key], key, i, i); // fixed by xxxxxx
      }
    }
  }
  if (!isDef(ret)) {
    ret = [];
  }
  (ret)._isVList = true;
  return ret
}

/*  */

/**
 * Runtime helper for rendering <slot>
 */
function renderSlot (
  name,
  fallback,
  props,
  bindObject
) {
  var scopedSlotFn = this.$scopedSlots[name];
  var nodes;
  if (scopedSlotFn) { // scoped slot
    props = props || {};
    if (bindObject) {
      if ( true && !isObject(bindObject)) {
        warn(
          'slot v-bind without argument expects an Object',
          this
        );
      }
      props = extend(extend({}, bindObject), props);
    }
    // fixed by xxxxxx app-plus scopedSlot
    nodes = scopedSlotFn(props, this, props._i) || fallback;
  } else {
    nodes = this.$slots[name] || fallback;
  }

  var target = props && props.slot;
  if (target) {
    return this.$createElement('template', { slot: target }, nodes)
  } else {
    return nodes
  }
}

/*  */

/**
 * Runtime helper for resolving filters
 */
function resolveFilter (id) {
  return resolveAsset(this.$options, 'filters', id, true) || identity
}

/*  */

function isKeyNotMatch (expect, actual) {
  if (Array.isArray(expect)) {
    return expect.indexOf(actual) === -1
  } else {
    return expect !== actual
  }
}

/**
 * Runtime helper for checking keyCodes from config.
 * exposed as Vue.prototype._k
 * passing in eventKeyName as last argument separately for backwards compat
 */
function checkKeyCodes (
  eventKeyCode,
  key,
  builtInKeyCode,
  eventKeyName,
  builtInKeyName
) {
  var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;
  if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {
    return isKeyNotMatch(builtInKeyName, eventKeyName)
  } else if (mappedKeyCode) {
    return isKeyNotMatch(mappedKeyCode, eventKeyCode)
  } else if (eventKeyName) {
    return hyphenate(eventKeyName) !== key
  }
}

/*  */

/**
 * Runtime helper for merging v-bind="object" into a VNode's data.
 */
function bindObjectProps (
  data,
  tag,
  value,
  asProp,
  isSync
) {
  if (value) {
    if (!isObject(value)) {
       true && warn(
        'v-bind without argument expects an Object or Array value',
        this
      );
    } else {
      if (Array.isArray(value)) {
        value = toObject(value);
      }
      var hash;
      var loop = function ( key ) {
        if (
          key === 'class' ||
          key === 'style' ||
          isReservedAttribute(key)
        ) {
          hash = data;
        } else {
          var type = data.attrs && data.attrs.type;
          hash = asProp || config.mustUseProp(tag, type, key)
            ? data.domProps || (data.domProps = {})
            : data.attrs || (data.attrs = {});
        }
        var camelizedKey = camelize(key);
        var hyphenatedKey = hyphenate(key);
        if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {
          hash[key] = value[key];

          if (isSync) {
            var on = data.on || (data.on = {});
            on[("update:" + key)] = function ($event) {
              value[key] = $event;
            };
          }
        }
      };

      for (var key in value) loop( key );
    }
  }
  return data
}

/*  */

/**
 * Runtime helper for rendering static trees.
 */
function renderStatic (
  index,
  isInFor
) {
  var cached = this._staticTrees || (this._staticTrees = []);
  var tree = cached[index];
  // if has already-rendered static tree and not inside v-for,
  // we can reuse the same tree.
  if (tree && !isInFor) {
    return tree
  }
  // otherwise, render a fresh tree.
  tree = cached[index] = this.$options.staticRenderFns[index].call(
    this._renderProxy,
    null,
    this // for render fns generated for functional component templates
  );
  markStatic(tree, ("__static__" + index), false);
  return tree
}

/**
 * Runtime helper for v-once.
 * Effectively it means marking the node as static with a unique key.
 */
function markOnce (
  tree,
  index,
  key
) {
  markStatic(tree, ("__once__" + index + (key ? ("_" + key) : "")), true);
  return tree
}

function markStatic (
  tree,
  key,
  isOnce
) {
  if (Array.isArray(tree)) {
    for (var i = 0; i < tree.length; i++) {
      if (tree[i] && typeof tree[i] !== 'string') {
        markStaticNode(tree[i], (key + "_" + i), isOnce);
      }
    }
  } else {
    markStaticNode(tree, key, isOnce);
  }
}

function markStaticNode (node, key, isOnce) {
  node.isStatic = true;
  node.key = key;
  node.isOnce = isOnce;
}

/*  */

function bindObjectListeners (data, value) {
  if (value) {
    if (!isPlainObject(value)) {
       true && warn(
        'v-on without argument expects an Object value',
        this
      );
    } else {
      var on = data.on = data.on ? extend({}, data.on) : {};
      for (var key in value) {
        var existing = on[key];
        var ours = value[key];
        on[key] = existing ? [].concat(existing, ours) : ours;
      }
    }
  }
  return data
}

/*  */

function resolveScopedSlots (
  fns, // see flow/vnode
  res,
  // the following are added in 2.6
  hasDynamicKeys,
  contentHashKey
) {
  res = res || { $stable: !hasDynamicKeys };
  for (var i = 0; i < fns.length; i++) {
    var slot = fns[i];
    if (Array.isArray(slot)) {
      resolveScopedSlots(slot, res, hasDynamicKeys);
    } else if (slot) {
      // marker for reverse proxying v-slot without scope on this.$slots
      if (slot.proxy) {
        slot.fn.proxy = true;
      }
      res[slot.key] = slot.fn;
    }
  }
  if (contentHashKey) {
    (res).$key = contentHashKey;
  }
  return res
}

/*  */

function bindDynamicKeys (baseObj, values) {
  for (var i = 0; i < values.length; i += 2) {
    var key = values[i];
    if (typeof key === 'string' && key) {
      baseObj[values[i]] = values[i + 1];
    } else if ( true && key !== '' && key !== null) {
      // null is a special value for explicitly removing a binding
      warn(
        ("Invalid value for dynamic directive argument (expected string or null): " + key),
        this
      );
    }
  }
  return baseObj
}

// helper to dynamically append modifier runtime markers to event names.
// ensure only append when value is already string, otherwise it will be cast
// to string and cause the type check to miss.
function prependModifier (value, symbol) {
  return typeof value === 'string' ? symbol + value : value
}

/*  */

function installRenderHelpers (target) {
  target._o = markOnce;
  target._n = toNumber;
  target._s = toString;
  target._l = renderList;
  target._t = renderSlot;
  target._q = looseEqual;
  target._i = looseIndexOf;
  target._m = renderStatic;
  target._f = resolveFilter;
  target._k = checkKeyCodes;
  target._b = bindObjectProps;
  target._v = createTextVNode;
  target._e = createEmptyVNode;
  target._u = resolveScopedSlots;
  target._g = bindObjectListeners;
  target._d = bindDynamicKeys;
  target._p = prependModifier;
}

/*  */

function FunctionalRenderContext (
  data,
  props,
  children,
  parent,
  Ctor
) {
  var this$1 = this;

  var options = Ctor.options;
  // ensure the createElement function in functional components
  // gets a unique context - this is necessary for correct named slot check
  var contextVm;
  if (hasOwn(parent, '_uid')) {
    contextVm = Object.create(parent);
    // $flow-disable-line
    contextVm._original = parent;
  } else {
    // the context vm passed in is a functional context as well.
    // in this case we want to make sure we are able to get a hold to the
    // real context instance.
    contextVm = parent;
    // $flow-disable-line
    parent = parent._original;
  }
  var isCompiled = isTrue(options._compiled);
  var needNormalization = !isCompiled;

  this.data = data;
  this.props = props;
  this.children = children;
  this.parent = parent;
  this.listeners = data.on || emptyObject;
  this.injections = resolveInject(options.inject, parent);
  this.slots = function () {
    if (!this$1.$slots) {
      normalizeScopedSlots(
        data.scopedSlots,
        this$1.$slots = resolveSlots(children, parent)
      );
    }
    return this$1.$slots
  };

  Object.defineProperty(this, 'scopedSlots', ({
    enumerable: true,
    get: function get () {
      return normalizeScopedSlots(data.scopedSlots, this.slots())
    }
  }));

  // support for compiled functional template
  if (isCompiled) {
    // exposing $options for renderStatic()
    this.$options = options;
    // pre-resolve slots for renderSlot()
    this.$slots = this.slots();
    this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);
  }

  if (options._scopeId) {
    this._c = function (a, b, c, d) {
      var vnode = createElement(contextVm, a, b, c, d, needNormalization);
      if (vnode && !Array.isArray(vnode)) {
        vnode.fnScopeId = options._scopeId;
        vnode.fnContext = parent;
      }
      return vnode
    };
  } else {
    this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };
  }
}

installRenderHelpers(FunctionalRenderContext.prototype);

function createFunctionalComponent (
  Ctor,
  propsData,
  data,
  contextVm,
  children
) {
  var options = Ctor.options;
  var props = {};
  var propOptions = options.props;
  if (isDef(propOptions)) {
    for (var key in propOptions) {
      props[key] = validateProp(key, propOptions, propsData || emptyObject);
    }
  } else {
    if (isDef(data.attrs)) { mergeProps(props, data.attrs); }
    if (isDef(data.props)) { mergeProps(props, data.props); }
  }

  var renderContext = new FunctionalRenderContext(
    data,
    props,
    children,
    contextVm,
    Ctor
  );

  var vnode = options.render.call(null, renderContext._c, renderContext);

  if (vnode instanceof VNode) {
    return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)
  } else if (Array.isArray(vnode)) {
    var vnodes = normalizeChildren(vnode) || [];
    var res = new Array(vnodes.length);
    for (var i = 0; i < vnodes.length; i++) {
      res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);
    }
    return res
  }
}

function cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {
  // #7817 clone node before setting fnContext, otherwise if the node is reused
  // (e.g. it was from a cached normal slot) the fnContext causes named slots
  // that should not be matched to match.
  var clone = cloneVNode(vnode);
  clone.fnContext = contextVm;
  clone.fnOptions = options;
  if (true) {
    (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;
  }
  if (data.slot) {
    (clone.data || (clone.data = {})).slot = data.slot;
  }
  return clone
}

function mergeProps (to, from) {
  for (var key in from) {
    to[camelize(key)] = from[key];
  }
}

/*  */

/*  */

/*  */

/*  */

// inline hooks to be invoked on component VNodes during patch
var componentVNodeHooks = {
  init: function init (vnode, hydrating) {
    if (
      vnode.componentInstance &&
      !vnode.componentInstance._isDestroyed &&
      vnode.data.keepAlive
    ) {
      // kept-alive components, treat as a patch
      var mountedNode = vnode; // work around flow
      componentVNodeHooks.prepatch(mountedNode, mountedNode);
    } else {
      var child = vnode.componentInstance = createComponentInstanceForVnode(
        vnode,
        activeInstance
      );
      child.$mount(hydrating ? vnode.elm : undefined, hydrating);
    }
  },

  prepatch: function prepatch (oldVnode, vnode) {
    var options = vnode.componentOptions;
    var child = vnode.componentInstance = oldVnode.componentInstance;
    updateChildComponent(
      child,
      options.propsData, // updated props
      options.listeners, // updated listeners
      vnode, // new parent vnode
      options.children // new children
    );
  },

  insert: function insert (vnode) {
    var context = vnode.context;
    var componentInstance = vnode.componentInstance;
    if (!componentInstance._isMounted) {
      callHook(componentInstance, 'onServiceCreated');
      callHook(componentInstance, 'onServiceAttached');
      componentInstance._isMounted = true;
      callHook(componentInstance, 'mounted');
    }
    if (vnode.data.keepAlive) {
      if (context._isMounted) {
        // vue-router#1212
        // During updates, a kept-alive component's child components may
        // change, so directly walking the tree here may call activated hooks
        // on incorrect children. Instead we push them into a queue which will
        // be processed after the whole patch process ended.
        queueActivatedComponent(componentInstance);
      } else {
        activateChildComponent(componentInstance, true /* direct */);
      }
    }
  },

  destroy: function destroy (vnode) {
    var componentInstance = vnode.componentInstance;
    if (!componentInstance._isDestroyed) {
      if (!vnode.data.keepAlive) {
        componentInstance.$destroy();
      } else {
        deactivateChildComponent(componentInstance, true /* direct */);
      }
    }
  }
};

var hooksToMerge = Object.keys(componentVNodeHooks);

function createComponent (
  Ctor,
  data,
  context,
  children,
  tag
) {
  if (isUndef(Ctor)) {
    return
  }

  var baseCtor = context.$options._base;

  // plain options object: turn it into a constructor
  if (isObject(Ctor)) {
    Ctor = baseCtor.extend(Ctor);
  }

  // if at this stage it's not a constructor or an async component factory,
  // reject.
  if (typeof Ctor !== 'function') {
    if (true) {
      warn(("Invalid Component definition: " + (String(Ctor))), context);
    }
    return
  }

  // async component
  var asyncFactory;
  if (isUndef(Ctor.cid)) {
    asyncFactory = Ctor;
    Ctor = resolveAsyncComponent(asyncFactory, baseCtor);
    if (Ctor === undefined) {
      // return a placeholder node for async component, which is rendered
      // as a comment node but preserves all the raw information for the node.
      // the information will be used for async server-rendering and hydration.
      return createAsyncPlaceholder(
        asyncFactory,
        data,
        context,
        children,
        tag
      )
    }
  }

  data = data || {};

  // resolve constructor options in case global mixins are applied after
  // component constructor creation
  resolveConstructorOptions(Ctor);

  // transform component v-model data into props & events
  if (isDef(data.model)) {
    transformModel(Ctor.options, data);
  }

  // extract props
  var propsData = extractPropsFromVNodeData(data, Ctor, tag, context); // fixed by xxxxxx

  // functional component
  if (isTrue(Ctor.options.functional)) {
    return createFunctionalComponent(Ctor, propsData, data, context, children)
  }

  // extract listeners, since these needs to be treated as
  // child component listeners instead of DOM listeners
  var listeners = data.on;
  // replace with listeners with .native modifier
  // so it gets processed during parent component patch.
  data.on = data.nativeOn;

  if (isTrue(Ctor.options.abstract)) {
    // abstract components do not keep anything
    // other than props & listeners & slot

    // work around flow
    var slot = data.slot;
    data = {};
    if (slot) {
      data.slot = slot;
    }
  }

  // install component management hooks onto the placeholder node
  installComponentHooks(data);

  // return a placeholder vnode
  var name = Ctor.options.name || tag;
  var vnode = new VNode(
    ("vue-component-" + (Ctor.cid) + (name ? ("-" + name) : '')),
    data, undefined, undefined, undefined, context,
    { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },
    asyncFactory
  );

  return vnode
}

function createComponentInstanceForVnode (
  vnode, // we know it's MountedComponentVNode but flow doesn't
  parent // activeInstance in lifecycle state
) {
  var options = {
    _isComponent: true,
    _parentVnode: vnode,
    parent: parent
  };
  // check inline-template render functions
  var inlineTemplate = vnode.data.inlineTemplate;
  if (isDef(inlineTemplate)) {
    options.render = inlineTemplate.render;
    options.staticRenderFns = inlineTemplate.staticRenderFns;
  }
  return new vnode.componentOptions.Ctor(options)
}

function installComponentHooks (data) {
  var hooks = data.hook || (data.hook = {});
  for (var i = 0; i < hooksToMerge.length; i++) {
    var key = hooksToMerge[i];
    var existing = hooks[key];
    var toMerge = componentVNodeHooks[key];
    if (existing !== toMerge && !(existing && existing._merged)) {
      hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;
    }
  }
}

function mergeHook$1 (f1, f2) {
  var merged = function (a, b) {
    // flow complains about extra args which is why we use any
    f1(a, b);
    f2(a, b);
  };
  merged._merged = true;
  return merged
}

// transform component v-model info (value and callback) into
// prop and event handler respectively.
function transformModel (options, data) {
  var prop = (options.model && options.model.prop) || 'value';
  var event = (options.model && options.model.event) || 'input'
  ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;
  var on = data.on || (data.on = {});
  var existing = on[event];
  var callback = data.model.callback;
  if (isDef(existing)) {
    if (
      Array.isArray(existing)
        ? existing.indexOf(callback) === -1
        : existing !== callback
    ) {
      on[event] = [callback].concat(existing);
    }
  } else {
    on[event] = callback;
  }
}

/*  */

var SIMPLE_NORMALIZE = 1;
var ALWAYS_NORMALIZE = 2;

// wrapper function for providing a more flexible interface
// without getting yelled at by flow
function createElement (
  context,
  tag,
  data,
  children,
  normalizationType,
  alwaysNormalize
) {
  if (Array.isArray(data) || isPrimitive(data)) {
    normalizationType = children;
    children = data;
    data = undefined;
  }
  if (isTrue(alwaysNormalize)) {
    normalizationType = ALWAYS_NORMALIZE;
  }
  return _createElement(context, tag, data, children, normalizationType)
}

function _createElement (
  context,
  tag,
  data,
  children,
  normalizationType
) {
  if (isDef(data) && isDef((data).__ob__)) {
     true && warn(
      "Avoid using observed data object as vnode data: " + (JSON.stringify(data)) + "\n" +
      'Always create fresh vnode data objects in each render!',
      context
    );
    return createEmptyVNode()
  }
  // object syntax in v-bind
  if (isDef(data) && isDef(data.is)) {
    tag = data.is;
  }
  if (!tag) {
    // in case of component :is set to falsy value
    return createEmptyVNode()
  }
  // warn against non-primitive key
  if ( true &&
    isDef(data) && isDef(data.key) && !isPrimitive(data.key)
  ) {
    {
      warn(
        'Avoid using non-primitive value as key, ' +
        'use string/number value instead.',
        context
      );
    }
  }
  // support single function children as default scoped slot
  if (Array.isArray(children) &&
    typeof children[0] === 'function'
  ) {
    data = data || {};
    data.scopedSlots = { default: children[0] };
    children.length = 0;
  }
  if (normalizationType === ALWAYS_NORMALIZE) {
    children = normalizeChildren(children);
  } else if (normalizationType === SIMPLE_NORMALIZE) {
    children = simpleNormalizeChildren(children);
  }
  var vnode, ns;
  if (typeof tag === 'string') {
    var Ctor;
    ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);
    if (config.isReservedTag(tag)) {
      // platform built-in elements
      if ( true && isDef(data) && isDef(data.nativeOn)) {
        warn(
          ("The .native modifier for v-on is only valid on components but it was used on <" + tag + ">."),
          context
        );
      }
      vnode = new VNode(
        config.parsePlatformTagName(tag), data, children,
        undefined, undefined, context
      );
    } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {
      // component
      vnode = createComponent(Ctor, data, context, children, tag);
    } else {
      // unknown or unlisted namespaced elements
      // check at runtime because it may get assigned a namespace when its
      // parent normalizes children
      vnode = new VNode(
        tag, data, children,
        undefined, undefined, context
      );
    }
  } else {
    // direct component options / constructor
    vnode = createComponent(tag, data, context, children);
  }
  if (Array.isArray(vnode)) {
    return vnode
  } else if (isDef(vnode)) {
    if (isDef(ns)) { applyNS(vnode, ns); }
    if (isDef(data)) { registerDeepBindings(data); }
    return vnode
  } else {
    return createEmptyVNode()
  }
}

function applyNS (vnode, ns, force) {
  vnode.ns = ns;
  if (vnode.tag === 'foreignObject') {
    // use default namespace inside foreignObject
    ns = undefined;
    force = true;
  }
  if (isDef(vnode.children)) {
    for (var i = 0, l = vnode.children.length; i < l; i++) {
      var child = vnode.children[i];
      if (isDef(child.tag) && (
        isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {
        applyNS(child, ns, force);
      }
    }
  }
}

// ref #5318
// necessary to ensure parent re-render when deep bindings like :style and
// :class are used on slot nodes
function registerDeepBindings (data) {
  if (isObject(data.style)) {
    traverse(data.style);
  }
  if (isObject(data.class)) {
    traverse(data.class);
  }
}

/*  */

function initRender (vm) {
  vm._vnode = null; // the root of the child tree
  vm._staticTrees = null; // v-once cached trees
  var options = vm.$options;
  var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree
  var renderContext = parentVnode && parentVnode.context;
  vm.$slots = resolveSlots(options._renderChildren, renderContext);
  vm.$scopedSlots = emptyObject;
  // bind the createElement fn to this instance
  // so that we get proper render context inside it.
  // args order: tag, data, children, normalizationType, alwaysNormalize
  // internal version is used by render functions compiled from templates
  vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };
  // normalization is always applied for the public version, used in
  // user-written render functions.
  vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };

  // $attrs & $listeners are exposed for easier HOC creation.
  // they need to be reactive so that HOCs using them are always updated
  var parentData = parentVnode && parentVnode.data;

  /* istanbul ignore else */
  if (true) {
    defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {
      !isUpdatingChildComponent && warn("$attrs is readonly.", vm);
    }, true);
    defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {
      !isUpdatingChildComponent && warn("$listeners is readonly.", vm);
    }, true);
  } else {}
}

var currentRenderingInstance = null;

function renderMixin (Vue) {
  // install runtime convenience helpers
  installRenderHelpers(Vue.prototype);

  Vue.prototype.$nextTick = function (fn) {
    return nextTick(fn, this)
  };

  Vue.prototype._render = function () {
    var vm = this;
    var ref = vm.$options;
    var render = ref.render;
    var _parentVnode = ref._parentVnode;

    if (_parentVnode) {
      vm.$scopedSlots = normalizeScopedSlots(
        _parentVnode.data.scopedSlots,
        vm.$slots,
        vm.$scopedSlots
      );
    }

    // set parent vnode. this allows render functions to have access
    // to the data on the placeholder node.
    vm.$vnode = _parentVnode;
    // render self
    var vnode;
    try {
      // There's no need to maintain a stack because all render fns are called
      // separately from one another. Nested component's render fns are called
      // when parent component is patched.
      currentRenderingInstance = vm;
      vnode = render.call(vm._renderProxy, vm.$createElement);
    } catch (e) {
      handleError(e, vm, "render");
      // return error render result,
      // or previous vnode to prevent render error causing blank component
      /* istanbul ignore else */
      if ( true && vm.$options.renderError) {
        try {
          vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);
        } catch (e) {
          handleError(e, vm, "renderError");
          vnode = vm._vnode;
        }
      } else {
        vnode = vm._vnode;
      }
    } finally {
      currentRenderingInstance = null;
    }
    // if the returned array contains only a single node, allow it
    if (Array.isArray(vnode) && vnode.length === 1) {
      vnode = vnode[0];
    }
    // return empty vnode in case the render function errored out
    if (!(vnode instanceof VNode)) {
      if ( true && Array.isArray(vnode)) {
        warn(
          'Multiple root nodes returned from render function. Render function ' +
          'should return a single root node.',
          vm
        );
      }
      vnode = createEmptyVNode();
    }
    // set parent
    vnode.parent = _parentVnode;
    return vnode
  };
}

/*  */

function ensureCtor (comp, base) {
  if (
    comp.__esModule ||
    (hasSymbol && comp[Symbol.toStringTag] === 'Module')
  ) {
    comp = comp.default;
  }
  return isObject(comp)
    ? base.extend(comp)
    : comp
}

function createAsyncPlaceholder (
  factory,
  data,
  context,
  children,
  tag
) {
  var node = createEmptyVNode();
  node.asyncFactory = factory;
  node.asyncMeta = { data: data, context: context, children: children, tag: tag };
  return node
}

function resolveAsyncComponent (
  factory,
  baseCtor
) {
  if (isTrue(factory.error) && isDef(factory.errorComp)) {
    return factory.errorComp
  }

  if (isDef(factory.resolved)) {
    return factory.resolved
  }

  var owner = currentRenderingInstance;
  if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {
    // already pending
    factory.owners.push(owner);
  }

  if (isTrue(factory.loading) && isDef(factory.loadingComp)) {
    return factory.loadingComp
  }

  if (owner && !isDef(factory.owners)) {
    var owners = factory.owners = [owner];
    var sync = true;
    var timerLoading = null;
    var timerTimeout = null

    ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });

    var forceRender = function (renderCompleted) {
      for (var i = 0, l = owners.length; i < l; i++) {
        (owners[i]).$forceUpdate();
      }

      if (renderCompleted) {
        owners.length = 0;
        if (timerLoading !== null) {
          clearTimeout(timerLoading);
          timerLoading = null;
        }
        if (timerTimeout !== null) {
          clearTimeout(timerTimeout);
          timerTimeout = null;
        }
      }
    };

    var resolve = once(function (res) {
      // cache resolved
      factory.resolved = ensureCtor(res, baseCtor);
      // invoke callbacks only if this is not a synchronous resolve
      // (async resolves are shimmed as synchronous during SSR)
      if (!sync) {
        forceRender(true);
      } else {
        owners.length = 0;
      }
    });

    var reject = once(function (reason) {
       true && warn(
        "Failed to resolve async component: " + (String(factory)) +
        (reason ? ("\nReason: " + reason) : '')
      );
      if (isDef(factory.errorComp)) {
        factory.error = true;
        forceRender(true);
      }
    });

    var res = factory(resolve, reject);

    if (isObject(res)) {
      if (isPromise(res)) {
        // () => Promise
        if (isUndef(factory.resolved)) {
          res.then(resolve, reject);
        }
      } else if (isPromise(res.component)) {
        res.component.then(resolve, reject);

        if (isDef(res.error)) {
          factory.errorComp = ensureCtor(res.error, baseCtor);
        }

        if (isDef(res.loading)) {
          factory.loadingComp = ensureCtor(res.loading, baseCtor);
          if (res.delay === 0) {
            factory.loading = true;
          } else {
            timerLoading = setTimeout(function () {
              timerLoading = null;
              if (isUndef(factory.resolved) && isUndef(factory.error)) {
                factory.loading = true;
                forceRender(false);
              }
            }, res.delay || 200);
          }
        }

        if (isDef(res.timeout)) {
          timerTimeout = setTimeout(function () {
            timerTimeout = null;
            if (isUndef(factory.resolved)) {
              reject(
                 true
                  ? ("timeout (" + (res.timeout) + "ms)")
                  : undefined
              );
            }
          }, res.timeout);
        }
      }
    }

    sync = false;
    // return in case resolved synchronously
    return factory.loading
      ? factory.loadingComp
      : factory.resolved
  }
}

/*  */

function isAsyncPlaceholder (node) {
  return node.isComment && node.asyncFactory
}

/*  */

function getFirstComponentChild (children) {
  if (Array.isArray(children)) {
    for (var i = 0; i < children.length; i++) {
      var c = children[i];
      if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {
        return c
      }
    }
  }
}

/*  */

/*  */

function initEvents (vm) {
  vm._events = Object.create(null);
  vm._hasHookEvent = false;
  // init parent attached events
  var listeners = vm.$options._parentListeners;
  if (listeners) {
    updateComponentListeners(vm, listeners);
  }
}

var target;

function add (event, fn) {
  target.$on(event, fn);
}

function remove$1 (event, fn) {
  target.$off(event, fn);
}

function createOnceHandler (event, fn) {
  var _target = target;
  return function onceHandler () {
    var res = fn.apply(null, arguments);
    if (res !== null) {
      _target.$off(event, onceHandler);
    }
  }
}

function updateComponentListeners (
  vm,
  listeners,
  oldListeners
) {
  target = vm;
  updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);
  target = undefined;
}

function eventsMixin (Vue) {
  var hookRE = /^hook:/;
  Vue.prototype.$on = function (event, fn) {
    var vm = this;
    if (Array.isArray(event)) {
      for (var i = 0, l = event.length; i < l; i++) {
        vm.$on(event[i], fn);
      }
    } else {
      (vm._events[event] || (vm._events[event] = [])).push(fn);
      // optimize hook:event cost by using a boolean flag marked at registration
      // instead of a hash lookup
      if (hookRE.test(event)) {
        vm._hasHookEvent = true;
      }
    }
    return vm
  };

  Vue.prototype.$once = function (event, fn) {
    var vm = this;
    function on () {
      vm.$off(event, on);
      fn.apply(vm, arguments);
    }
    on.fn = fn;
    vm.$on(event, on);
    return vm
  };

  Vue.prototype.$off = function (event, fn) {
    var vm = this;
    // all
    if (!arguments.length) {
      vm._events = Object.create(null);
      return vm
    }
    // array of events
    if (Array.isArray(event)) {
      for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {
        vm.$off(event[i$1], fn);
      }
      return vm
    }
    // specific event
    var cbs = vm._events[event];
    if (!cbs) {
      return vm
    }
    if (!fn) {
      vm._events[event] = null;
      return vm
    }
    // specific handler
    var cb;
    var i = cbs.length;
    while (i--) {
      cb = cbs[i];
      if (cb === fn || cb.fn === fn) {
        cbs.splice(i, 1);
        break
      }
    }
    return vm
  };

  Vue.prototype.$emit = function (event) {
    var vm = this;
    if (true) {
      var lowerCaseEvent = event.toLowerCase();
      if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {
        tip(
          "Event \"" + lowerCaseEvent + "\" is emitted in component " +
          (formatComponentName(vm)) + " but the handler is registered for \"" + event + "\". " +
          "Note that HTML attributes are case-insensitive and you cannot use " +
          "v-on to listen to camelCase events when using in-DOM templates. " +
          "You should probably use \"" + (hyphenate(event)) + "\" instead of \"" + event + "\"."
        );
      }
    }
    var cbs = vm._events[event];
    if (cbs) {
      cbs = cbs.length > 1 ? toArray(cbs) : cbs;
      var args = toArray(arguments, 1);
      var info = "event handler for \"" + event + "\"";
      for (var i = 0, l = cbs.length; i < l; i++) {
        invokeWithErrorHandling(cbs[i], vm, args, vm, info);
      }
    }
    return vm
  };
}

/*  */

var activeInstance = null;
var isUpdatingChildComponent = false;

function setActiveInstance(vm) {
  var prevActiveInstance = activeInstance;
  activeInstance = vm;
  return function () {
    activeInstance = prevActiveInstance;
  }
}

function initLifecycle (vm) {
  var options = vm.$options;

  // locate first non-abstract parent
  var parent = options.parent;
  if (parent && !options.abstract) {
    while (parent.$options.abstract && parent.$parent) {
      parent = parent.$parent;
    }
    parent.$children.push(vm);
  }

  vm.$parent = parent;
  vm.$root = parent ? parent.$root : vm;

  vm.$children = [];
  vm.$refs = {};

  vm._watcher = null;
  vm._inactive = null;
  vm._directInactive = false;
  vm._isMounted = false;
  vm._isDestroyed = false;
  vm._isBeingDestroyed = false;
}

function lifecycleMixin (Vue) {
  Vue.prototype._update = function (vnode, hydrating) {
    var vm = this;
    var prevEl = vm.$el;
    var prevVnode = vm._vnode;
    var restoreActiveInstance = setActiveInstance(vm);
    vm._vnode = vnode;
    // Vue.prototype.__patch__ is injected in entry points
    // based on the rendering backend used.
    if (!prevVnode) {
      // initial render
      vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);
    } else {
      // updates
      vm.$el = vm.__patch__(prevVnode, vnode);
    }
    restoreActiveInstance();
    // update __vue__ reference
    if (prevEl) {
      prevEl.__vue__ = null;
    }
    if (vm.$el) {
      vm.$el.__vue__ = vm;
    }
    // if parent is an HOC, update its $el as well
    if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {
      vm.$parent.$el = vm.$el;
    }
    // updated hook is called by the scheduler to ensure that children are
    // updated in a parent's updated hook.
  };

  Vue.prototype.$forceUpdate = function () {
    var vm = this;
    if (vm._watcher) {
      vm._watcher.update();
    }
  };

  Vue.prototype.$destroy = function () {
    var vm = this;
    if (vm._isBeingDestroyed) {
      return
    }
    callHook(vm, 'beforeDestroy');
    vm._isBeingDestroyed = true;
    // remove self from parent
    var parent = vm.$parent;
    if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {
      remove(parent.$children, vm);
    }
    // teardown watchers
    if (vm._watcher) {
      vm._watcher.teardown();
    }
    var i = vm._watchers.length;
    while (i--) {
      vm._watchers[i].teardown();
    }
    // remove reference from data ob
    // frozen object may not have observer.
    if (vm._data.__ob__) {
      vm._data.__ob__.vmCount--;
    }
    // call the last hook...
    vm._isDestroyed = true;
    // invoke destroy hooks on current rendered tree
    vm.__patch__(vm._vnode, null);
    // fire destroyed hook
    callHook(vm, 'destroyed');
    // turn off all instance listeners.
    vm.$off();
    // remove __vue__ reference
    if (vm.$el) {
      vm.$el.__vue__ = null;
    }
    // release circular reference (#6759)
    if (vm.$vnode) {
      vm.$vnode.parent = null;
    }
  };
}

function updateChildComponent (
  vm,
  propsData,
  listeners,
  parentVnode,
  renderChildren
) {
  if (true) {
    isUpdatingChildComponent = true;
  }

  // determine whether component has slot children
  // we need to do this before overwriting $options._renderChildren.

  // check if there are dynamic scopedSlots (hand-written or compiled but with
  // dynamic slot names). Static scoped slots compiled from template has the
  // "$stable" marker.
  var newScopedSlots = parentVnode.data.scopedSlots;
  var oldScopedSlots = vm.$scopedSlots;
  var hasDynamicScopedSlot = !!(
    (newScopedSlots && !newScopedSlots.$stable) ||
    (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||
    (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)
  );

  // Any static slot children from the parent may have changed during parent's
  // update. Dynamic scoped slots may also have changed. In such cases, a forced
  // update is necessary to ensure correctness.
  var needsForceUpdate = !!(
    renderChildren ||               // has new static slots
    vm.$options._renderChildren ||  // has old static slots
    hasDynamicScopedSlot
  );

  vm.$options._parentVnode = parentVnode;
  vm.$vnode = parentVnode; // update vm's placeholder node without re-render

  if (vm._vnode) { // update child tree's parent
    vm._vnode.parent = parentVnode;
  }
  vm.$options._renderChildren = renderChildren;

  // update $attrs and $listeners hash
  // these are also reactive so they may trigger child update if the child
  // used them during render
  vm.$attrs = parentVnode.data.attrs || emptyObject;
  vm.$listeners = listeners || emptyObject;

  // update props
  if (propsData && vm.$options.props) {
    toggleObserving(false);
    var props = vm._props;
    var propKeys = vm.$options._propKeys || [];
    for (var i = 0; i < propKeys.length; i++) {
      var key = propKeys[i];
      var propOptions = vm.$options.props; // wtf flow?
      props[key] = validateProp(key, propOptions, propsData, vm);
    }
    toggleObserving(true);
    // keep a copy of raw propsData
    vm.$options.propsData = propsData;
  }
  
  // fixed by xxxxxx update properties(mp runtime)
  vm._$updateProperties && vm._$updateProperties(vm);
  
  // update listeners
  listeners = listeners || emptyObject;
  var oldListeners = vm.$options._parentListeners;
  vm.$options._parentListeners = listeners;
  updateComponentListeners(vm, listeners, oldListeners);

  // resolve slots + force update if has children
  if (needsForceUpdate) {
    vm.$slots = resolveSlots(renderChildren, parentVnode.context);
    vm.$forceUpdate();
  }

  if (true) {
    isUpdatingChildComponent = false;
  }
}

function isInInactiveTree (vm) {
  while (vm && (vm = vm.$parent)) {
    if (vm._inactive) { return true }
  }
  return false
}

function activateChildComponent (vm, direct) {
  if (direct) {
    vm._directInactive = false;
    if (isInInactiveTree(vm)) {
      return
    }
  } else if (vm._directInactive) {
    return
  }
  if (vm._inactive || vm._inactive === null) {
    vm._inactive = false;
    for (var i = 0; i < vm.$children.length; i++) {
      activateChildComponent(vm.$children[i]);
    }
    callHook(vm, 'activated');
  }
}

function deactivateChildComponent (vm, direct) {
  if (direct) {
    vm._directInactive = true;
    if (isInInactiveTree(vm)) {
      return
    }
  }
  if (!vm._inactive) {
    vm._inactive = true;
    for (var i = 0; i < vm.$children.length; i++) {
      deactivateChildComponent(vm.$children[i]);
    }
    callHook(vm, 'deactivated');
  }
}

function callHook (vm, hook) {
  // #7573 disable dep collection when invoking lifecycle hooks
  pushTarget();
  var handlers = vm.$options[hook];
  var info = hook + " hook";
  if (handlers) {
    for (var i = 0, j = handlers.length; i < j; i++) {
      invokeWithErrorHandling(handlers[i], vm, null, vm, info);
    }
  }
  if (vm._hasHookEvent) {
    vm.$emit('hook:' + hook);
  }
  popTarget();
}

/*  */

var MAX_UPDATE_COUNT = 100;

var queue = [];
var activatedChildren = [];
var has = {};
var circular = {};
var waiting = false;
var flushing = false;
var index = 0;

/**
 * Reset the scheduler's state.
 */
function resetSchedulerState () {
  index = queue.length = activatedChildren.length = 0;
  has = {};
  if (true) {
    circular = {};
  }
  waiting = flushing = false;
}

// Async edge case #6566 requires saving the timestamp when event listeners are
// attached. However, calling performance.now() has a perf overhead especially
// if the page has thousands of event listeners. Instead, we take a timestamp
// every time the scheduler flushes and use that for all event listeners
// attached during that flush.
var currentFlushTimestamp = 0;

// Async edge case fix requires storing an event listener's attach timestamp.
var getNow = Date.now;

// Determine what event timestamp the browser is using. Annoyingly, the
// timestamp can either be hi-res (relative to page load) or low-res
// (relative to UNIX epoch), so in order to compare time we have to use the
// same timestamp type when saving the flush timestamp.
// All IE versions use low-res event timestamps, and have problematic clock
// implementations (#9632)
if (inBrowser && !isIE) {
  var performance = window.performance;
  if (
    performance &&
    typeof performance.now === 'function' &&
    getNow() > document.createEvent('Event').timeStamp
  ) {
    // if the event timestamp, although evaluated AFTER the Date.now(), is
    // smaller than it, it means the event is using a hi-res timestamp,
    // and we need to use the hi-res version for event listener timestamps as
    // well.
    getNow = function () { return performance.now(); };
  }
}

/**
 * Flush both queues and run the watchers.
 */
function flushSchedulerQueue () {
  currentFlushTimestamp = getNow();
  flushing = true;
  var watcher, id;

  // Sort queue before flush.
  // This ensures that:
  // 1. Components are updated from parent to child. (because parent is always
  //    created before the child)
  // 2. A component's user watchers are run before its render watcher (because
  //    user watchers are created before the render watcher)
  // 3. If a component is destroyed during a parent component's watcher run,
  //    its watchers can be skipped.
  queue.sort(function (a, b) { return a.id - b.id; });

  // do not cache length because more watchers might be pushed
  // as we run existing watchers
  for (index = 0; index < queue.length; index++) {
    watcher = queue[index];
    if (watcher.before) {
      watcher.before();
    }
    id = watcher.id;
    has[id] = null;
    watcher.run();
    // in dev build, check and stop circular updates.
    if ( true && has[id] != null) {
      circular[id] = (circular[id] || 0) + 1;
      if (circular[id] > MAX_UPDATE_COUNT) {
        warn(
          'You may have an infinite update loop ' + (
            watcher.user
              ? ("in watcher with expression \"" + (watcher.expression) + "\"")
              : "in a component render function."
          ),
          watcher.vm
        );
        break
      }
    }
  }

  // keep copies of post queues before resetting state
  var activatedQueue = activatedChildren.slice();
  var updatedQueue = queue.slice();

  resetSchedulerState();

  // call component updated and activated hooks
  callActivatedHooks(activatedQueue);
  callUpdatedHooks(updatedQueue);

  // devtool hook
  /* istanbul ignore if */
  if (devtools && config.devtools) {
    devtools.emit('flush');
  }
}

function callUpdatedHooks (queue) {
  var i = queue.length;
  while (i--) {
    var watcher = queue[i];
    var vm = watcher.vm;
    if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {
      callHook(vm, 'updated');
    }
  }
}

/**
 * Queue a kept-alive component that was activated during patch.
 * The queue will be processed after the entire tree has been patched.
 */
function queueActivatedComponent (vm) {
  // setting _inactive to false here so that a render function can
  // rely on checking whether it's in an inactive tree (e.g. router-view)
  vm._inactive = false;
  activatedChildren.push(vm);
}

function callActivatedHooks (queue) {
  for (var i = 0; i < queue.length; i++) {
    queue[i]._inactive = true;
    activateChildComponent(queue[i], true /* true */);
  }
}

/**
 * Push a watcher into the watcher queue.
 * Jobs with duplicate IDs will be skipped unless it's
 * pushed when the queue is being flushed.
 */
function queueWatcher (watcher) {
  var id = watcher.id;
  if (has[id] == null) {
    has[id] = true;
    if (!flushing) {
      queue.push(watcher);
    } else {
      // if already flushing, splice the watcher based on its id
      // if already past its id, it will be run next immediately.
      var i = queue.length - 1;
      while (i > index && queue[i].id > watcher.id) {
        i--;
      }
      queue.splice(i + 1, 0, watcher);
    }
    // queue the flush
    if (!waiting) {
      waiting = true;

      if ( true && !config.async) {
        flushSchedulerQueue();
        return
      }
      nextTick(flushSchedulerQueue);
    }
  }
}

/*  */



var uid$2 = 0;

/**
 * A watcher parses an expression, collects dependencies,
 * and fires callback when the expression value changes.
 * This is used for both the $watch() api and directives.
 */
var Watcher = function Watcher (
  vm,
  expOrFn,
  cb,
  options,
  isRenderWatcher
) {
  this.vm = vm;
  if (isRenderWatcher) {
    vm._watcher = this;
  }
  vm._watchers.push(this);
  // options
  if (options) {
    this.deep = !!options.deep;
    this.user = !!options.user;
    this.lazy = !!options.lazy;
    this.sync = !!options.sync;
    this.before = options.before;
  } else {
    this.deep = this.user = this.lazy = this.sync = false;
  }
  this.cb = cb;
  this.id = ++uid$2; // uid for batching
  this.active = true;
  this.dirty = this.lazy; // for lazy watchers
  this.deps = [];
  this.newDeps = [];
  this.depIds = new _Set();
  this.newDepIds = new _Set();
  this.expression =  true
    ? expOrFn.toString()
    : undefined;
  // parse expression for getter
  if (typeof expOrFn === 'function') {
    this.getter = expOrFn;
  } else {
    this.getter = parsePath(expOrFn);
    if (!this.getter) {
      this.getter = noop;
       true && warn(
        "Failed watching path: \"" + expOrFn + "\" " +
        'Watcher only accepts simple dot-delimited paths. ' +
        'For full control, use a function instead.',
        vm
      );
    }
  }
  this.value = this.lazy
    ? undefined
    : this.get();
};

/**
 * Evaluate the getter, and re-collect dependencies.
 */
Watcher.prototype.get = function get () {
  pushTarget(this);
  var value;
  var vm = this.vm;
  try {
    value = this.getter.call(vm, vm);
  } catch (e) {
    if (this.user) {
      handleError(e, vm, ("getter for watcher \"" + (this.expression) + "\""));
    } else {
      throw e
    }
  } finally {
    // "touch" every property so they are all tracked as
    // dependencies for deep watching
    if (this.deep) {
      traverse(value);
    }
    popTarget();
    this.cleanupDeps();
  }
  return value
};

/**
 * Add a dependency to this directive.
 */
Watcher.prototype.addDep = function addDep (dep) {
  var id = dep.id;
  if (!this.newDepIds.has(id)) {
    this.newDepIds.add(id);
    this.newDeps.push(dep);
    if (!this.depIds.has(id)) {
      dep.addSub(this);
    }
  }
};

/**
 * Clean up for dependency collection.
 */
Watcher.prototype.cleanupDeps = function cleanupDeps () {
  var i = this.deps.length;
  while (i--) {
    var dep = this.deps[i];
    if (!this.newDepIds.has(dep.id)) {
      dep.removeSub(this);
    }
  }
  var tmp = this.depIds;
  this.depIds = this.newDepIds;
  this.newDepIds = tmp;
  this.newDepIds.clear();
  tmp = this.deps;
  this.deps = this.newDeps;
  this.newDeps = tmp;
  this.newDeps.length = 0;
};

/**
 * Subscriber interface.
 * Will be called when a dependency changes.
 */
Watcher.prototype.update = function update () {
  /* istanbul ignore else */
  if (this.lazy) {
    this.dirty = true;
  } else if (this.sync) {
    this.run();
  } else {
    queueWatcher(this);
  }
};

/**
 * Scheduler job interface.
 * Will be called by the scheduler.
 */
Watcher.prototype.run = function run () {
  if (this.active) {
    var value = this.get();
    if (
      value !== this.value ||
      // Deep watchers and watchers on Object/Arrays should fire even
      // when the value is the same, because the value may
      // have mutated.
      isObject(value) ||
      this.deep
    ) {
      // set new value
      var oldValue = this.value;
      this.value = value;
      if (this.user) {
        try {
          this.cb.call(this.vm, value, oldValue);
        } catch (e) {
          handleError(e, this.vm, ("callback for watcher \"" + (this.expression) + "\""));
        }
      } else {
        this.cb.call(this.vm, value, oldValue);
      }
    }
  }
};

/**
 * Evaluate the value of the watcher.
 * This only gets called for lazy watchers.
 */
Watcher.prototype.evaluate = function evaluate () {
  this.value = this.get();
  this.dirty = false;
};

/**
 * Depend on all deps collected by this watcher.
 */
Watcher.prototype.depend = function depend () {
  var i = this.deps.length;
  while (i--) {
    this.deps[i].depend();
  }
};

/**
 * Remove self from all dependencies' subscriber list.
 */
Watcher.prototype.teardown = function teardown () {
  if (this.active) {
    // remove self from vm's watcher list
    // this is a somewhat expensive operation so we skip it
    // if the vm is being destroyed.
    if (!this.vm._isBeingDestroyed) {
      remove(this.vm._watchers, this);
    }
    var i = this.deps.length;
    while (i--) {
      this.deps[i].removeSub(this);
    }
    this.active = false;
  }
};

/*  */

var sharedPropertyDefinition = {
  enumerable: true,
  configurable: true,
  get: noop,
  set: noop
};

function proxy (target, sourceKey, key) {
  sharedPropertyDefinition.get = function proxyGetter () {
    return this[sourceKey][key]
  };
  sharedPropertyDefinition.set = function proxySetter (val) {
    this[sourceKey][key] = val;
  };
  Object.defineProperty(target, key, sharedPropertyDefinition);
}

function initState (vm) {
  vm._watchers = [];
  var opts = vm.$options;
  if (opts.props) { initProps(vm, opts.props); }
  if (opts.methods) { initMethods(vm, opts.methods); }
  if (opts.data) {
    initData(vm);
  } else {
    observe(vm._data = {}, true /* asRootData */);
  }
  if (opts.computed) { initComputed(vm, opts.computed); }
  if (opts.watch && opts.watch !== nativeWatch) {
    initWatch(vm, opts.watch);
  }
}

function initProps (vm, propsOptions) {
  var propsData = vm.$options.propsData || {};
  var props = vm._props = {};
  // cache prop keys so that future props updates can iterate using Array
  // instead of dynamic object key enumeration.
  var keys = vm.$options._propKeys = [];
  var isRoot = !vm.$parent;
  // root instance props should be converted
  if (!isRoot) {
    toggleObserving(false);
  }
  var loop = function ( key ) {
    keys.push(key);
    var value = validateProp(key, propsOptions, propsData, vm);
    /* istanbul ignore else */
    if (true) {
      var hyphenatedKey = hyphenate(key);
      if (isReservedAttribute(hyphenatedKey) ||
          config.isReservedAttr(hyphenatedKey)) {
        warn(
          ("\"" + hyphenatedKey + "\" is a reserved attribute and cannot be used as component prop."),
          vm
        );
      }
      defineReactive$$1(props, key, value, function () {
        if (!isRoot && !isUpdatingChildComponent) {
          {
            if(vm.mpHost === 'mp-baidu' || vm.mpHost === 'mp-kuaishou' || vm.mpHost === 'mp-xhs'){//百度、快手、小红书 observer 在 setData callback 之后触发，直接忽略该 warn
                return
            }
            //fixed by xxxxxx __next_tick_pending,uni://form-field 时不告警
            if(
                key === 'value' && 
                Array.isArray(vm.$options.behaviors) &&
                vm.$options.behaviors.indexOf('uni://form-field') !== -1
              ){
              return
            }
            if(vm._getFormData){
              return
            }
            var $parent = vm.$parent;
            while($parent){
              if($parent.__next_tick_pending){
                return  
              }
              $parent = $parent.$parent;
            }
          }
          warn(
            "Avoid mutating a prop directly since the value will be " +
            "overwritten whenever the parent component re-renders. " +
            "Instead, use a data or computed property based on the prop's " +
            "value. Prop being mutated: \"" + key + "\"",
            vm
          );
        }
      });
    } else {}
    // static props are already proxied on the component's prototype
    // during Vue.extend(). We only need to proxy props defined at
    // instantiation here.
    if (!(key in vm)) {
      proxy(vm, "_props", key);
    }
  };

  for (var key in propsOptions) loop( key );
  toggleObserving(true);
}

function initData (vm) {
  var data = vm.$options.data;
  data = vm._data = typeof data === 'function'
    ? getData(data, vm)
    : data || {};
  if (!isPlainObject(data)) {
    data = {};
     true && warn(
      'data functions should return an object:\n' +
      'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
      vm
    );
  }
  // proxy data on instance
  var keys = Object.keys(data);
  var props = vm.$options.props;
  var methods = vm.$options.methods;
  var i = keys.length;
  while (i--) {
    var key = keys[i];
    if (true) {
      if (methods && hasOwn(methods, key)) {
        warn(
          ("Method \"" + key + "\" has already been defined as a data property."),
          vm
        );
      }
    }
    if (props && hasOwn(props, key)) {
       true && warn(
        "The data property \"" + key + "\" is already declared as a prop. " +
        "Use prop default value instead.",
        vm
      );
    } else if (!isReserved(key)) {
      proxy(vm, "_data", key);
    }
  }
  // observe data
  observe(data, true /* asRootData */);
}

function getData (data, vm) {
  // #7573 disable dep collection when invoking data getters
  pushTarget();
  try {
    return data.call(vm, vm)
  } catch (e) {
    handleError(e, vm, "data()");
    return {}
  } finally {
    popTarget();
  }
}

var computedWatcherOptions = { lazy: true };

function initComputed (vm, computed) {
  // $flow-disable-line
  var watchers = vm._computedWatchers = Object.create(null);
  // computed properties are just getters during SSR
  var isSSR = isServerRendering();

  for (var key in computed) {
    var userDef = computed[key];
    var getter = typeof userDef === 'function' ? userDef : userDef.get;
    if ( true && getter == null) {
      warn(
        ("Getter is missing for computed property \"" + key + "\"."),
        vm
      );
    }

    if (!isSSR) {
      // create internal watcher for the computed property.
      watchers[key] = new Watcher(
        vm,
        getter || noop,
        noop,
        computedWatcherOptions
      );
    }

    // component-defined computed properties are already defined on the
    // component prototype. We only need to define computed properties defined
    // at instantiation here.
    if (!(key in vm)) {
      defineComputed(vm, key, userDef);
    } else if (true) {
      if (key in vm.$data) {
        warn(("The computed property \"" + key + "\" is already defined in data."), vm);
      } else if (vm.$options.props && key in vm.$options.props) {
        warn(("The computed property \"" + key + "\" is already defined as a prop."), vm);
      }
    }
  }
}

function defineComputed (
  target,
  key,
  userDef
) {
  var shouldCache = !isServerRendering();
  if (typeof userDef === 'function') {
    sharedPropertyDefinition.get = shouldCache
      ? createComputedGetter(key)
      : createGetterInvoker(userDef);
    sharedPropertyDefinition.set = noop;
  } else {
    sharedPropertyDefinition.get = userDef.get
      ? shouldCache && userDef.cache !== false
        ? createComputedGetter(key)
        : createGetterInvoker(userDef.get)
      : noop;
    sharedPropertyDefinition.set = userDef.set || noop;
  }
  if ( true &&
      sharedPropertyDefinition.set === noop) {
    sharedPropertyDefinition.set = function () {
      warn(
        ("Computed property \"" + key + "\" was assigned to but it has no setter."),
        this
      );
    };
  }
  Object.defineProperty(target, key, sharedPropertyDefinition);
}

function createComputedGetter (key) {
  return function computedGetter () {
    var watcher = this._computedWatchers && this._computedWatchers[key];
    if (watcher) {
      if (watcher.dirty) {
        watcher.evaluate();
      }
      if (Dep.SharedObject.target) {// fixed by xxxxxx
        watcher.depend();
      }
      return watcher.value
    }
  }
}

function createGetterInvoker(fn) {
  return function computedGetter () {
    return fn.call(this, this)
  }
}

function initMethods (vm, methods) {
  var props = vm.$options.props;
  for (var key in methods) {
    if (true) {
      if (typeof methods[key] !== 'function') {
        warn(
          "Method \"" + key + "\" has type \"" + (typeof methods[key]) + "\" in the component definition. " +
          "Did you reference the function correctly?",
          vm
        );
      }
      if (props && hasOwn(props, key)) {
        warn(
          ("Method \"" + key + "\" has already been defined as a prop."),
          vm
        );
      }
      if ((key in vm) && isReserved(key)) {
        warn(
          "Method \"" + key + "\" conflicts with an existing Vue instance method. " +
          "Avoid defining component methods that start with _ or $."
        );
      }
    }
    vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);
  }
}

function initWatch (vm, watch) {
  for (var key in watch) {
    var handler = watch[key];
    if (Array.isArray(handler)) {
      for (var i = 0; i < handler.length; i++) {
        createWatcher(vm, key, handler[i]);
      }
    } else {
      createWatcher(vm, key, handler);
    }
  }
}

function createWatcher (
  vm,
  expOrFn,
  handler,
  options
) {
  if (isPlainObject(handler)) {
    options = handler;
    handler = handler.handler;
  }
  if (typeof handler === 'string') {
    handler = vm[handler];
  }
  return vm.$watch(expOrFn, handler, options)
}

function stateMixin (Vue) {
  // flow somehow has problems with directly declared definition object
  // when using Object.defineProperty, so we have to procedurally build up
  // the object here.
  var dataDef = {};
  dataDef.get = function () { return this._data };
  var propsDef = {};
  propsDef.get = function () { return this._props };
  if (true) {
    dataDef.set = function () {
      warn(
        'Avoid replacing instance root $data. ' +
        'Use nested data properties instead.',
        this
      );
    };
    propsDef.set = function () {
      warn("$props is readonly.", this);
    };
  }
  Object.defineProperty(Vue.prototype, '$data', dataDef);
  Object.defineProperty(Vue.prototype, '$props', propsDef);

  Vue.prototype.$set = set;
  Vue.prototype.$delete = del;

  Vue.prototype.$watch = function (
    expOrFn,
    cb,
    options
  ) {
    var vm = this;
    if (isPlainObject(cb)) {
      return createWatcher(vm, expOrFn, cb, options)
    }
    options = options || {};
    options.user = true;
    var watcher = new Watcher(vm, expOrFn, cb, options);
    if (options.immediate) {
      try {
        cb.call(vm, watcher.value);
      } catch (error) {
        handleError(error, vm, ("callback for immediate watcher \"" + (watcher.expression) + "\""));
      }
    }
    return function unwatchFn () {
      watcher.teardown();
    }
  };
}

/*  */

var uid$3 = 0;

function initMixin (Vue) {
  Vue.prototype._init = function (options) {
    var vm = this;
    // a uid
    vm._uid = uid$3++;

    var startTag, endTag;
    /* istanbul ignore if */
    if ( true && config.performance && mark) {
      startTag = "vue-perf-start:" + (vm._uid);
      endTag = "vue-perf-end:" + (vm._uid);
      mark(startTag);
    }

    // a flag to avoid this being observed
    vm._isVue = true;
    // merge options
    if (options && options._isComponent) {
      // optimize internal component instantiation
      // since dynamic options merging is pretty slow, and none of the
      // internal component options needs special treatment.
      initInternalComponent(vm, options);
    } else {
      vm.$options = mergeOptions(
        resolveConstructorOptions(vm.constructor),
        options || {},
        vm
      );
    }
    /* istanbul ignore else */
    if (true) {
      initProxy(vm);
    } else {}
    // expose real self
    vm._self = vm;
    initLifecycle(vm);
    initEvents(vm);
    initRender(vm);
    callHook(vm, 'beforeCreate');
    !vm._$fallback && initInjections(vm); // resolve injections before data/props  
    initState(vm);
    !vm._$fallback && initProvide(vm); // resolve provide after data/props
    !vm._$fallback && callHook(vm, 'created');      

    /* istanbul ignore if */
    if ( true && config.performance && mark) {
      vm._name = formatComponentName(vm, false);
      mark(endTag);
      measure(("vue " + (vm._name) + " init"), startTag, endTag);
    }

    if (vm.$options.el) {
      vm.$mount(vm.$options.el);
    }
  };
}

function initInternalComponent (vm, options) {
  var opts = vm.$options = Object.create(vm.constructor.options);
  // doing this because it's faster than dynamic enumeration.
  var parentVnode = options._parentVnode;
  opts.parent = options.parent;
  opts._parentVnode = parentVnode;

  var vnodeComponentOptions = parentVnode.componentOptions;
  opts.propsData = vnodeComponentOptions.propsData;
  opts._parentListeners = vnodeComponentOptions.listeners;
  opts._renderChildren = vnodeComponentOptions.children;
  opts._componentTag = vnodeComponentOptions.tag;

  if (options.render) {
    opts.render = options.render;
    opts.staticRenderFns = options.staticRenderFns;
  }
}

function resolveConstructorOptions (Ctor) {
  var options = Ctor.options;
  if (Ctor.super) {
    var superOptions = resolveConstructorOptions(Ctor.super);
    var cachedSuperOptions = Ctor.superOptions;
    if (superOptions !== cachedSuperOptions) {
      // super option changed,
      // need to resolve new options.
      Ctor.superOptions = superOptions;
      // check if there are any late-modified/attached options (#4976)
      var modifiedOptions = resolveModifiedOptions(Ctor);
      // update base extend options
      if (modifiedOptions) {
        extend(Ctor.extendOptions, modifiedOptions);
      }
      options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);
      if (options.name) {
        options.components[options.name] = Ctor;
      }
    }
  }
  return options
}

function resolveModifiedOptions (Ctor) {
  var modified;
  var latest = Ctor.options;
  var sealed = Ctor.sealedOptions;
  for (var key in latest) {
    if (latest[key] !== sealed[key]) {
      if (!modified) { modified = {}; }
      modified[key] = latest[key];
    }
  }
  return modified
}

function Vue (options) {
  if ( true &&
    !(this instanceof Vue)
  ) {
    warn('Vue is a constructor and should be called with the `new` keyword');
  }
  this._init(options);
}

initMixin(Vue);
stateMixin(Vue);
eventsMixin(Vue);
lifecycleMixin(Vue);
renderMixin(Vue);

/*  */

function initUse (Vue) {
  Vue.use = function (plugin) {
    var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));
    if (installedPlugins.indexOf(plugin) > -1) {
      return this
    }

    // additional parameters
    var args = toArray(arguments, 1);
    args.unshift(this);
    if (typeof plugin.install === 'function') {
      plugin.install.apply(plugin, args);
    } else if (typeof plugin === 'function') {
      plugin.apply(null, args);
    }
    installedPlugins.push(plugin);
    return this
  };
}

/*  */

function initMixin$1 (Vue) {
  Vue.mixin = function (mixin) {
    this.options = mergeOptions(this.options, mixin);
    return this
  };
}

/*  */

function initExtend (Vue) {
  /**
   * Each instance constructor, including Vue, has a unique
   * cid. This enables us to create wrapped "child
   * constructors" for prototypal inheritance and cache them.
   */
  Vue.cid = 0;
  var cid = 1;

  /**
   * Class inheritance
   */
  Vue.extend = function (extendOptions) {
    extendOptions = extendOptions || {};
    var Super = this;
    var SuperId = Super.cid;
    var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});
    if (cachedCtors[SuperId]) {
      return cachedCtors[SuperId]
    }

    var name = extendOptions.name || Super.options.name;
    if ( true && name) {
      validateComponentName(name);
    }

    var Sub = function VueComponent (options) {
      this._init(options);
    };
    Sub.prototype = Object.create(Super.prototype);
    Sub.prototype.constructor = Sub;
    Sub.cid = cid++;
    Sub.options = mergeOptions(
      Super.options,
      extendOptions
    );
    Sub['super'] = Super;

    // For props and computed properties, we define the proxy getters on
    // the Vue instances at extension time, on the extended prototype. This
    // avoids Object.defineProperty calls for each instance created.
    if (Sub.options.props) {
      initProps$1(Sub);
    }
    if (Sub.options.computed) {
      initComputed$1(Sub);
    }

    // allow further extension/mixin/plugin usage
    Sub.extend = Super.extend;
    Sub.mixin = Super.mixin;
    Sub.use = Super.use;

    // create asset registers, so extended classes
    // can have their private assets too.
    ASSET_TYPES.forEach(function (type) {
      Sub[type] = Super[type];
    });
    // enable recursive self-lookup
    if (name) {
      Sub.options.components[name] = Sub;
    }

    // keep a reference to the super options at extension time.
    // later at instantiation we can check if Super's options have
    // been updated.
    Sub.superOptions = Super.options;
    Sub.extendOptions = extendOptions;
    Sub.sealedOptions = extend({}, Sub.options);

    // cache constructor
    cachedCtors[SuperId] = Sub;
    return Sub
  };
}

function initProps$1 (Comp) {
  var props = Comp.options.props;
  for (var key in props) {
    proxy(Comp.prototype, "_props", key);
  }
}

function initComputed$1 (Comp) {
  var computed = Comp.options.computed;
  for (var key in computed) {
    defineComputed(Comp.prototype, key, computed[key]);
  }
}

/*  */

function initAssetRegisters (Vue) {
  /**
   * Create asset registration methods.
   */
  ASSET_TYPES.forEach(function (type) {
    Vue[type] = function (
      id,
      definition
    ) {
      if (!definition) {
        return this.options[type + 's'][id]
      } else {
        /* istanbul ignore if */
        if ( true && type === 'component') {
          validateComponentName(id);
        }
        if (type === 'component' && isPlainObject(definition)) {
          definition.name = definition.name || id;
          definition = this.options._base.extend(definition);
        }
        if (type === 'directive' && typeof definition === 'function') {
          definition = { bind: definition, update: definition };
        }
        this.options[type + 's'][id] = definition;
        return definition
      }
    };
  });
}

/*  */



function getComponentName (opts) {
  return opts && (opts.Ctor.options.name || opts.tag)
}

function matches (pattern, name) {
  if (Array.isArray(pattern)) {
    return pattern.indexOf(name) > -1
  } else if (typeof pattern === 'string') {
    return pattern.split(',').indexOf(name) > -1
  } else if (isRegExp(pattern)) {
    return pattern.test(name)
  }
  /* istanbul ignore next */
  return false
}

function pruneCache (keepAliveInstance, filter) {
  var cache = keepAliveInstance.cache;
  var keys = keepAliveInstance.keys;
  var _vnode = keepAliveInstance._vnode;
  for (var key in cache) {
    var cachedNode = cache[key];
    if (cachedNode) {
      var name = getComponentName(cachedNode.componentOptions);
      if (name && !filter(name)) {
        pruneCacheEntry(cache, key, keys, _vnode);
      }
    }
  }
}

function pruneCacheEntry (
  cache,
  key,
  keys,
  current
) {
  var cached$$1 = cache[key];
  if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {
    cached$$1.componentInstance.$destroy();
  }
  cache[key] = null;
  remove(keys, key);
}

var patternTypes = [String, RegExp, Array];

var KeepAlive = {
  name: 'keep-alive',
  abstract: true,

  props: {
    include: patternTypes,
    exclude: patternTypes,
    max: [String, Number]
  },

  created: function created () {
    this.cache = Object.create(null);
    this.keys = [];
  },

  destroyed: function destroyed () {
    for (var key in this.cache) {
      pruneCacheEntry(this.cache, key, this.keys);
    }
  },

  mounted: function mounted () {
    var this$1 = this;

    this.$watch('include', function (val) {
      pruneCache(this$1, function (name) { return matches(val, name); });
    });
    this.$watch('exclude', function (val) {
      pruneCache(this$1, function (name) { return !matches(val, name); });
    });
  },

  render: function render () {
    var slot = this.$slots.default;
    var vnode = getFirstComponentChild(slot);
    var componentOptions = vnode && vnode.componentOptions;
    if (componentOptions) {
      // check pattern
      var name = getComponentName(componentOptions);
      var ref = this;
      var include = ref.include;
      var exclude = ref.exclude;
      if (
        // not included
        (include && (!name || !matches(include, name))) ||
        // excluded
        (exclude && name && matches(exclude, name))
      ) {
        return vnode
      }

      var ref$1 = this;
      var cache = ref$1.cache;
      var keys = ref$1.keys;
      var key = vnode.key == null
        // same constructor may get registered as different local components
        // so cid alone is not enough (#3269)
        ? componentOptions.Ctor.cid + (componentOptions.tag ? ("::" + (componentOptions.tag)) : '')
        : vnode.key;
      if (cache[key]) {
        vnode.componentInstance = cache[key].componentInstance;
        // make current key freshest
        remove(keys, key);
        keys.push(key);
      } else {
        cache[key] = vnode;
        keys.push(key);
        // prune oldest entry
        if (this.max && keys.length > parseInt(this.max)) {
          pruneCacheEntry(cache, keys[0], keys, this._vnode);
        }
      }

      vnode.data.keepAlive = true;
    }
    return vnode || (slot && slot[0])
  }
};

var builtInComponents = {
  KeepAlive: KeepAlive
};

/*  */

function initGlobalAPI (Vue) {
  // config
  var configDef = {};
  configDef.get = function () { return config; };
  if (true) {
    configDef.set = function () {
      warn(
        'Do not replace the Vue.config object, set individual fields instead.'
      );
    };
  }
  Object.defineProperty(Vue, 'config', configDef);

  // exposed util methods.
  // NOTE: these are not considered part of the public API - avoid relying on
  // them unless you are aware of the risk.
  Vue.util = {
    warn: warn,
    extend: extend,
    mergeOptions: mergeOptions,
    defineReactive: defineReactive$$1
  };

  Vue.set = set;
  Vue.delete = del;
  Vue.nextTick = nextTick;

  // 2.6 explicit observable API
  Vue.observable = function (obj) {
    observe(obj);
    return obj
  };

  Vue.options = Object.create(null);
  ASSET_TYPES.forEach(function (type) {
    Vue.options[type + 's'] = Object.create(null);
  });

  // this is used to identify the "base" constructor to extend all plain-object
  // components with in Weex's multi-instance scenarios.
  Vue.options._base = Vue;

  extend(Vue.options.components, builtInComponents);

  initUse(Vue);
  initMixin$1(Vue);
  initExtend(Vue);
  initAssetRegisters(Vue);
}

initGlobalAPI(Vue);

Object.defineProperty(Vue.prototype, '$isServer', {
  get: isServerRendering
});

Object.defineProperty(Vue.prototype, '$ssrContext', {
  get: function get () {
    /* istanbul ignore next */
    return this.$vnode && this.$vnode.ssrContext
  }
});

// expose FunctionalRenderContext for ssr runtime helper installation
Object.defineProperty(Vue, 'FunctionalRenderContext', {
  value: FunctionalRenderContext
});

Vue.version = '2.6.11';

/**
 * https://raw.githubusercontent.com/Tencent/westore/master/packages/westore/utils/diff.js
 */
var ARRAYTYPE = '[object Array]';
var OBJECTTYPE = '[object Object]';
var NULLTYPE = '[object Null]';
var UNDEFINEDTYPE = '[object Undefined]';
// const FUNCTIONTYPE = '[object Function]'

function diff(current, pre) {
    var result = {};
    syncKeys(current, pre);
    _diff(current, pre, '', result);
    return result
}

function syncKeys(current, pre) {
    if (current === pre) { return }
    var rootCurrentType = type(current);
    var rootPreType = type(pre);
    if (rootCurrentType == OBJECTTYPE && rootPreType == OBJECTTYPE) {
        if(Object.keys(current).length >= Object.keys(pre).length){
            for (var key in pre) {
                var currentValue = current[key];
                if (currentValue === undefined) {
                    current[key] = null;
                } else {
                    syncKeys(currentValue, pre[key]);
                }
            }
        }
    } else if (rootCurrentType == ARRAYTYPE && rootPreType == ARRAYTYPE) {
        if (current.length >= pre.length) {
            pre.forEach(function (item, index) {
                syncKeys(current[index], item);
            });
        }
    }
}

function nullOrUndefined(currentType, preType) {
    if(
        (currentType === NULLTYPE || currentType === UNDEFINEDTYPE) && 
        (preType === NULLTYPE || preType === UNDEFINEDTYPE)
    ) {
        return false
    }
    return true
}

function _diff(current, pre, path, result) {
    if (current === pre) { return }
    var rootCurrentType = type(current);
    var rootPreType = type(pre);
    if (rootCurrentType == OBJECTTYPE) {
        if (rootPreType != OBJECTTYPE || Object.keys(current).length < Object.keys(pre).length) {
            setResult(result, path, current);
        } else {
            var loop = function ( key ) {
                var currentValue = current[key];
                var preValue = pre[key];
                var currentType = type(currentValue);
                var preType = type(preValue);
                if (currentType != ARRAYTYPE && currentType != OBJECTTYPE) {
                    if (currentValue !== pre[key] && nullOrUndefined(currentType, preType)) {
                        setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
                    }
                } else if (currentType == ARRAYTYPE) {
                    if (preType != ARRAYTYPE) {
                        setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
                    } else {
                        if (currentValue.length < preValue.length) {
                            setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
                        } else {
                            currentValue.forEach(function (item, index) {
                                _diff(item, preValue[index], (path == '' ? '' : path + ".") + key + '[' + index + ']', result);
                            });
                        }
                    }
                } else if (currentType == OBJECTTYPE) {
                    if (preType != OBJECTTYPE || Object.keys(currentValue).length < Object.keys(preValue).length) {
                        setResult(result, (path == '' ? '' : path + ".") + key, currentValue);
                    } else {
                        for (var subKey in currentValue) {
                            _diff(currentValue[subKey], preValue[subKey], (path == '' ? '' : path + ".") + key + '.' + subKey, result);
                        }
                    }
                }
            };

            for (var key in current) loop( key );
        }
    } else if (rootCurrentType == ARRAYTYPE) {
        if (rootPreType != ARRAYTYPE) {
            setResult(result, path, current);
        } else {
            if (current.length < pre.length) {
                setResult(result, path, current);
            } else {
                current.forEach(function (item, index) {
                    _diff(item, pre[index], path + '[' + index + ']', result);
                });
            }
        }
    } else {
        setResult(result, path, current);
    }
}

function setResult(result, k, v) {
    // if (type(v) != FUNCTIONTYPE) {
        result[k] = v;
    // }
}

function type(obj) {
    return Object.prototype.toString.call(obj)
}

/*  */

function flushCallbacks$1(vm) {
    if (vm.__next_tick_callbacks && vm.__next_tick_callbacks.length) {
        if (Object({"NODE_ENV":"development","VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"候选人","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
            var mpInstance = vm.$scope;
            console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
                ']:flushCallbacks[' + vm.__next_tick_callbacks.length + ']');
        }
        var copies = vm.__next_tick_callbacks.slice(0);
        vm.__next_tick_callbacks.length = 0;
        for (var i = 0; i < copies.length; i++) {
            copies[i]();
        }
    }
}

function hasRenderWatcher(vm) {
    return queue.find(function (watcher) { return vm._watcher === watcher; })
}

function nextTick$1(vm, cb) {
    //1.nextTick 之前 已 setData 且 setData 还未回调完成
    //2.nextTick 之前存在 render watcher
    if (!vm.__next_tick_pending && !hasRenderWatcher(vm)) {
        if(Object({"NODE_ENV":"development","VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"候选人","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG){
            var mpInstance = vm.$scope;
            console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + vm._uid +
                ']:nextVueTick');
        }
        return nextTick(cb, vm)
    }else{
        if(Object({"NODE_ENV":"development","VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"候选人","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG){
            var mpInstance$1 = vm.$scope;
            console.log('[' + (+new Date) + '][' + (mpInstance$1.is || mpInstance$1.route) + '][' + vm._uid +
                ']:nextMPTick');
        }
    }
    var _resolve;
    if (!vm.__next_tick_callbacks) {
        vm.__next_tick_callbacks = [];
    }
    vm.__next_tick_callbacks.push(function () {
        if (cb) {
            try {
                cb.call(vm);
            } catch (e) {
                handleError(e, vm, 'nextTick');
            }
        } else if (_resolve) {
            _resolve(vm);
        }
    });
    // $flow-disable-line
    if (!cb && typeof Promise !== 'undefined') {
        return new Promise(function (resolve) {
            _resolve = resolve;
        })
    }
}

/*  */

function clearInstance(key, value) {
  // 简易去除 Vue 和小程序组件实例
  if (value) {
    if (value._isVue || value.__v_isMPComponent) {
      return {}
    }
  }
  return value
}

function cloneWithData(vm) {
  // 确保当前 vm 所有数据被同步
  var ret = Object.create(null);
  var dataKeys = [].concat(
    Object.keys(vm._data || {}),
    Object.keys(vm._computedWatchers || {}));

  dataKeys.reduce(function(ret, key) {
    ret[key] = vm[key];
    return ret
  }, ret);

  // vue-composition-api
  var compositionApiState = vm.__composition_api_state__ || vm.__secret_vfa_state__;
  var rawBindings = compositionApiState && compositionApiState.rawBindings;
  if (rawBindings) {
    Object.keys(rawBindings).forEach(function (key) {
      ret[key] = vm[key];
    });
  }

  //TODO 需要把无用数据处理掉，比如 list=>l0 则 list 需要移除，否则多传输一份数据
  Object.assign(ret, vm.$mp.data || {});
  if (
    Array.isArray(vm.$options.behaviors) &&
    vm.$options.behaviors.indexOf('uni://form-field') !== -1
  ) { //form-field
    ret['name'] = vm.name;
    ret['value'] = vm.value;
  }

  return JSON.parse(JSON.stringify(ret, clearInstance))
}

var patch = function(oldVnode, vnode) {
  var this$1 = this;

  if (vnode === null) { //destroy
    return
  }
  if (this.mpType === 'page' || this.mpType === 'component') {
    var mpInstance = this.$scope;
    var data = Object.create(null);
    try {
      data = cloneWithData(this);
    } catch (err) {
      console.error(err);
    }
    data.__webviewId__ = mpInstance.data.__webviewId__;
    var mpData = Object.create(null);
    Object.keys(data).forEach(function (key) { //仅同步 data 中有的数据
      mpData[key] = mpInstance.data[key];
    });
    var diffData = this.$shouldDiffData === false ? data : diff(data, mpData);
    if (Object.keys(diffData).length) {
      if (Object({"NODE_ENV":"development","VUE_APP_DARK_MODE":"false","VUE_APP_NAME":"候选人","VUE_APP_PLATFORM":"mp-weixin","BASE_URL":"/"}).VUE_APP_DEBUG) {
        console.log('[' + (+new Date) + '][' + (mpInstance.is || mpInstance.route) + '][' + this._uid +
          ']差量更新',
          JSON.stringify(diffData));
      }
      this.__next_tick_pending = true;
      mpInstance.setData(diffData, function () {
        this$1.__next_tick_pending = false;
        flushCallbacks$1(this$1);
      });
    } else {
      flushCallbacks$1(this);
    }
  }
};

/*  */

function createEmptyRender() {

}

function mountComponent$1(
  vm,
  el,
  hydrating
) {
  if (!vm.mpType) {//main.js 中的 new Vue
    return vm
  }
  if (vm.mpType === 'app') {
    vm.$options.render = createEmptyRender;
  }
  if (!vm.$options.render) {
    vm.$options.render = createEmptyRender;
    if (true) {
      /* istanbul ignore if */
      if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||
        vm.$options.el || el) {
        warn(
          'You are using the runtime-only build of Vue where the template ' +
          'compiler is not available. Either pre-compile the templates into ' +
          'render functions, or use the compiler-included build.',
          vm
        );
      } else {
        warn(
          'Failed to mount component: template or render function not defined.',
          vm
        );
      }
    }
  }
  
  !vm._$fallback && callHook(vm, 'beforeMount');

  var updateComponent = function () {
    vm._update(vm._render(), hydrating);
  };

  // we set this to vm._watcher inside the watcher's constructor
  // since the watcher's initial patch may call $forceUpdate (e.g. inside child
  // component's mounted hook), which relies on vm._watcher being already defined
  new Watcher(vm, updateComponent, noop, {
    before: function before() {
      if (vm._isMounted && !vm._isDestroyed) {
        callHook(vm, 'beforeUpdate');
      }
    }
  }, true /* isRenderWatcher */);
  hydrating = false;
  return vm
}

/*  */

function renderClass (
  staticClass,
  dynamicClass
) {
  if (isDef(staticClass) || isDef(dynamicClass)) {
    return concat(staticClass, stringifyClass(dynamicClass))
  }
  /* istanbul ignore next */
  return ''
}

function concat (a, b) {
  return a ? b ? (a + ' ' + b) : a : (b || '')
}

function stringifyClass (value) {
  if (Array.isArray(value)) {
    return stringifyArray(value)
  }
  if (isObject(value)) {
    return stringifyObject(value)
  }
  if (typeof value === 'string') {
    return value
  }
  /* istanbul ignore next */
  return ''
}

function stringifyArray (value) {
  var res = '';
  var stringified;
  for (var i = 0, l = value.length; i < l; i++) {
    if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {
      if (res) { res += ' '; }
      res += stringified;
    }
  }
  return res
}

function stringifyObject (value) {
  var res = '';
  for (var key in value) {
    if (value[key]) {
      if (res) { res += ' '; }
      res += key;
    }
  }
  return res
}

/*  */

var parseStyleText = cached(function (cssText) {
  var res = {};
  var listDelimiter = /;(?![^(]*\))/g;
  var propertyDelimiter = /:(.+)/;
  cssText.split(listDelimiter).forEach(function (item) {
    if (item) {
      var tmp = item.split(propertyDelimiter);
      tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());
    }
  });
  return res
});

// normalize possible array / string values into Object
function normalizeStyleBinding (bindingStyle) {
  if (Array.isArray(bindingStyle)) {
    return toObject(bindingStyle)
  }
  if (typeof bindingStyle === 'string') {
    return parseStyleText(bindingStyle)
  }
  return bindingStyle
}

/*  */

var MP_METHODS = ['createSelectorQuery', 'createIntersectionObserver', 'selectAllComponents', 'selectComponent'];

function getTarget(obj, path) {
  var parts = path.split('.');
  var key = parts[0];
  if (key.indexOf('__$n') === 0) { //number index
    key = parseInt(key.replace('__$n', ''));
  }
  if (parts.length === 1) {
    return obj[key]
  }
  return getTarget(obj[key], parts.slice(1).join('.'))
}

function internalMixin(Vue) {

  Vue.config.errorHandler = function(err, vm, info) {
    Vue.util.warn(("Error in " + info + ": \"" + (err.toString()) + "\""), vm);
    console.error(err);
    /* eslint-disable no-undef */
    var app = typeof getApp === 'function' && getApp();
    if (app && app.onError) {
      app.onError(err);
    }
  };

  var oldEmit = Vue.prototype.$emit;

  Vue.prototype.$emit = function(event) {
    if (this.$scope && event) {
      var triggerEvent = this.$scope['_triggerEvent'] || this.$scope['triggerEvent'];
      if (triggerEvent) {
        try {
          triggerEvent.call(this.$scope, event, {
            __args__: toArray(arguments, 1)
          });
        } catch (error) {

        }
      }
    }
    return oldEmit.apply(this, arguments)
  };

  Vue.prototype.$nextTick = function(fn) {
    return nextTick$1(this, fn)
  };

  MP_METHODS.forEach(function (method) {
    Vue.prototype[method] = function(args) {
      if (this.$scope && this.$scope[method]) {
        return this.$scope[method](args)
      }
      // mp-alipay
      if (typeof my === 'undefined') {
        return
      }
      if (method === 'createSelectorQuery') {
        /* eslint-disable no-undef */
        return my.createSelectorQuery(args)
      } else if (method === 'createIntersectionObserver') {
        /* eslint-disable no-undef */
        return my.createIntersectionObserver(args)
      }
      // TODO mp-alipay 暂不支持 selectAllComponents,selectComponent
    };
  });

  Vue.prototype.__init_provide = initProvide;

  Vue.prototype.__init_injections = initInjections;

  Vue.prototype.__call_hook = function(hook, args) {
    var vm = this;
    // #7573 disable dep collection when invoking lifecycle hooks
    pushTarget();
    var handlers = vm.$options[hook];
    var info = hook + " hook";
    var ret;
    if (handlers) {
      for (var i = 0, j = handlers.length; i < j; i++) {
        ret = invokeWithErrorHandling(handlers[i], vm, args ? [args] : null, vm, info);
      }
    }
    if (vm._hasHookEvent) {
      vm.$emit('hook:' + hook, args);
    }
    popTarget();
    return ret
  };

  Vue.prototype.__set_model = function(target, key, value, modifiers) {
    if (Array.isArray(modifiers)) {
      if (modifiers.indexOf('trim') !== -1) {
        value = value.trim();
      }
      if (modifiers.indexOf('number') !== -1) {
        value = this._n(value);
      }
    }
    if (!target) {
      target = this;
    }
    // 解决动态属性添加
    Vue.set(target, key, value);
  };

  Vue.prototype.__set_sync = function(target, key, value) {
    if (!target) {
      target = this;
    }
    // 解决动态属性添加
    Vue.set(target, key, value);
  };

  Vue.prototype.__get_orig = function(item) {
    if (isPlainObject(item)) {
      return item['$orig'] || item
    }
    return item
  };

  Vue.prototype.__get_value = function(dataPath, target) {
    return getTarget(target || this, dataPath)
  };


  Vue.prototype.__get_class = function(dynamicClass, staticClass) {
    return renderClass(staticClass, dynamicClass)
  };

  Vue.prototype.__get_style = function(dynamicStyle, staticStyle) {
    if (!dynamicStyle && !staticStyle) {
      return ''
    }
    var dynamicStyleObj = normalizeStyleBinding(dynamicStyle);
    var styleObj = staticStyle ? extend(staticStyle, dynamicStyleObj) : dynamicStyleObj;
    return Object.keys(styleObj).map(function (name) { return ((hyphenate(name)) + ":" + (styleObj[name])); }).join(';')
  };

  Vue.prototype.__map = function(val, iteratee) {
    //TODO 暂不考虑 string
    var ret, i, l, keys, key;
    if (Array.isArray(val)) {
      ret = new Array(val.length);
      for (i = 0, l = val.length; i < l; i++) {
        ret[i] = iteratee(val[i], i);
      }
      return ret
    } else if (isObject(val)) {
      keys = Object.keys(val);
      ret = Object.create(null);
      for (i = 0, l = keys.length; i < l; i++) {
        key = keys[i];
        ret[key] = iteratee(val[key], key, i);
      }
      return ret
    } else if (typeof val === 'number') {
      ret = new Array(val);
      for (i = 0, l = val; i < l; i++) {
        // 第一个参数暂时仍和小程序一致
        ret[i] = iteratee(i, i);
      }
      return ret
    }
    return []
  };

}

/*  */

var LIFECYCLE_HOOKS$1 = [
    //App
    'onLaunch',
    'onShow',
    'onHide',
    'onUniNViewMessage',
    'onPageNotFound',
    'onThemeChange',
    'onError',
    'onUnhandledRejection',
    //Page
    'onInit',
    'onLoad',
    // 'onShow',
    'onReady',
    // 'onHide',
    'onUnload',
    'onPullDownRefresh',
    'onReachBottom',
    'onTabItemTap',
    'onAddToFavorites',
    'onShareTimeline',
    'onShareAppMessage',
    'onResize',
    'onPageScroll',
    'onNavigationBarButtonTap',
    'onBackPress',
    'onNavigationBarSearchInputChanged',
    'onNavigationBarSearchInputConfirmed',
    'onNavigationBarSearchInputClicked',
    'onUploadDouyinVideo',
    'onNFCReadMessage',
    //Component
    // 'onReady', // 兼容旧版本，应该移除该事件
    'onPageShow',
    'onPageHide',
    'onPageResize'
];
function lifecycleMixin$1(Vue) {

    //fixed vue-class-component
    var oldExtend = Vue.extend;
    Vue.extend = function(extendOptions) {
        extendOptions = extendOptions || {};

        var methods = extendOptions.methods;
        if (methods) {
            Object.keys(methods).forEach(function (methodName) {
                if (LIFECYCLE_HOOKS$1.indexOf(methodName)!==-1) {
                    extendOptions[methodName] = methods[methodName];
                    delete methods[methodName];
                }
            });
        }

        return oldExtend.call(this, extendOptions)
    };

    var strategies = Vue.config.optionMergeStrategies;
    var mergeHook = strategies.created;
    LIFECYCLE_HOOKS$1.forEach(function (hook) {
        strategies[hook] = mergeHook;
    });

    Vue.prototype.__lifecycle_hooks__ = LIFECYCLE_HOOKS$1;
}

/*  */

// install platform patch function
Vue.prototype.__patch__ = patch;

// public mount method
Vue.prototype.$mount = function(
    el ,
    hydrating 
) {
    return mountComponent$1(this, el, hydrating)
};

lifecycleMixin$1(Vue);
internalMixin(Vue);

/*  */

/* harmony default export */ __webpack_exports__["default"] = (Vue);

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../../webpack/buildin/global.js */ 3)))

/***/ }),

/***/ 26:
/*!*************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/pages.json ***!
  \*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {



/***/ }),

/***/ 3:
/*!***********************************!*\
  !*** (webpack)/buildin/global.js ***!
  \***********************************/
/*! no static exports found */
/***/ (function(module, exports) {

var g;

// This works in non-strict mode
g = (function() {
	return this;
})();

try {
	// This works if eval is allowed (see CSP)
	g = g || new Function("return this")();
} catch (e) {
	// This works if the window reference is available
	if (typeof window === "object") g = window;
}

// g can still be undefined, but nothing to do about it...
// We return undefined, instead of nothing here, so it's
// easier to handle this case. if(!global) { ...}

module.exports = g;


/***/ }),

/***/ 30:
/*!*****************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/utils/WebIM.js ***!
  \*****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.conn = void 0;
var _EasemobChat = _interopRequireDefault(__webpack_require__(/*! ../newSDK/Easemob-chat.js */ 31));
var _WebIMConfig = _interopRequireDefault(__webpack_require__(/*! ./WebIMConfig.js */ 33));
var _vueBus = _interopRequireDefault(__webpack_require__(/*! @/utils/vueBus */ 34));
//初始化
var conn = {};
exports.conn = conn;
_EasemobChat.default.config = _WebIMConfig.default;
exports.conn = conn = _EasemobChat.default.conn = new _EasemobChat.default.connection({
  appKey: _WebIMConfig.default.appkey,
  https: true,
  //是否使用HTTPS
  url: "wss://im-api-wechat.easemob.com/websocket",
  // socket server (3.0 SDK)
  apiUrl: "https://a1.easemob.com",
  // rest server
  heartBeatWait: 30000,
  //心跳间隔
  autoReconnectNumMax: 5,
  //自动重连次数
  useOwnUploadFun: true // 是否使用自己的上传方式（如将图片文件等上传到自己的服务器，构建消息时只传url）
  // WebIM.config 为之前集成里介绍的WebIMConfig.js
});

var login = false;

//回调
conn.listen({
  onOpened: function onOpened(message) {
    console.log('环信登录成功');
  },
  //连接成功回调 
  onClosed: function onClosed(message) {
    console.log('环信断开链接');
    // uni.showModal({
    // 	title: '提示',
    // 	content: '您已在其他地方登录，是否重新登录',
    // 	success: function(res) {
    // 		if (res.confirm) {
    // 			uni.reLaunch({
    // 				url: "/pages/login/login"
    // 			})
    // 		} else if (res.cancel) {
    // 			console.log('用户点击取消');  
    // 		}
    // 	}
    // });
  },

  //连接关闭回调
  onTextMessage: function onTextMessage(message) {
    uni.showTabBarRedDot({
      index: 3,
      success: function success(res) {
        console.log(res);
      }
    });
    _vueBus.default.$emit('message');
  },
  //收到文本消息
  onEmojiMessage: function onEmojiMessage(message) {
    uni.showTabBarRedDot({
      index: 3,
      success: function success(res) {
        console.log(res);
      }
    });
    _vueBus.default.$emit('message');
  },
  //收到表情消息
  onPictureMessage: function onPictureMessage(message) {
    uni.showTabBarRedDot({
      index: 3,
      success: function success(res) {
        console.log(res);
      }
    });
    _vueBus.default.$emit('message');
  },
  //收到图片消息
  onCmdMessage: function onCmdMessage(message) {
    uni.showTabBarRedDot({
      index: 3,
      success: function success(res) {
        console.log(res);
      }
    });
    _vueBus.default.$emit('message');
  },
  //收到命令消息
  onAudioMessage: function onAudioMessage(message) {
    uni.showTabBarRedDot({
      index: 3,
      success: function success(res) {
        console.log(res);
      }
    });
    _vueBus.default.$emit('message');
  },
  //收到音频消息
  onLocationMessage: function onLocationMessage(message) {},
  //收到位置消息
  onFileMessage: function onFileMessage(message) {},
  //收到文件消息
  onVideoMessage: function onVideoMessage(message) {
    var node = document.getElementById('privateVideo');
    var option = {
      url: message.url,
      headers: {
        'Accept': 'audio/mp4'
      },
      onFileDownloadComplete: function onFileDownloadComplete(response) {
        var objectURL = _EasemobChat.default.utils.parseDownloadResponse.call(conn, response);
        node.src = objectURL;
      },
      onFileDownloadError: function onFileDownloadError() {
        console.log('File down load error.');
      }
    };
    _EasemobChat.default.utils.download.call(conn, option);
  },
  //收到视频消息
  onPresence: function onPresence(message) {},
  //处理“广播”或“发布-订阅”消息，如联系人订阅请求、处理群组、聊天室被踢解散等消息
  onRoster: function onRoster(message) {},
  //处理好友申请
  onInviteMessage: function onInviteMessage(message) {},
  //处理群组邀请
  onOnline: function onOnline() {},
  //本机网络连接成功
  onOffline: function onOffline() {},
  //本机网络掉线
  onError: function onError(message) {},
  //失败回调
  onBlacklistUpdate: function onBlacklistUpdate(list) {
    //黑名单变动
    // 查询黑名单，将好友拉黑，将好友从黑名单移除都会回调这个函数，list则是黑名单现有的所有好友信息
    console.log(list);
  },
  onRecallMessage: function onRecallMessage(message) {},
  //收到撤回消息回调
  onReceivedMessage: function onReceivedMessage(message) {},
  //收到消息送达服务器回执
  onDeliveredMessage: function onDeliveredMessage(message) {},
  //收到消息送达客户端回执
  onReadMessage: function onReadMessage(message) {},
  //收到消息已读回执
  onCreateGroup: function onCreateGroup(message) {},
  //创建群组成功回执（需调用createGroupNew）
  onMutedMessage: function onMutedMessage(message) {},
  //如果用户在A群组被禁言，在A群发消息会走这个回调并且消息不会传递给群其它成员
  onChannelMessage: function onChannelMessage(message) {} //收到整个会话已读的回执，在对方发送channel ack时会在这个回调里收到消息
});
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 31:
/*!*************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/newSDK/Easemob-chat.js ***!
  \*************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(wx, uni, module) {var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 13);
!function (e, t) {
  "object" == ( false ? undefined : _typeof(exports)) && "object" == ( false ? undefined : _typeof(module)) ? module.exports = t() :  true ? !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (t),
				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
				(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : undefined;
}(this, function () {
  return function () {
    var e = {
        188: function _(e, t, r) {
          var o, n, i;
          !function (a) {
            "use strict";

            if (null != t && "number" != typeof t.nodeType) e.exports = a();else if (null != r.amdO) n = [], void 0 === (i = "function" == typeof (o = a) ? o.apply(t, n) : o) || (e.exports = i);else {
              var s = a(),
                c = "undefined" != typeof self ? self : $.global;
              "function" != typeof c.btoa && (c.btoa = s.btoa), "function" != typeof c.atob && (c.atob = s.atob);
            }
          }(function () {
            "use strict";

            var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
            function t(e) {
              this.message = e;
            }
            return t.prototype = new Error(), t.prototype.name = "InvalidCharacterError", {
              btoa: function btoa(r) {
                for (var o, n, i = String(r), a = 0, s = e, c = ""; i.charAt(0 | a) || (s = "=", a % 1); c += s.charAt(63 & o >> 8 - a % 1 * 8)) {
                  if ((n = i.charCodeAt(a += 3 / 4)) > 255) throw new t("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");
                  o = o << 8 | n;
                }
                return c;
              },
              atob: function atob(r) {
                var o = String(r).replace(/[=]+$/, "");
                if (o.length % 4 == 1) throw new t("'atob' failed: The string to be decoded is not correctly encoded.");
                for (var n, i, a = 0, s = 0, c = ""; i = o.charAt(s++); ~i && (n = a % 4 ? 64 * n + i : i, a++ % 4) ? c += String.fromCharCode(255 & n >> (-2 * a & 6)) : 0) {
                  i = e.indexOf(i);
                }
                return c;
              }
            };
          });
        },
        720: function _(e) {
          e.exports = r;
          var t = null;
          try {
            t = new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0, 97, 115, 109, 1, 0, 0, 0, 1, 13, 2, 96, 0, 1, 127, 96, 4, 127, 127, 127, 127, 1, 127, 3, 7, 6, 0, 1, 1, 1, 1, 1, 6, 6, 1, 127, 1, 65, 0, 11, 7, 50, 6, 3, 109, 117, 108, 0, 1, 5, 100, 105, 118, 95, 115, 0, 2, 5, 100, 105, 118, 95, 117, 0, 3, 5, 114, 101, 109, 95, 115, 0, 4, 5, 114, 101, 109, 95, 117, 0, 5, 8, 103, 101, 116, 95, 104, 105, 103, 104, 0, 0, 10, 191, 1, 6, 4, 0, 35, 0, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 126, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 127, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 128, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 129, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 130, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11])), {}).exports;
          } catch (e) {}
          function r(e, t, r) {
            this.low = 0 | e, this.high = 0 | t, this.unsigned = !!r;
          }
          function o(e) {
            return !0 === (e && e.__isLong__);
          }
          r.prototype.__isLong__, Object.defineProperty(r.prototype, "__isLong__", {
            value: !0
          }), r.isLong = o;
          var n = {},
            i = {};
          function a(e, t) {
            var r, o, a;
            return t ? (a = 0 <= (e >>>= 0) && e < 256) && (o = i[e]) ? o : (r = c(e, (0 | e) < 0 ? -1 : 0, !0), a && (i[e] = r), r) : (a = -128 <= (e |= 0) && e < 128) && (o = n[e]) ? o : (r = c(e, e < 0 ? -1 : 0, !1), a && (n[e] = r), r);
          }
          function s(e, t) {
            if (isNaN(e)) return t ? E : g;
            if (t) {
              if (e < 0) return E;
              if (e >= h) return R;
            } else {
              if (e <= -f) return O;
              if (e + 1 >= f) return _;
            }
            return e < 0 ? s(-e, t).neg() : c(e % p | 0, e / p | 0, t);
          }
          function c(e, t, o) {
            return new r(e, t, o);
          }
          r.fromInt = a, r.fromNumber = s, r.fromBits = c;
          var u = Math.pow;
          function l(e, t, r) {
            if (0 === e.length) throw Error("empty string");
            if ("NaN" === e || "Infinity" === e || "+Infinity" === e || "-Infinity" === e) return g;
            if ("number" == typeof t ? (r = t, t = !1) : t = !!t, (r = r || 10) < 2 || 36 < r) throw RangeError("radix");
            var o;
            if ((o = e.indexOf("-")) > 0) throw Error("interior hyphen");
            if (0 === o) return l(e.substring(1), t, r).neg();
            for (var n = s(u(r, 8)), i = g, a = 0; a < e.length; a += 8) {
              var c = Math.min(8, e.length - a),
                d = parseInt(e.substring(a, a + c), r);
              if (c < 8) {
                var p = s(u(r, c));
                i = i.mul(p).add(s(d));
              } else i = (i = i.mul(n)).add(s(d));
            }
            return i.unsigned = t, i;
          }
          function d(e, t) {
            return "number" == typeof e ? s(e, t) : "string" == typeof e ? l(e, t) : c(e.low, e.high, "boolean" == typeof t ? t : e.unsigned);
          }
          r.fromString = l, r.fromValue = d;
          var p = 4294967296,
            h = p * p,
            f = h / 2,
            m = a(1 << 24),
            g = a(0);
          r.ZERO = g;
          var E = a(0, !0);
          r.UZERO = E;
          var y = a(1);
          r.ONE = y;
          var T = a(1, !0);
          r.UONE = T;
          var v = a(-1);
          r.NEG_ONE = v;
          var _ = c(-1, 2147483647, !1);
          r.MAX_VALUE = _;
          var R = c(-1, -1, !0);
          r.MAX_UNSIGNED_VALUE = R;
          var O = c(0, -2147483648, !1);
          r.MIN_VALUE = O;
          var I = r.prototype;
          I.toInt = function () {
            return this.unsigned ? this.low >>> 0 : this.low;
          }, I.toNumber = function () {
            return this.unsigned ? (this.high >>> 0) * p + (this.low >>> 0) : this.high * p + (this.low >>> 0);
          }, I.toString = function (e) {
            if ((e = e || 10) < 2 || 36 < e) throw RangeError("radix");
            if (this.isZero()) return "0";
            if (this.isNegative()) {
              if (this.eq(O)) {
                var t = s(e),
                  r = this.div(t),
                  o = r.mul(t).sub(this);
                return r.toString(e) + o.toInt().toString(e);
              }
              return "-" + this.neg().toString(e);
            }
            for (var n = s(u(e, 6), this.unsigned), i = this, a = "";;) {
              var c = i.div(n),
                l = (i.sub(c.mul(n)).toInt() >>> 0).toString(e);
              if ((i = c).isZero()) return l + a;
              for (; l.length < 6;) {
                l = "0" + l;
              }
              a = "" + l + a;
            }
          }, I.getHighBits = function () {
            return this.high;
          }, I.getHighBitsUnsigned = function () {
            return this.high >>> 0;
          }, I.getLowBits = function () {
            return this.low;
          }, I.getLowBitsUnsigned = function () {
            return this.low >>> 0;
          }, I.getNumBitsAbs = function () {
            if (this.isNegative()) return this.eq(O) ? 64 : this.neg().getNumBitsAbs();
            for (var e = 0 != this.high ? this.high : this.low, t = 31; t > 0 && 0 == (e & 1 << t); t--) {
              ;
            }
            return 0 != this.high ? t + 33 : t + 1;
          }, I.isZero = function () {
            return 0 === this.high && 0 === this.low;
          }, I.eqz = I.isZero, I.isNegative = function () {
            return !this.unsigned && this.high < 0;
          }, I.isPositive = function () {
            return this.unsigned || this.high >= 0;
          }, I.isOdd = function () {
            return 1 == (1 & this.low);
          }, I.isEven = function () {
            return 0 == (1 & this.low);
          }, I.equals = function (e) {
            return o(e) || (e = d(e)), (this.unsigned === e.unsigned || this.high >>> 31 != 1 || e.high >>> 31 != 1) && this.high === e.high && this.low === e.low;
          }, I.eq = I.equals, I.notEquals = function (e) {
            return !this.eq(e);
          }, I.neq = I.notEquals, I.ne = I.notEquals, I.lessThan = function (e) {
            return this.comp(e) < 0;
          }, I.lt = I.lessThan, I.lessThanOrEqual = function (e) {
            return this.comp(e) <= 0;
          }, I.lte = I.lessThanOrEqual, I.le = I.lessThanOrEqual, I.greaterThan = function (e) {
            return this.comp(e) > 0;
          }, I.gt = I.greaterThan, I.greaterThanOrEqual = function (e) {
            return this.comp(e) >= 0;
          }, I.gte = I.greaterThanOrEqual, I.ge = I.greaterThanOrEqual, I.compare = function (e) {
            if (o(e) || (e = d(e)), this.eq(e)) return 0;
            var t = this.isNegative(),
              r = e.isNegative();
            return t && !r ? -1 : !t && r ? 1 : this.unsigned ? e.high >>> 0 > this.high >>> 0 || e.high === this.high && e.low >>> 0 > this.low >>> 0 ? -1 : 1 : this.sub(e).isNegative() ? -1 : 1;
          }, I.comp = I.compare, I.negate = function () {
            return !this.unsigned && this.eq(O) ? O : this.not().add(y);
          }, I.neg = I.negate, I.add = function (e) {
            o(e) || (e = d(e));
            var t = this.high >>> 16,
              r = 65535 & this.high,
              n = this.low >>> 16,
              i = 65535 & this.low,
              a = e.high >>> 16,
              s = 65535 & e.high,
              u = e.low >>> 16,
              l = 0,
              p = 0,
              h = 0,
              f = 0;
            return h += (f += i + (65535 & e.low)) >>> 16, p += (h += n + u) >>> 16, l += (p += r + s) >>> 16, l += t + a, c((h &= 65535) << 16 | (f &= 65535), (l &= 65535) << 16 | (p &= 65535), this.unsigned);
          }, I.subtract = function (e) {
            return o(e) || (e = d(e)), this.add(e.neg());
          }, I.sub = I.subtract, I.multiply = function (e) {
            if (this.isZero()) return g;
            if (o(e) || (e = d(e)), t) return c(t.mul(this.low, this.high, e.low, e.high), t.get_high(), this.unsigned);
            if (e.isZero()) return g;
            if (this.eq(O)) return e.isOdd() ? O : g;
            if (e.eq(O)) return this.isOdd() ? O : g;
            if (this.isNegative()) return e.isNegative() ? this.neg().mul(e.neg()) : this.neg().mul(e).neg();
            if (e.isNegative()) return this.mul(e.neg()).neg();
            if (this.lt(m) && e.lt(m)) return s(this.toNumber() * e.toNumber(), this.unsigned);
            var r = this.high >>> 16,
              n = 65535 & this.high,
              i = this.low >>> 16,
              a = 65535 & this.low,
              u = e.high >>> 16,
              l = 65535 & e.high,
              p = e.low >>> 16,
              h = 65535 & e.low,
              f = 0,
              E = 0,
              y = 0,
              T = 0;
            return y += (T += a * h) >>> 16, E += (y += i * h) >>> 16, y &= 65535, E += (y += a * p) >>> 16, f += (E += n * h) >>> 16, E &= 65535, f += (E += i * p) >>> 16, E &= 65535, f += (E += a * l) >>> 16, f += r * h + n * p + i * l + a * u, c((y &= 65535) << 16 | (T &= 65535), (f &= 65535) << 16 | (E &= 65535), this.unsigned);
          }, I.mul = I.multiply, I.divide = function (e) {
            if (o(e) || (e = d(e)), e.isZero()) throw Error("division by zero");
            var r, n, i;
            if (t) return this.unsigned || -2147483648 !== this.high || -1 !== e.low || -1 !== e.high ? c((this.unsigned ? t.div_u : t.div_s)(this.low, this.high, e.low, e.high), t.get_high(), this.unsigned) : this;
            if (this.isZero()) return this.unsigned ? E : g;
            if (this.unsigned) {
              if (e.unsigned || (e = e.toUnsigned()), e.gt(this)) return E;
              if (e.gt(this.shru(1))) return T;
              i = E;
            } else {
              if (this.eq(O)) return e.eq(y) || e.eq(v) ? O : e.eq(O) ? y : (r = this.shr(1).div(e).shl(1)).eq(g) ? e.isNegative() ? y : v : (n = this.sub(e.mul(r)), i = r.add(n.div(e)));
              if (e.eq(O)) return this.unsigned ? E : g;
              if (this.isNegative()) return e.isNegative() ? this.neg().div(e.neg()) : this.neg().div(e).neg();
              if (e.isNegative()) return this.div(e.neg()).neg();
              i = g;
            }
            for (n = this; n.gte(e);) {
              r = Math.max(1, Math.floor(n.toNumber() / e.toNumber()));
              for (var a = Math.ceil(Math.log(r) / Math.LN2), l = a <= 48 ? 1 : u(2, a - 48), p = s(r), h = p.mul(e); h.isNegative() || h.gt(n);) {
                h = (p = s(r -= l, this.unsigned)).mul(e);
              }
              p.isZero() && (p = y), i = i.add(p), n = n.sub(h);
            }
            return i;
          }, I.div = I.divide, I.modulo = function (e) {
            return o(e) || (e = d(e)), t ? c((this.unsigned ? t.rem_u : t.rem_s)(this.low, this.high, e.low, e.high), t.get_high(), this.unsigned) : this.sub(this.div(e).mul(e));
          }, I.mod = I.modulo, I.rem = I.modulo, I.not = function () {
            return c(~this.low, ~this.high, this.unsigned);
          }, I.and = function (e) {
            return o(e) || (e = d(e)), c(this.low & e.low, this.high & e.high, this.unsigned);
          }, I.or = function (e) {
            return o(e) || (e = d(e)), c(this.low | e.low, this.high | e.high, this.unsigned);
          }, I.xor = function (e) {
            return o(e) || (e = d(e)), c(this.low ^ e.low, this.high ^ e.high, this.unsigned);
          }, I.shiftLeft = function (e) {
            return o(e) && (e = e.toInt()), 0 == (e &= 63) ? this : e < 32 ? c(this.low << e, this.high << e | this.low >>> 32 - e, this.unsigned) : c(0, this.low << e - 32, this.unsigned);
          }, I.shl = I.shiftLeft, I.shiftRight = function (e) {
            return o(e) && (e = e.toInt()), 0 == (e &= 63) ? this : e < 32 ? c(this.low >>> e | this.high << 32 - e, this.high >> e, this.unsigned) : c(this.high >> e - 32, this.high >= 0 ? 0 : -1, this.unsigned);
          }, I.shr = I.shiftRight, I.shiftRightUnsigned = function (e) {
            if (o(e) && (e = e.toInt()), 0 == (e &= 63)) return this;
            var t = this.high;
            return e < 32 ? c(this.low >>> e | t << 32 - e, t >>> e, this.unsigned) : c(32 === e ? t : t >>> e - 32, 0, this.unsigned);
          }, I.shru = I.shiftRightUnsigned, I.shr_u = I.shiftRightUnsigned, I.toSigned = function () {
            return this.unsigned ? c(this.low, this.high, !1) : this;
          }, I.toUnsigned = function () {
            return this.unsigned ? this : c(this.low, this.high, !0);
          }, I.toBytes = function (e) {
            return e ? this.toBytesLE() : this.toBytesBE();
          }, I.toBytesLE = function () {
            var e = this.high,
              t = this.low;
            return [255 & t, t >>> 8 & 255, t >>> 16 & 255, t >>> 24, 255 & e, e >>> 8 & 255, e >>> 16 & 255, e >>> 24];
          }, I.toBytesBE = function () {
            var e = this.high,
              t = this.low;
            return [e >>> 24, e >>> 16 & 255, e >>> 8 & 255, 255 & e, t >>> 24, t >>> 16 & 255, t >>> 8 & 255, 255 & t];
          }, r.fromBytes = function (e, t, o) {
            return o ? r.fromBytesLE(e, t) : r.fromBytesBE(e, t);
          }, r.fromBytesLE = function (e, t) {
            return new r(e[0] | e[1] << 8 | e[2] << 16 | e[3] << 24, e[4] | e[5] << 8 | e[6] << 16 | e[7] << 24, t);
          }, r.fromBytesBE = function (e, t) {
            return new r(e[4] << 24 | e[5] << 16 | e[6] << 8 | e[7], e[0] << 24 | e[1] << 16 | e[2] << 8 | e[3], t);
          };
        },
        969: function _(e) {
          "use strict";

          function t() {
            this._listeners = {};
          }
          e.exports = t, t.prototype.on = function (e, t, r) {
            return (this._listeners[e] || (this._listeners[e] = [])).push({
              fn: t,
              ctx: r || this
            }), this;
          }, t.prototype.off = function (e, t) {
            if (void 0 === e) this._listeners = {};else if (void 0 === t) this._listeners[e] = [];else for (var r = this._listeners[e], o = 0; o < r.length;) {
              r[o].fn === t ? r.splice(o, 1) : ++o;
            }
            return this;
          }, t.prototype.emit = function (e) {
            var t = this._listeners[e];
            if (t) {
              for (var r = [], o = 1; o < arguments.length;) {
                r.push(arguments[o++]);
              }
              for (o = 0; o < t.length;) {
                t[o].fn.apply(t[o++].ctx, r);
              }
            }
            return this;
          };
        },
        728: function _(e) {
          "use strict";

          e.exports = function (e, t) {
            for (var r = new Array(arguments.length - 1), o = 0, n = 2, i = !0; n < arguments.length;) {
              r[o++] = arguments[n++];
            }
            return new Promise(function (n, a) {
              r[o] = function (e) {
                if (i) if (i = !1, e) a(e);else {
                  for (var t = new Array(arguments.length - 1), r = 0; r < t.length;) {
                    t[r++] = arguments[r];
                  }
                  n.apply(null, t);
                }
              };
              try {
                e.apply(t || null, r);
              } catch (e) {
                i && (i = !1, a(e));
              }
            });
          };
        },
        440: function _(e) {
          "use strict";

          var t = e.exports;
          t.length = function (e) {
            var t = e.length;
            if (!t) return 0;
            for (var r = 0; --t % 4 > 1 && "=" === e.charAt(t);) {
              ++r;
            }
            return Math.ceil(3 * e.length) / 4 - r;
          };
          for (var r = new Array(64), o = new Array(123), n = 0; n < 64;) {
            o[r[n] = n < 26 ? n + 65 : n < 52 ? n + 71 : n < 62 ? n - 4 : n - 59 | 43] = n++;
          }
          t.encode = function (e, t, o) {
            for (var n, i = null, a = [], s = 0, c = 0; t < o;) {
              var u = e[t++];
              switch (c) {
                case 0:
                  a[s++] = r[u >> 2], n = (3 & u) << 4, c = 1;
                  break;
                case 1:
                  a[s++] = r[n | u >> 4], n = (15 & u) << 2, c = 2;
                  break;
                case 2:
                  a[s++] = r[n | u >> 6], a[s++] = r[63 & u], c = 0;
              }
              s > 8191 && ((i || (i = [])).push(String.fromCharCode.apply(String, a)), s = 0);
            }
            return c && (a[s++] = r[n], a[s++] = 61, 1 === c && (a[s++] = 61)), i ? (s && i.push(String.fromCharCode.apply(String, a.slice(0, s))), i.join("")) : String.fromCharCode.apply(String, a.slice(0, s));
          };
          var i = "invalid encoding";
          t.decode = function (e, t, r) {
            for (var n, a = r, s = 0, c = 0; c < e.length;) {
              var u = e.charCodeAt(c++);
              if (61 === u && s > 1) break;
              if (void 0 === (u = o[u])) throw Error(i);
              switch (s) {
                case 0:
                  n = u, s = 1;
                  break;
                case 1:
                  t[r++] = n << 2 | (48 & u) >> 4, n = u, s = 2;
                  break;
                case 2:
                  t[r++] = (15 & n) << 4 | (60 & u) >> 2, n = u, s = 3;
                  break;
                case 3:
                  t[r++] = (3 & n) << 6 | u, s = 0;
              }
            }
            if (1 === s) throw Error(i);
            return r - a;
          }, t.test = function (e) {
            return /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e);
          };
        },
        72: function _(e) {
          e.exports = o;
          var t,
            r = /\/|\./;
          function o(e, t) {
            r.test(e) || (e = "google/protobuf/" + e + ".proto", t = {
              nested: {
                google: {
                  nested: {
                    protobuf: {
                      nested: t
                    }
                  }
                }
              }
            }), o[e] = t;
          }
          o("any", {
            Any: {
              fields: {
                type_url: {
                  type: "string",
                  id: 1
                },
                value: {
                  type: "bytes",
                  id: 2
                }
              }
            }
          }), o("duration", {
            Duration: t = {
              fields: {
                seconds: {
                  type: "int64",
                  id: 1
                },
                nanos: {
                  type: "int32",
                  id: 2
                }
              }
            }
          }), o("timestamp", {
            Timestamp: t
          }), o("empty", {
            Empty: {
              fields: {}
            }
          }), o("struct", {
            Struct: {
              fields: {
                fields: {
                  keyType: "string",
                  type: "Value",
                  id: 1
                }
              }
            },
            Value: {
              oneofs: {
                kind: {
                  oneof: ["nullValue", "numberValue", "stringValue", "boolValue", "structValue", "listValue"]
                }
              },
              fields: {
                nullValue: {
                  type: "NullValue",
                  id: 1
                },
                numberValue: {
                  type: "double",
                  id: 2
                },
                stringValue: {
                  type: "string",
                  id: 3
                },
                boolValue: {
                  type: "bool",
                  id: 4
                },
                structValue: {
                  type: "Struct",
                  id: 5
                },
                listValue: {
                  type: "ListValue",
                  id: 6
                }
              }
            },
            NullValue: {
              values: {
                NULL_VALUE: 0
              }
            },
            ListValue: {
              fields: {
                values: {
                  rule: "repeated",
                  type: "Value",
                  id: 1
                }
              }
            }
          }), o("wrappers", {
            DoubleValue: {
              fields: {
                value: {
                  type: "double",
                  id: 1
                }
              }
            },
            FloatValue: {
              fields: {
                value: {
                  type: "float",
                  id: 1
                }
              }
            },
            Int64Value: {
              fields: {
                value: {
                  type: "int64",
                  id: 1
                }
              }
            },
            UInt64Value: {
              fields: {
                value: {
                  type: "uint64",
                  id: 1
                }
              }
            },
            Int32Value: {
              fields: {
                value: {
                  type: "int32",
                  id: 1
                }
              }
            },
            UInt32Value: {
              fields: {
                value: {
                  type: "uint32",
                  id: 1
                }
              }
            },
            BoolValue: {
              fields: {
                value: {
                  type: "bool",
                  id: 1
                }
              }
            },
            StringValue: {
              fields: {
                value: {
                  type: "string",
                  id: 1
                }
              }
            },
            BytesValue: {
              fields: {
                value: {
                  type: "bytes",
                  id: 1
                }
              }
            }
          }), o("field_mask", {
            FieldMask: {
              fields: {
                paths: {
                  rule: "repeated",
                  type: "string",
                  id: 1
                }
              }
            }
          }), o.get = function (e) {
            return o[e] || null;
          };
        },
        525: function _(e, t, r) {
          var o,
            n,
            i = e.exports;
          function a(e, t, r, i) {
            var a = i.m,
              s = i.d,
              c = i.types,
              u = i.ksi,
              l = void 0 !== u;
            if (e.resolvedType) {
              if (e.resolvedType instanceof o) {
                for (var d = l ? s[r][u] : s[r], p = e.resolvedType.values, h = Object.keys(p), f = 0; f < h.length; f++) {
                  if (!(e.repeated && p[h[f]] === e.typeDefault || h[f] != d && p[h[f]] != d)) {
                    l ? a[r][u] = p[h[f]] : a[r] = p[h[f]];
                    break;
                  }
                }
              } else {
                if ("object" != _typeof(l ? s[r][u] : s[r])) throw TypeError(e.fullName + ": object expected");
                l ? a[r][u] = c[t].fromObject(s[r][u]) : a[r] = c[t].fromObject(s[r]);
              }
            } else {
              var m = !1;
              switch (e.type) {
                case "double":
                case "float":
                  l ? a[r][u] = Number(s[r][u]) : a[r] = Number(s[r]);
                  break;
                case "uint32":
                case "fixed32":
                  l ? a[r][u] = s[r][u] >>> 0 : a[r] = s[r] >>> 0;
                  break;
                case "int32":
                case "sint32":
                case "sfixed32":
                  l ? a[r][u] = 0 | s[r][u] : a[r] = 0 | s[r];
                  break;
                case "uint64":
                  m = !0;
                case "int64":
                case "sint64":
                case "fixed64":
                case "sfixed64":
                  n.Long ? l ? a[r][u] = n.Long.fromValue(s[r][u]).unsigned = m : a[r] = n.Long.fromValue(s[r]).unsigned = m : "string" == typeof (l ? s[r][u] : s[r]) ? l ? a[r][u] = parseInt(s[r][u], 10) : a[r] = parseInt(s[r], 10) : "number" == typeof (l ? s[r][u] : s[r]) ? l ? a[r][u] = s[r][u] : a[r] = s[r] : "object" == _typeof(l ? s[r][u] : s[r]) && (l ? a[r][u] = new n.LongBits(s[r][u].low >>> 0, s[r][u].high >>> 0).toNumber(m) : a[r] = new n.LongBits(s[r].low >>> 0, s[r].high >>> 0).toNumber(m));
                  break;
                case "bytes":
                  "string" == typeof (l ? s[r][u] : s[r]) ? l ? n.base64.decode(s[r][u], a[r][u] = n.newBuffer(n.base64.length(s[r][u])), 0) : n.base64.decode(s[r], a[r] = n.newBuffer(n.base64.length(s[r])), 0) : (l ? s[r][u] : s[r]).length && (l ? a[r][u] = s[r][u] : a[r] = s[r]);
                  break;
                case "string":
                  l ? a[r][u] = String(s[r][u]) : a[r] = String(s[r]);
                  break;
                case "bool":
                  l ? a[r][u] = Boolean(s[r][u]) : a[r] = Boolean(s[r]);
              }
            }
          }
          function s(e, t, r, i) {
            var a = i.m,
              s = i.d,
              c = i.types,
              u = i.ksi,
              l = i.o,
              d = void 0 !== u;
            if (e.resolvedType) e.resolvedType instanceof o ? d ? s[r][u] = l.enums === String ? c[t].values[a[r][u]] : a[r][u] : s[r] = l.enums === String ? c[t].values[a[r]] : a[r] : d ? s[r][u] = c[t].toObject(a[r][u], l) : s[r] = c[t].toObject(a[r], l);else {
              var p = !1;
              switch (e.type) {
                case "double":
                case "float":
                  d ? s[r][u] = l.json && !isFinite(a[r][u]) ? String(a[r][u]) : a[r][u] : s[r] = l.json && !isFinite(a[r]) ? String(a[r]) : a[r];
                  break;
                case "uint64":
                  p = !0;
                case "int64":
                case "sint64":
                case "fixed64":
                case "sfixed64":
                  "number" == typeof a[r][u] ? d ? s[r][u] = l.longs === String ? String(a[r][u]) : a[r][u] : s[r] = l.longs === String ? String(a[r]) : a[r] : d ? s[r][u] = l.longs === String ? n.Long.prototype.toString.call(a[r][u]) : l.longs === Number ? new n.LongBits(a[r][u].low >>> 0, a[r][u].high >>> 0).toNumber(p) : a[r][u] : s[r] = l.longs === String ? n.Long.prototype.toString.call(a[r]) : l.longs === Number ? new n.LongBits(a[r].low >>> 0, a[r].high >>> 0).toNumber(p) : a[r];
                  break;
                case "bytes":
                  d ? s[r][u] = l.bytes === String ? n.base64.encode(a[r][u], 0, a[r][u].length) : l.bytes === Array ? Array.prototype.slice.call(a[r][u]) : a[r][u] : s[r] = l.bytes === String ? n.base64.encode(a[r], 0, a[r].length) : l.bytes === Array ? Array.prototype.slice.call(a[r]) : a[r];
                  break;
                default:
                  d ? s[r][u] = a[r][u] : s[r] = a[r];
              }
            }
          }
          i._configure = function () {
            o = r(582), n = r(935);
          }, i.fromObject = function (e) {
            var t = e.fieldsArray;
            return function (e) {
              return function (r) {
                if (r instanceof this.ctor) return r;
                if (!t.length) return new this.ctor();
                for (var i = new this.ctor(), s = 0; s < t.length; ++s) {
                  var c,
                    u = t[s].resolve(),
                    l = u.name;
                  if (u.map) {
                    if (r[l]) {
                      if ("object" != _typeof(r[l])) throw TypeError(u.fullName + ": object expected");
                      i[l] = {};
                    }
                    var d = Object.keys(r[l]);
                    for (c = 0; c < d.length; ++c) {
                      a(u, s, l, n.merge(n.copy(e), {
                        m: i,
                        d: r,
                        ksi: d[c]
                      }));
                    }
                  } else if (u.repeated) {
                    if (r[l]) {
                      if (!Array.isArray(r[l])) throw TypeError(u.fullName + ": array expected");
                      for (i[l] = [], c = 0; c < r[l].length; ++c) {
                        a(u, s, l, n.merge(n.copy(e), {
                          m: i,
                          d: r,
                          ksi: c
                        }));
                      }
                    }
                  } else (u.resolvedType instanceof o || null != r[l]) && a(u, s, l, n.merge(n.copy(e), {
                    m: i,
                    d: r
                  }));
                }
                return i;
              };
            };
          }, i.toObject = function (e) {
            var t = e.fieldsArray.slice().sort(n.compareFieldsById);
            return function (r) {
              return t.length ? function (i, a) {
                a = a || {};
                for (var c, u, l = {}, d = [], p = [], h = [], f = 0; f < t.length; ++f) {
                  t[f].partOf || (t[f].resolve().repeated ? d : t[f].map ? p : h).push(t[f]);
                }
                if (d.length && (a.arrays || a.defaults)) for (f = 0; f < d.length; ++f) {
                  l[d[f].name] = [];
                }
                if (p.length && (a.objects || a.defaults)) for (f = 0; f < p.length; ++f) {
                  l[p[f].name] = {};
                }
                if (h.length && a.defaults) for (f = 0; f < h.length; ++f) {
                  if (u = (c = h[f]).name, c.resolvedType instanceof o) l[u] = a.enums = String ? c.resolvedType.valuesById[c.typeDefault] : c.typeDefault;else if (c.long) {
                    if (n.Long) {
                      var m = new n.Long(c.typeDefault.low, c.typeDefault.high, c.typeDefault.unsigned);
                      l[u] = a.longs === String ? m.toString() : a.longs === Number ? m.toNumber() : m;
                    } else l[u] = a.longs === String ? c.typeDefault.toString() : c.typeDefault.toNumber();
                  } else c.bytes ? l[u] = a.bytes === String ? String.fromCharCode.apply(String, c.typeDefault) : Array.prototype.slice.call(c.typeDefault).join("*..*").split("*..*") : l[u] = c.typeDefault;
                }
                var g = !1;
                for (f = 0; f < t.length; ++f) {
                  u = (c = t[f]).name;
                  var E,
                    y,
                    T = e._fieldsArray.indexOf(c);
                  if (c.map) {
                    if (g || (g = !0), i[u] && (E = Object.keys(i[u]).length)) for (l[u] = {}, y = 0; y < E.length; ++y) {
                      s(c, T, u, n.merge(n.copy(r), {
                        m: i,
                        d: l,
                        ksi: E[y],
                        o: a
                      }));
                    }
                  } else if (c.repeated) {
                    if (i[u] && i[u].length) for (l[u] = [], y = 0; y < i[u].length; ++y) {
                      s(c, T, u, n.merge(n.copy(r), {
                        m: i,
                        d: l,
                        ksi: y,
                        o: a
                      }));
                    }
                  } else null != i[u] && i.hasOwnProperty(u) && s(c, T, u, n.merge(n.copy(r), {
                    m: i,
                    d: l,
                    o: a
                  })), c.partOf && a.oneofs && (l[c.partOf.name] = u);
                }
                return l;
              } : function () {
                return {};
              };
            };
          };
        },
        888: function _(e, t, r) {
          var o, n, i;
          function a(e) {
            return "missing required '" + e.name + "'";
          }
          function s(e) {
            return function (t) {
              var r = t.Reader,
                s = t.types,
                c = t.util;
              return function (t, u) {
                t instanceof r || (t = r.create(t));
                for (var l, d = void 0 === u ? t.len : t.pos + u, p = new this.ctor(); t.pos < d;) {
                  var h = t.uint32();
                  if (e.group && 4 == (7 & h)) break;
                  for (var f = h >>> 3, m = 0, g = !1; m < e.fieldsArray.length; ++m) {
                    var E = e._fieldsArray[m].resolve(),
                      y = E.name,
                      T = E.resolvedType instanceof o ? "int32" : E.type;
                    if (f == E.id) {
                      if (g = !0, E.map) t.skip().pos++, p[y] === c.emptyObject && (p[y] = {}), l = t[E.keyType](), t.pos++, null != n.long[E.keyType] ? null == n.basic[T] ? p[y]["object" == _typeof(l) ? c.longToHash(l) : l] = s[m].decode(t, t.uint32()) : p[y]["object" == _typeof(l) ? c.longToHash(l) : l] = t[T]() : null == n.basic[T] ? p[y] = s[m].decode(t, t.uint32()) : p[y] = t[T]();else if (E.repeated) {
                        if (p[y] && p[y].length || (p[y] = []), null != n.packed[T] && 2 == (7 & h)) for (var v = t.uint32() + t.pos; t.pos < v;) {
                          p[y].push(t[T]());
                        } else null == n.basic[T] ? E.resolvedType.group ? p[y].push(s[m].decode(t)) : p[y].push(s[m].decode(t, t.uint32())) : p[y].push(t[T]());
                      } else null == n.basic[T] ? E.resolvedType.group ? p[y] = s[m].decode(t) : p[y] = s[m].decode(t, t.uint32()) : p[y] = t[T]();
                      break;
                    }
                  }
                  g || (console.log("t", h), t.skipType(7 & h));
                }
                for (m = 0; m < e._fieldsArray.length; ++m) {
                  var _ = e._fieldsArray[m];
                  if (_.required && !p.hasOwnProperty(_.name)) throw i.ProtocolError(a(_), {
                    instance: p
                  });
                }
                return p;
              };
            };
          }
          e.exports = s, s._configure = function () {
            o = r(582), n = r(696), i = r(935);
          };
        },
        929: function _(e, t, r) {
          var o, n;
          function i(e) {
            return function (t) {
              var r = t.Writer,
                i = t.types,
                a = t.util;
              return function (t, s) {
                s = s || r.create();
                for (var c = e.fieldsArray.slice().sort(a.compareFieldsById), u = 0; u < c.length; u++) {
                  var l = c[u],
                    d = e._fieldsArray.indexOf(l),
                    p = l.resolvedType instanceof o ? "uint32" : l.type,
                    h = n.basic[p],
                    f = t[l.name];
                  if (l.resolvedType instanceof o && "string" == typeof f && (f = i[d].values[f]), l.map) {
                    if (null != f && t.hasOwnProperty(l.name)) for (var m = Object.keys(f), g = 0; g < m.length; ++g) {
                      s.uint32((l.id << 3 | 2) >>> 0).fork().uint32(8 | n.mapKey[l.keyType])[l.keyType](m[g]), void 0 === h ? i[d].encode(f[m[g]], s.uint32(18).fork()).ldelim().ldelim() : s.uint32(16 | h)[p](f[m[g]]).ldelim();
                    }
                  } else if (l.repeated) {
                    if (f && f.length) if (l.packed && void 0 !== n.packed[p]) {
                      s.uint32((l.id << 3 | 2) >>> 0).fork();
                      for (var E = 0; E < f.length; E++) {
                        s[p](f[E]);
                      }
                      s.ldelim();
                    } else for (var y = 0; y < f.length; y++) {
                      void 0 === h ? l.resolvedType.group ? i[d].encode(f[y], s.uint32((l.id << 3 | 3) >>> 0)).uint32((l.id << 3 | 4) >>> 0) : i[d].encode(f[y], s.uint32((l.id << 3 | 2) >>> 0).fork()).ldelim() : s.uint32((l.id << 3 | h) >>> 0)[p](f[y]);
                    }
                  } else (!l.optional || null != f && t.hasOwnProperty(l.name)) && (l.optional || null != f && t.hasOwnProperty(l.name) || console.warn("注意啦!!!很大概率会报错 类型:", t.$type ? t.$type.name : "不晓得", "没有设置对应的属性:", l.name, "检查是不是proto文件属性设置为了required"), void 0 === h ? l.resolvedType.group ? i[d].encode(f, s.uint32((l.id << 3 | 3) >>> 0)).uint32((l.id << 3 | 4) >>> 0) : i[d].encode(f, s.uint32((l.id << 3 | 2) >>> 0).fork()).ldelim() : s.uint32((l.id << 3 | h) >>> 0)[p](f));
                }
                return s;
              };
            };
          }
          e.exports = i, i._configure = function () {
            o = r(582), n = r(696);
          };
        },
        582: function _(e, t, r) {
          e.exports = i;
          var o = r(998);
          ((i.prototype = Object.create(o.prototype)).constructor = i).className = "Enum";
          var n = r(476);
          function i(e, t, r, n, i) {
            if (o.call(this, e, r), t && "object" != _typeof(t)) throw TypeError("values must be an object");
            if (this.valuesById = {}, this.values = Object.create(this.valuesById), this.comment = n, this.comments = i || {}, this.reserved = void 0, t) for (var a = Object.keys(t), s = 0; s < a.length; ++s) {
              "number" == typeof t[a[s]] && (this.valuesById[this.values[a[s]] = t[a[s]]] = a[s]);
            }
          }
          i.fromJSON = function (e, t) {
            var r = new i(e, t.values, t.options, t.comment, t.comments);
            return r.reserved = t.reserved, r;
          }, i.prototype.toJSON = function (e) {
            var t = !!e && Boolean(e.keepComments);
            return util.toObject(["options", this.options, "values", this.values, "reserved", this.reserved && this.reserved.length ? this.reserved : void 0, "comment", t ? this.comment : void 0, "comments", t ? this.comments : void 0]);
          }, i.prototype.add = function (e, t, r) {
            if (!util.isString(e)) throw TypeError("name must be a string");
            if (!util.isInteger(t)) throw TypeError("id must be an integer");
            if (void 0 !== this.values[e]) throw Error("duplicate name '" + e + "' in " + this);
            if (this.isReservedId(t)) throw Error("id " + t + " is reserved in " + this);
            if (this.isReservedName(e)) throw Error("name '" + e + "' is reserved in " + this);
            if (void 0 !== this.valuesById[t]) {
              if (!this.options || !this.options.allow_alias) throw Error("duplicate id " + t + " in " + this);
              this.values[e] = t;
            } else this.valuesById[this.values[e] = t] = e;
            return this.comments[e] = r || null, this;
          }, i.prototype.remove = function (e) {
            if (!util.isString(e)) throw TypeError("name must be a string");
            var t = this.values[e];
            if (null == t) throw Error("name '" + e + "' does not exist in " + this);
            return delete this.valuesById[t], delete this.values[e], delete this.comments[e], this;
          }, i.prototype.isReservedId = function (e) {
            return n.isReservedId(this.reserved, e);
          }, i.prototype.isReservedName = function (e) {
            return n.isReservedName(this.reserved, e);
          };
        },
        286: function _(e, t, r) {
          e.exports = u;
          var o,
            n,
            i,
            a,
            s = r(998);
          ((u.prototype = Object.create(s.prototype)).constructor = u).className = "Field";
          var c = /^required|optional|repeated$/;
          function u(e, t, r, o, a, u, l) {
            if (i.isObject(o) ? (l = a, u = o, o = a = void 0) : i.isObject(a) && (l = u, u = a, a = void 0), s.call(this, e, u), !i.isInteger(t) || t < 0) throw TypeError("id must be a non-negative integer");
            if (!i.isString(r)) throw TypeError("type must be a string");
            if (void 0 !== o && !c.test(o = o.toString().toLowerCase())) throw TypeError("rule must be a string rule");
            if (void 0 !== a && !i.isString(a)) throw TypeError("extend must be a string");
            this.rule = o && "optional" !== o ? o : void 0, this.type = r, this.id = t, this.extend = a || void 0, this.required = "required" === o, this.optional = !this.required, this.repeated = "repeated" === o, this.map = !1, this.message = null, this.partOf = null, this.typeDefault = null, this.defaultValue = null, this.long = !!i.Long && void 0 !== n.long[r], this.bytes = "bytes" === r, this.resolvedType = null, this.extensionField = null, this.declaringField = null, this._packed = null, this.comment = l;
          }
          u.fromJSON = function (e, t) {
            return new u(e, t.id, t.type, t.rule, t.extend, t.options, t.comment);
          }, Object.defineProperty(u.prototype, "packed", {
            get: function get() {
              return null === this._packed && (this._packed = !1 !== this.getOption("packed")), this._packed;
            }
          }), u.prototype.setOption = function (e, t, r) {
            return "packed" === e && (this._packed = null), s.prototype.setOption.call(this, e, t, r);
          }, u.prototype.toJSON = function (e) {
            var t = !!e && Boolean(e.keepComments);
            return i.toObject(["rule", "optional" !== this.rule && this.rule || void 0, "type", this.type, "id", this.id, "extend", this.extend, "options", this.options, "comment", t ? this.comment : void 0]);
          }, u.prototype.resolve = function () {
            if (this.resolved) return this;
            if (void 0 === (this.typeDefault = n.defaults[this.type]) && (this.resolvedType = (this.declaringField ? this.declaringField.parent : this.parent).lookupTypeOrEnum(this.type), this.resolvedType instanceof a ? this.typeDefault = null : this.typeDefault = this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]), this.options && null != this.options.default && (this.typeDefault = this.options.default, this.resolvedType instanceof o && "string" == typeof this.typeDefault && (this.typeDefault = this.resolvedType.values[this.typeDefault])), this.options && (!0 !== this.options.packed && (void 0 === this.options.packed || !this.resolvedType || this.resolvedType instanceof o) || delete this.options.packed, Object.keys(this.options).length || (this.options = void 0)), this.long) this.typeDefault = i.Long.fromNumber(this.typeDefault, "u" === this.type.charAt(0)), Object.freeze && Object.freeze(this.typeDefault);else if (this.bytes && "string" == typeof this.typeDefault) {
              var e;
              i.utf8.write(this.typeDefault, e = i.newBuffer(i.utf8.length(this.typeDefault)), 0), this.typeDefault = e;
            }
            return this.map ? this.defaultValue = i.emptyObject : this.repeated ? this.defaultValue = i.emptyArray : this.defaultValue = this.typeDefault, this.parent instanceof a && (this.parent.ctor.prototype[this.name] = this.defaultValue), s.prototype.resolve.call(this);
          }, u.d = function (e, t, r, o) {
            return "function" == typeof t ? t = i.decorateType(t).name : t && "object" == _typeof(t) && (t = i.decorateEnum(t).name), function (n, a) {
              i.decorateType(n.constructor).add(new u(a, e, t, r, {
                default: o
              }));
            };
          }, u._configure = function () {
            a = r(192), o = r(582), n = r(696), i = r(935);
          };
        },
        283: function _(e) {
          function t(e) {
            return "undefined" != typeof Float32Array ? function () {
              var t = new Float32Array([-0]),
                r = new Uint8Array(t.buffer),
                o = 128 === r[3];
              function n(e, o, n) {
                t[0] = e, o[n] = r[0], o[n + 1] = r[1], o[n + 2] = r[2], o[n + 3] = r[3];
              }
              function i(e, o, n) {
                t[0] = e, o[n] = r[3], o[n + 1] = r[2], o[n + 2] = r[1], o[n + 3] = r[0];
              }
              function a(e, o) {
                return r[0] = e[o], r[1] = e[o + 1], r[2] = e[o + 2], r[3] = e[o + 3], t[0];
              }
              function s(e, o) {
                return r[3] = e[o], r[2] = e[o + 1], r[1] = e[o + 2], r[0] = e[o + 3], t[0];
              }
              e.writeFloatLE = o ? n : i, e.writeFloatBE = o ? i : n, e.readFloatLE = o ? a : s, e.readFloatBE = o ? s : a;
            }() : function () {
              function t(e, t, r, o) {
                var n = t < 0 ? 1 : 0;
                if (n && (t = -t), 0 === t) e(1 / t > 0 ? 0 : 2147483648, r, o);else if (isNaN(t)) e(2143289344, r, o);else if (t > 34028234663852886e22) e((n << 31 | 2139095040) >>> 0, r, o);else if (t < 11754943508222875e-54) e((n << 31 | Math.round(t / 1401298464324817e-60)) >>> 0, r, o);else {
                  var i = Math.floor(Math.log(t) / Math.LN2);
                  e((n << 31 | i + 127 << 23 | 8388607 & Math.round(t * Math.pow(2, -i) * 8388608)) >>> 0, r, o);
                }
              }
              function a(e, t, r) {
                var o = e(t, r),
                  n = 2 * (o >> 31) + 1,
                  i = o >>> 23 & 255,
                  a = 8388607 & o;
                return 255 === i ? a ? NaN : n * (1 / 0) : 0 === i ? 1401298464324817e-60 * n * a : n * Math.pow(2, i - 150) * (a + 8388608);
              }
              e.writeFloatLE = t.bind(null, r), e.writeFloatBE = t.bind(null, o), e.readFloatLE = a.bind(null, n), e.readFloatBE = a.bind(null, i);
            }(), "undefined" != typeof Float64Array ? function () {
              var t = new Float64Array([-0]),
                r = new Uint8Array(t.buffer),
                o = 128 === r[7];
              function n(e, o, n) {
                t[0] = e, o[n] = r[0], o[n + 1] = r[1], o[n + 2] = r[2], o[n + 3] = r[3], o[n + 4] = r[4], o[n + 5] = r[5], o[n + 6] = r[6], o[n + 7] = r[7];
              }
              function i(e, o, n) {
                t[0] = e, o[n] = r[7], o[n + 1] = r[6], o[n + 2] = r[5], o[n + 3] = r[4], o[n + 4] = r[3], o[n + 5] = r[2], o[n + 6] = r[1], o[n + 7] = r[0];
              }
              function a(e, o) {
                return r[0] = e[o], r[1] = e[o + 1], r[2] = e[o + 2], r[3] = e[o + 3], r[4] = e[o + 4], r[5] = e[o + 5], r[6] = e[o + 6], r[7] = e[o + 7], t[0];
              }
              function s(e, o) {
                return r[7] = e[o], r[6] = e[o + 1], r[5] = e[o + 2], r[4] = e[o + 3], r[3] = e[o + 4], r[2] = e[o + 5], r[1] = e[o + 6], r[0] = e[o + 7], t[0];
              }
              e.writeDoubleLE = o ? n : i, e.writeDoubleBE = o ? i : n, e.readDoubleLE = o ? a : s, e.readDoubleBE = o ? s : a;
            }() : function () {
              function t(e, t, r, o, n, i) {
                var a = o < 0 ? 1 : 0;
                if (a && (o = -o), 0 === o) e(0, n, i + t), e(1 / o > 0 ? 0 : 2147483648, n, i + r);else if (isNaN(o)) e(0, n, i + t), e(2146959360, n, i + r);else if (o > 17976931348623157e292) e(0, n, i + t), e((a << 31 | 2146435072) >>> 0, n, i + r);else {
                  var s;
                  if (o < 22250738585072014e-324) e((s = o / 5e-324) >>> 0, n, i + t), e((a << 31 | s / 4294967296) >>> 0, n, i + r);else {
                    var c = Math.floor(Math.log(o) / Math.LN2);
                    1024 === c && (c = 1023), e(4503599627370496 * (s = o * Math.pow(2, -c)) >>> 0, n, i + t), e((a << 31 | c + 1023 << 20 | 1048576 * s & 1048575) >>> 0, n, i + r);
                  }
                }
              }
              function a(e, t, r, o, n) {
                var i = e(o, n + t),
                  a = e(o, n + r),
                  s = 2 * (a >> 31) + 1,
                  c = a >>> 20 & 2047,
                  u = 4294967296 * (1048575 & a) + i;
                return 2047 === c ? u ? NaN : s * (1 / 0) : 0 === c ? 5e-324 * s * u : s * Math.pow(2, c - 1075) * (u + 4503599627370496);
              }
              e.writeDoubleLE = t.bind(null, r, 0, 4), e.writeDoubleBE = t.bind(null, o, 4, 0), e.readDoubleLE = a.bind(null, n, 0, 4), e.readDoubleBE = a.bind(null, i, 4, 0);
            }(), e;
          }
          function r(e, t, r) {
            t[r] = 255 & e, t[r + 1] = e >>> 8 & 255, t[r + 2] = e >>> 16 & 255, t[r + 3] = e >>> 24;
          }
          function o(e, t, r) {
            t[r] = e >>> 24, t[r + 1] = e >>> 16 & 255, t[r + 2] = e >>> 8 & 255, t[r + 3] = 255 & e;
          }
          function n(e, t) {
            return (e[t] | e[t + 1] << 8 | e[t + 2] << 16 | e[t + 3] << 24) >>> 0;
          }
          function i(e, t) {
            return (e[t] << 24 | e[t + 1] << 16 | e[t + 2] << 8 | e[t + 3]) >>> 0;
          }
          e.exports = t(t);
        },
        939: function _(e) {
          e.exports = r;
          var t = null;
          try {
            t = new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0, 97, 115, 109, 1, 0, 0, 0, 1, 13, 2, 96, 0, 1, 127, 96, 4, 127, 127, 127, 127, 1, 127, 3, 7, 6, 0, 1, 1, 1, 1, 1, 6, 6, 1, 127, 1, 65, 0, 11, 7, 50, 6, 3, 109, 117, 108, 0, 1, 5, 100, 105, 118, 95, 115, 0, 2, 5, 100, 105, 118, 95, 117, 0, 3, 5, 114, 101, 109, 95, 115, 0, 4, 5, 114, 101, 109, 95, 117, 0, 5, 8, 103, 101, 116, 95, 104, 105, 103, 104, 0, 0, 10, 191, 1, 6, 4, 0, 35, 0, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 126, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 127, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 128, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 129, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11, 36, 1, 1, 126, 32, 0, 173, 32, 1, 173, 66, 32, 134, 132, 32, 2, 173, 32, 3, 173, 66, 32, 134, 132, 130, 34, 4, 66, 32, 135, 167, 36, 0, 32, 4, 167, 11])), {}).exports;
          } catch (e) {}
          function r(e, t, r) {
            this.low = 0 | e, this.high = 0 | t, this.unsigned = !!r;
          }
          function o(e) {
            return !0 === (e && e.__isLong__);
          }
          r.prototype.__isLong__, Object.defineProperty(r.prototype, "__isLong__", {
            value: !0
          }), r.isLong = o;
          var n = {},
            i = {};
          function a(e, t) {
            var r, o, a;
            return t ? (a = 0 <= (e >>>= 0) && e < 256) && (o = i[e]) ? o : (r = c(e, (0 | e) < 0 ? -1 : 0, !0), a && (i[e] = r), r) : (a = -128 <= (e |= 0) && e < 128) && (o = n[e]) ? o : (r = c(e, e < 0 ? -1 : 0, !1), a && (n[e] = r), r);
          }
          function s(e, t) {
            if (isNaN(e)) return t ? E : g;
            if (t) {
              if (e < 0) return E;
              if (e >= h) return R;
            } else {
              if (e <= -f) return O;
              if (e + 1 >= f) return _;
            }
            return e < 0 ? s(-e, t).neg() : c(e % p | 0, e / p | 0, t);
          }
          function c(e, t, o) {
            return new r(e, t, o);
          }
          r.fromInt = a, r.fromNumber = s, r.fromBits = c;
          var u = Math.pow;
          function l(e, t, r) {
            if (0 === e.length) throw Error("empty string");
            if ("NaN" === e || "Infinity" === e || "+Infinity" === e || "-Infinity" === e) return g;
            if ("number" == typeof t ? (r = t, t = !1) : t = !!t, (r = r || 10) < 2 || 36 < r) throw RangeError("radix");
            var o;
            if ((o = e.indexOf("-")) > 0) throw Error("interior hyphen");
            if (0 === o) return l(e.substring(1), t, r).neg();
            for (var n = s(u(r, 8)), i = g, a = 0; a < e.length; a += 8) {
              var c = Math.min(8, e.length - a),
                d = parseInt(e.substring(a, a + c), r);
              if (c < 8) {
                var p = s(u(r, c));
                i = i.mul(p).add(s(d));
              } else i = (i = i.mul(n)).add(s(d));
            }
            return i.unsigned = t, i;
          }
          function d(e, t) {
            return "number" == typeof e ? s(e, t) : "string" == typeof e ? l(e, t) : c(e.low, e.high, "boolean" == typeof t ? t : e.unsigned);
          }
          r.fromString = l, r.fromValue = d;
          var p = 4294967296,
            h = p * p,
            f = h / 2,
            m = a(1 << 24),
            g = a(0);
          r.ZERO = g;
          var E = a(0, !0);
          r.UZERO = E;
          var y = a(1);
          r.ONE = y;
          var T = a(1, !0);
          r.UONE = T;
          var v = a(-1);
          r.NEG_ONE = v;
          var _ = c(-1, 2147483647, !1);
          r.MAX_VALUE = _;
          var R = c(-1, -1, !0);
          r.MAX_UNSIGNED_VALUE = R;
          var O = c(0, -2147483648, !1);
          r.MIN_VALUE = O;
          var I = r.prototype;
          I.toInt = function () {
            return this.unsigned ? this.low >>> 0 : this.low;
          }, I.toNumber = function () {
            return this.unsigned ? (this.high >>> 0) * p + (this.low >>> 0) : this.high * p + (this.low >>> 0);
          }, I.toString = function (e) {
            if ((e = e || 10) < 2 || 36 < e) throw RangeError("radix");
            if (this.isZero()) return "0";
            if (this.isNegative()) {
              if (this.eq(O)) {
                var t = s(e),
                  r = this.div(t),
                  o = r.mul(t).sub(this);
                return r.toString(e) + o.toInt().toString(e);
              }
              return "-" + this.neg().toString(e);
            }
            for (var n = s(u(e, 6), this.unsigned), i = this, a = "";;) {
              var c = i.div(n),
                l = (i.sub(c.mul(n)).toInt() >>> 0).toString(e);
              if ((i = c).isZero()) return l + a;
              for (; l.length < 6;) {
                l = "0" + l;
              }
              a = "" + l + a;
            }
          }, I.getHighBits = function () {
            return this.high;
          }, I.getHighBitsUnsigned = function () {
            return this.high >>> 0;
          }, I.getLowBits = function () {
            return this.low;
          }, I.getLowBitsUnsigned = function () {
            return this.low >>> 0;
          }, I.getNumBitsAbs = function () {
            if (this.isNegative()) return this.eq(O) ? 64 : this.neg().getNumBitsAbs();
            for (var e = 0 != this.high ? this.high : this.low, t = 31; t > 0 && 0 == (e & 1 << t); t--) {
              ;
            }
            return 0 != this.high ? t + 33 : t + 1;
          }, I.isZero = function () {
            return 0 === this.high && 0 === this.low;
          }, I.eqz = I.isZero, I.isNegative = function () {
            return !this.unsigned && this.high < 0;
          }, I.isPositive = function () {
            return this.unsigned || this.high >= 0;
          }, I.isOdd = function () {
            return 1 == (1 & this.low);
          }, I.isEven = function () {
            return 0 == (1 & this.low);
          }, I.equals = function (e) {
            return o(e) || (e = d(e)), (this.unsigned === e.unsigned || this.high >>> 31 != 1 || e.high >>> 31 != 1) && this.high === e.high && this.low === e.low;
          }, I.eq = I.equals, I.notEquals = function (e) {
            return !this.eq(e);
          }, I.neq = I.notEquals, I.ne = I.notEquals, I.lessThan = function (e) {
            return this.comp(e) < 0;
          }, I.lt = I.lessThan, I.lessThanOrEqual = function (e) {
            return this.comp(e) <= 0;
          }, I.lte = I.lessThanOrEqual, I.le = I.lessThanOrEqual, I.greaterThan = function (e) {
            return this.comp(e) > 0;
          }, I.gt = I.greaterThan, I.greaterThanOrEqual = function (e) {
            return this.comp(e) >= 0;
          }, I.gte = I.greaterThanOrEqual, I.ge = I.greaterThanOrEqual, I.compare = function (e) {
            if (o(e) || (e = d(e)), this.eq(e)) return 0;
            var t = this.isNegative(),
              r = e.isNegative();
            return t && !r ? -1 : !t && r ? 1 : this.unsigned ? e.high >>> 0 > this.high >>> 0 || e.high === this.high && e.low >>> 0 > this.low >>> 0 ? -1 : 1 : this.sub(e).isNegative() ? -1 : 1;
          }, I.comp = I.compare, I.negate = function () {
            return !this.unsigned && this.eq(O) ? O : this.not().add(y);
          }, I.neg = I.negate, I.add = function (e) {
            o(e) || (e = d(e));
            var t = this.high >>> 16,
              r = 65535 & this.high,
              n = this.low >>> 16,
              i = 65535 & this.low,
              a = e.high >>> 16,
              s = 65535 & e.high,
              u = e.low >>> 16,
              l = 0,
              p = 0,
              h = 0,
              f = 0;
            return h += (f += i + (65535 & e.low)) >>> 16, p += (h += n + u) >>> 16, l += (p += r + s) >>> 16, l += t + a, c((h &= 65535) << 16 | (f &= 65535), (l &= 65535) << 16 | (p &= 65535), this.unsigned);
          }, I.subtract = function (e) {
            return o(e) || (e = d(e)), this.add(e.neg());
          }, I.sub = I.subtract, I.multiply = function (e) {
            if (this.isZero()) return g;
            if (o(e) || (e = d(e)), t) return c(t.mul(this.low, this.high, e.low, e.high), t.get_high(), this.unsigned);
            if (e.isZero()) return g;
            if (this.eq(O)) return e.isOdd() ? O : g;
            if (e.eq(O)) return this.isOdd() ? O : g;
            if (this.isNegative()) return e.isNegative() ? this.neg().mul(e.neg()) : this.neg().mul(e).neg();
            if (e.isNegative()) return this.mul(e.neg()).neg();
            if (this.lt(m) && e.lt(m)) return s(this.toNumber() * e.toNumber(), this.unsigned);
            var r = this.high >>> 16,
              n = 65535 & this.high,
              i = this.low >>> 16,
              a = 65535 & this.low,
              u = e.high >>> 16,
              l = 65535 & e.high,
              p = e.low >>> 16,
              h = 65535 & e.low,
              f = 0,
              E = 0,
              y = 0,
              T = 0;
            return y += (T += a * h) >>> 16, E += (y += i * h) >>> 16, y &= 65535, E += (y += a * p) >>> 16, f += (E += n * h) >>> 16, E &= 65535, f += (E += i * p) >>> 16, E &= 65535, f += (E += a * l) >>> 16, f += r * h + n * p + i * l + a * u, c((y &= 65535) << 16 | (T &= 65535), (f &= 65535) << 16 | (E &= 65535), this.unsigned);
          }, I.mul = I.multiply, I.divide = function (e) {
            if (o(e) || (e = d(e)), e.isZero()) throw Error("division by zero");
            var r, n, i;
            if (t) return this.unsigned || -2147483648 !== this.high || -1 !== e.low || -1 !== e.high ? c((this.unsigned ? t.div_u : t.div_s)(this.low, this.high, e.low, e.high), t.get_high(), this.unsigned) : this;
            if (this.isZero()) return this.unsigned ? E : g;
            if (this.unsigned) {
              if (e.unsigned || (e = e.toUnsigned()), e.gt(this)) return E;
              if (e.gt(this.shru(1))) return T;
              i = E;
            } else {
              if (this.eq(O)) return e.eq(y) || e.eq(v) ? O : e.eq(O) ? y : (r = this.shr(1).div(e).shl(1)).eq(g) ? e.isNegative() ? y : v : (n = this.sub(e.mul(r)), i = r.add(n.div(e)));
              if (e.eq(O)) return this.unsigned ? E : g;
              if (this.isNegative()) return e.isNegative() ? this.neg().div(e.neg()) : this.neg().div(e).neg();
              if (e.isNegative()) return this.div(e.neg()).neg();
              i = g;
            }
            for (n = this; n.gte(e);) {
              r = Math.max(1, Math.floor(n.toNumber() / e.toNumber()));
              for (var a = Math.ceil(Math.log(r) / Math.LN2), l = a <= 48 ? 1 : u(2, a - 48), p = s(r), h = p.mul(e); h.isNegative() || h.gt(n);) {
                h = (p = s(r -= l, this.unsigned)).mul(e);
              }
              p.isZero() && (p = y), i = i.add(p), n = n.sub(h);
            }
            return i;
          }, I.div = I.divide, I.modulo = function (e) {
            return o(e) || (e = d(e)), t ? c((this.unsigned ? t.rem_u : t.rem_s)(this.low, this.high, e.low, e.high), t.get_high(), this.unsigned) : this.sub(this.div(e).mul(e));
          }, I.mod = I.modulo, I.rem = I.modulo, I.not = function () {
            return c(~this.low, ~this.high, this.unsigned);
          }, I.and = function (e) {
            return o(e) || (e = d(e)), c(this.low & e.low, this.high & e.high, this.unsigned);
          }, I.or = function (e) {
            return o(e) || (e = d(e)), c(this.low | e.low, this.high | e.high, this.unsigned);
          }, I.xor = function (e) {
            return o(e) || (e = d(e)), c(this.low ^ e.low, this.high ^ e.high, this.unsigned);
          }, I.shiftLeft = function (e) {
            return o(e) && (e = e.toInt()), 0 == (e &= 63) ? this : e < 32 ? c(this.low << e, this.high << e | this.low >>> 32 - e, this.unsigned) : c(0, this.low << e - 32, this.unsigned);
          }, I.shl = I.shiftLeft, I.shiftRight = function (e) {
            return o(e) && (e = e.toInt()), 0 == (e &= 63) ? this : e < 32 ? c(this.low >>> e | this.high << 32 - e, this.high >> e, this.unsigned) : c(this.high >> e - 32, this.high >= 0 ? 0 : -1, this.unsigned);
          }, I.shr = I.shiftRight, I.shiftRightUnsigned = function (e) {
            if (o(e) && (e = e.toInt()), 0 == (e &= 63)) return this;
            var t = this.high;
            return e < 32 ? c(this.low >>> e | t << 32 - e, t >>> e, this.unsigned) : c(32 === e ? t : t >>> e - 32, 0, this.unsigned);
          }, I.shru = I.shiftRightUnsigned, I.shr_u = I.shiftRightUnsigned, I.toSigned = function () {
            return this.unsigned ? c(this.low, this.high, !1) : this;
          }, I.toUnsigned = function () {
            return this.unsigned ? this : c(this.low, this.high, !0);
          }, I.toBytes = function (e) {
            return e ? this.toBytesLE() : this.toBytesBE();
          }, I.toBytesLE = function () {
            var e = this.high,
              t = this.low;
            return [255 & t, t >>> 8 & 255, t >>> 16 & 255, t >>> 24, 255 & e, e >>> 8 & 255, e >>> 16 & 255, e >>> 24];
          }, I.toBytesBE = function () {
            var e = this.high,
              t = this.low;
            return [e >>> 24, e >>> 16 & 255, e >>> 8 & 255, 255 & e, t >>> 24, t >>> 16 & 255, t >>> 8 & 255, 255 & t];
          }, r.fromBytes = function (e, t, o) {
            return o ? r.fromBytesLE(e, t) : r.fromBytesBE(e, t);
          }, r.fromBytesLE = function (e, t) {
            return new r(e[0] | e[1] << 8 | e[2] << 16 | e[3] << 24, e[4] | e[5] << 8 | e[6] << 16 | e[7] << 24, t);
          }, r.fromBytesBE = function (e, t) {
            return new r(e[4] << 24 | e[5] << 16 | e[6] << 8 | e[7], e[0] << 24 | e[1] << 16 | e[2] << 8 | e[3], t);
          };
        },
        365: function _(e, t, r) {
          e.exports = n;
          var o = r(935);
          function n(e, t) {
            this.lo = e >>> 0, this.hi = t >>> 0;
          }
          var i = n.zero = new n(0, 0);
          i.toNumber = function () {
            return 0;
          }, i.zzEncode = i.zzDecode = function () {
            return this;
          }, i.length = function () {
            return 1;
          };
          var a = n.zeroHash = "\0\0\0\0\0\0\0\0";
          n.fromNumber = function (e) {
            if (0 === e) return i;
            var t = e < 0;
            t && (e = -e);
            var r = e >>> 0,
              o = (e - r) / 4294967296 >>> 0;
            return t && (o = ~o >>> 0, r = ~r >>> 0, ++r > 4294967295 && (r = 0, ++o > 4294967295 && (o = 0))), new n(r, o);
          }, n.from = function (e) {
            if ("number" == typeof e) return n.fromNumber(e);
            if ("string" == typeof e || e instanceof String) {
              if (!o.Long) return n.fromNumber(parseInt(e, 10));
              e = o.Long.fromString(e);
            }
            return e.low || e.high ? new n(e.low >>> 0, e.high >>> 0) : i;
          }, n.prototype.toNumber = function (e) {
            if (!e && this.hi >>> 31) {
              var t = 1 + ~this.lo >>> 0,
                r = ~this.hi >>> 0;
              return t || (r = r + 1 >>> 0), -(t + 4294967296 * r);
            }
            return this.lo + 4294967296 * this.hi;
          }, n.prototype.toLong = function (e) {
            return o.Long ? new o.Long(0 | this.lo, 0 | this.hi, Boolean(e)) : {
              low: 0 | this.lo,
              high: 0 | this.hi,
              unsigned: Boolean(e)
            };
          };
          var s = String.prototype.charCodeAt;
          n.fromHash = function (e) {
            return e === a ? i : new n((s.call(e, 0) | s.call(e, 1) << 8 | s.call(e, 2) << 16 | s.call(e, 3) << 24) >>> 0, (s.call(e, 4) | s.call(e, 5) << 8 | s.call(e, 6) << 16 | s.call(e, 7) << 24) >>> 0);
          }, n.prototype.toHash = function () {
            return String.fromCharCode(255 & this.lo, this.lo >>> 8 & 255, this.lo >>> 16 & 255, this.lo >>> 24, 255 & this.hi, this.hi >>> 8 & 255, this.hi >>> 16 & 255, this.hi >>> 24);
          }, n.prototype.zzEncode = function () {
            var e = this.hi >> 31;
            return this.hi = ((this.hi << 1 | this.lo >>> 31) ^ e) >>> 0, this.lo = (this.lo << 1 ^ e) >>> 0, this;
          }, n.prototype.zzDecode = function () {
            var e = -(1 & this.lo);
            return this.lo = ((this.lo >>> 1 | this.hi << 31) ^ e) >>> 0, this.hi = (this.hi >>> 1 ^ e) >>> 0, this;
          }, n.prototype.length = function () {
            var e = this.lo,
              t = (this.lo >>> 28 | this.hi << 4) >>> 0,
              r = this.hi >>> 24;
            return 0 === r ? 0 === t ? e < 16384 ? e < 128 ? 1 : 2 : e < 2097152 ? 3 : 4 : t < 16384 ? t < 128 ? 5 : 6 : t < 2097152 ? 7 : 8 : r < 128 ? 9 : 10;
          };
        },
        435: function _(e, t, r) {
          e.exports = a;
          var o,
            n,
            i = r(286);
          function a(e, t, r, o, a, s) {
            if (i.call(this, e, t, o, void 0, void 0, a, s), !n.isString(r)) throw TypeError("keyType must be a string");
            this.keyType = r, this.resolvedKeyType = null, this.map = !0;
          }
          ((a.prototype = Object.create(i.prototype)).constructor = a).className = "MapField", a.fromJSON = function (e, t) {
            return new a(e, t.id, t.keyType, t.type, t.options, t.comment);
          }, a.prototype.toJSON = function (e) {
            var t = !!e && Boolean(e.keepComments);
            return n.toObject(["keyType", this.keyType, "type", this.type, "id", this.id, "extend", this.extend, "options", this.options, "comment", t ? this.comment : void 0]);
          }, a.prototype.resolve = function () {
            if (this.resolved) return this;
            if (void 0 === o.mapKey[this.keyType]) throw Error("invalid key type: " + this.keyType);
            return i.prototype.resolve.call(this);
          }, a.d = function (e, t, r) {
            return "function" == typeof r ? r = n.decorateType(r).name : r && "object" == _typeof(r) && (r = n.decorateEnum(r).name), function (o, i) {
              n.decorateType(o.constructor).add(new a(i, e, t, r));
            };
          }, a._configure = function () {
            o = r(696), n = r(935);
          };
        },
        339: function _(e, t, r) {
          "use strict";

          var o;
          function n(e) {
            if (e) for (var t = Object.keys(e), r = 0; r < t.length; ++r) {
              this[t[r]] = e[t[r]];
            }
          }
          e.exports = n, n.create = function (e) {
            return this.$type.create(e);
          }, n.encode = function (e, t) {
            return arguments.length ? 1 == arguments.length ? this.$type.encode(arguments[0]) : this.$type.encode(arguments[0], arguments[1]) : this.$type.encode(this);
          }, n.encodeDelimited = function (e, t) {
            return this.$type.encodeDelimited(e, t);
          }, n.decode = function (e) {
            return this.$type.decode(e);
          }, n.decodeDelimited = function (e) {
            return this.$type.decodeDelimited(e);
          }, n.verify = function (e) {
            return this.$type.verify(e);
          }, n.fromObject = function (e) {
            return this.$type.fromObject(e);
          }, n.toObject = function (e, t) {
            return e = e || this, this.$type.toObject(e, t);
          }, n.prototype.toJSON = function () {
            return this.$type.toObject(this, o.toJSONOptions);
          }, n.set = function (e, t) {
            n[e] = t;
          }, n.get = function (e) {
            return n[e];
          }, n._configure = function () {
            o = r(935);
          };
        },
        484: function _(e, t, r) {
          "use strict";

          e.exports = i;
          var o,
            n = r(998);
          function i(e, t, r, i, a, s, c, u) {
            if (o.isObject(a) ? (c = a, a = s = void 0) : o.isObject(s) && (c = s, s = void 0), void 0 !== t && !o.isString(t)) throw TypeError("type must be a string");
            if (!o.isString(r)) throw TypeError("requestType must be a string");
            if (!o.isString(i)) throw TypeError("responseType must be a string");
            n.call(this, e, c), this.type = t || "rpc", this.requestType = r, this.requestStream = !!a || void 0, this.responseType = i, this.responseStream = !!s || void 0, this.resolvedRequestType = null, this.resolvedResponseType = null, this.comment = u;
          }
          ((i.prototype = Object.create(n.prototype)).constructor = i).className = "Method", i.fromJSON = function (e, t) {
            return new i(e, t.type, t.requestType, t.responseType, t.requestStream, t.responseStream, t.options, t.comment);
          }, i.prototype.toJSON = function (e) {
            var t = !!e && Boolean(e.keepComments);
            return o.toObject(["type", "rpc" !== this.type && this.type || void 0, "requestType", this.requestType, "requestStream", this.requestStream, "responseType", this.responseType, "responseStream", this.responseStream, "options", this.options, "comment", t ? this.comment : void 0]);
          }, i.prototype.resolve = function () {
            return this.resolved ? this : (this.resolvedRequestType = this.parent.lookupType(this.requestType), this.resolvedResponseType = this.parent.lookupType(this.responseType), n.prototype.resolve.call(this));
          }, i._configure = function () {
            o = r(935);
          };
        },
        476: function _(e, t, r) {
          e.exports = l;
          var o,
            n,
            i,
            a,
            s,
            c = r(998);
          function u(e, t) {
            if (e && e.length) {
              for (var r = {}, o = 0; o < e.length; ++o) {
                r[e[o].name] = e[o].toJSON(t);
              }
              return r;
            }
          }
          function l(e, t) {
            c.call(this, e, t), this.nested = void 0, this._nestedArray = null;
          }
          function d(e) {
            return e._nestedArray = null, e;
          }
          ((l.prototype = Object.create(c.prototype)).constructor = l).className = "Namespace", l.fromJSON = function (e, t) {
            return new l(e, t.options).addJSON(t.nested);
          }, l.arrayToJSON = u, l.isReservedId = function (e, t) {
            if (e) for (var r = 0; r < e.length; ++r) {
              if ("string" != typeof e[r] && e[r][0] <= t && e[r][1] >= t) return !0;
            }
            return !1;
          }, l.isReservedName = function (e, t) {
            if (e) for (var r = 0; r < e.length; ++r) {
              if (e[r] === t) return !0;
            }
            return !1;
          }, Object.defineProperty(l.prototype, "nestedArray", {
            get: function get() {
              return this._nestedArray || (this._nestedArray = i.toArray(this.nested));
            }
          }), l.prototype.toJSON = function (e) {
            return i.toObject(["options", this.options, "nested", u(this.nestedArray, e)]);
          }, l.prototype.addJSON = function (e) {
            if (e) for (var t, r = Object.keys(e), i = 0; i < r.length; ++i) {
              t = e[r[i]], this.add((void 0 !== t.fields ? a.fromJSON : void 0 !== t.values ? o.fromJSON : void 0 !== t.methods ? s.fromJSON : void 0 !== t.id ? n.fromJSON : l.fromJSON)(r[i], t));
            }
            return this;
          }, l.prototype.get = function (e) {
            return this.nested && this.nested[e] || null;
          }, l.prototype.getEnum = function (e) {
            if (this.nested && this.nested[e] instanceof o) return this.nested[e].values;
            throw Error("no such enum: " + e);
          }, l.prototype.add = function (e) {
            if (!(e instanceof n && void 0 !== e.extend || e instanceof a || e instanceof o || e instanceof s || e instanceof l)) throw TypeError("object must be a valid nested object");
            if (this.nested) {
              var t = this.get(e.name);
              if (t) {
                if (!(t instanceof l && e instanceof l) || t instanceof a || t instanceof s) throw Error("duplicate name '" + e.name + "' in " + this);
                for (var r = t.nestedArray, i = 0; i < r.length; ++i) {
                  e.add(r[i]);
                }
                this.remove(t), this.nested || (this.nested = {}), e.setOptions(t.options, !0);
              }
            } else this.nested = {};
            return this.nested[e.name] = e, e.onAdd(this), d(this);
          }, l.prototype.remove = function (e) {
            if (!(e instanceof c)) throw TypeError("object must be a ReflectionObject");
            if (e.parent !== this) throw Error(e + " is not a member of " + this);
            return delete this.nested[e.name], Object.keys(this.nested).length || (this.nested = void 0), e.onRemove(this), d(this);
          }, l.prototype.define = function (e, t) {
            if (i.isString(e)) e = e.split(".");else if (!Array.isArray(e)) throw TypeError("illegal path");
            if (e && e.length && "" === e[0]) throw Error("path must be relative");
            for (var r = this; e.length > 0;) {
              var o = e.shift();
              if (r.nested && r.nested[o]) {
                if (!((r = r.nested[o]) instanceof l)) throw Error("path conflicts with non-namespace objects");
              } else r.add(r = new l(o));
            }
            return t && r.addJSON(t), r;
          }, l.prototype.resolveAll = function () {
            for (var e = this.nestedArray, t = 0; t < e.length;) {
              e[t] instanceof l ? e[t++].resolveAll() : e[t++].resolve();
            }
            return this.resolve();
          }, l.prototype.lookup = function (e, t, r) {
            if ("boolean" == typeof t ? (r = t, t = void 0) : t && !Array.isArray(t) && (t = [t]), i.isString(e) && e.length) {
              if ("." === e) return this.root;
              e = e.split(".");
            } else if (!e.length) return this;
            if ("" === e[0]) return this.root.lookup(e.slice(1), t);
            var o = this.get(e[0]);
            if (o) {
              if (1 === e.length) {
                if (!t || t.indexOf(o.constructor) > -1) return o;
              } else if (o instanceof l && (o = o.lookup(e.slice(1), t, !0))) return o;
            } else for (var n = 0; n < this.nestedArray.length; ++n) {
              if (this._nestedArray[n] instanceof l && (o = this._nestedArray[n].lookup(e, t, !0))) return o;
            }
            return null === this.parent || r ? null : this.parent.lookup(e, t);
          }, l.prototype.lookupType = function (e) {
            var t = this.lookup(e, [a]);
            if (!t) throw Error("no such type: " + e);
            return t;
          }, l.prototype.lookupEnum = function (e) {
            var t = this.lookup(e, [o]);
            if (!t) throw Error("no such Enum '" + e + "' in " + this);
            return t;
          }, l.prototype.lookupTypeOrEnum = function (e) {
            var t = this.lookup(e, [a, o]);
            if (!t) throw Error("no such Type or Enum '" + e + "' in " + this);
            return t;
          }, l.prototype.lookupService = function (e) {
            var t = this.lookup(e, [s]);
            if (!t) throw Error("no such Service '" + e + "' in " + this);
            return t;
          }, l._configure = function () {
            o = r(582), n = r(286), i = r(935), a = r(192), s = r(447);
          };
        },
        998: function _(e, t, r) {
          "use strict";

          var o, n;
          function i(e, t) {
            if (!o.isString(e)) throw TypeError("name must be a string");
            if (t && !o.isObject(t)) throw TypeError("options must be an object");
            this.options = t, this.name = e, this.parent = null, this.resolved = !1, this.comment = null, this.filename = null;
          }
          e.exports = i, i.className = "ReflectionObject", Object.defineProperties(i.prototype, {
            root: {
              get: function get() {
                for (var e = this; null !== e.parent;) {
                  e = e.parent;
                }
                return e;
              }
            },
            fullName: {
              get: function get() {
                for (var e = [this.name], t = this.parent; t;) {
                  e.unshift(t.name), t = t.parent;
                }
                return e.join(".");
              }
            }
          }), i.prototype.toJSON = function () {
            throw Error();
          }, i.prototype.onAdd = function (e) {
            this.parent && this.parent !== e && this.parent.remove(this), this.parent = e, this.resolved = !1;
            var t = e.root;
            t instanceof n && t._handleAdd(this);
          }, i.prototype.onRemove = function (e) {
            var t = e.root;
            t instanceof n && t._handleRemove(this), this.parent = null, this.resolved = !1;
          }, i.prototype.resolve = function () {
            return this.resolved || this.root instanceof n && (this.resolved = !0), this;
          }, i.prototype.getOption = function (e) {
            if (this.options) return this.options[e];
          }, i.prototype.setOption = function (e, t, r) {
            return r && this.options && void 0 !== this.options[e] || ((this.options || (this.options = {}))[e] = t), this;
          }, i.prototype.setOptions = function (e, t) {
            if (e) for (var r = Object.keys(e), o = 0; o < r.length; ++o) {
              this.setOption(r[o], e[r[o]], t);
            }
            return this;
          }, i.prototype.toString = function () {
            var e = this.constructor.className,
              t = this.fullName;
            return t.length ? e + " " + t : e;
          }, i._configure = function (e) {
            n = r(685), o = r(935);
          };
        },
        735: function _(e, t, r) {
          e.exports = a;
          var o,
            n,
            i = r(998);
          function a(e, t, r, o) {
            if (Array.isArray(t) || (r = t, t = void 0), i.call(this, e, r), void 0 !== t && !Array.isArray(t)) throw TypeError("fieldNames must be an Array");
            this.oneof = t || [], this.fieldsArray = [], this.comment = o;
          }
          function s(e) {
            if (e.parent) for (var t = 0; t < e.fieldsArray.length; ++t) {
              e.fieldsArray[t].parent || e.parent.add(e.fieldsArray[t]);
            }
          }
          ((a.prototype = Object.create(i.prototype)).constructor = a).className = "OneOf", a.fromJSON = function (e, t) {
            return new a(e, t.oneof, t.options, t.comment);
          }, a.prototype.toJSON = function (e) {
            var t = !!e && Boolean(e.keepComments);
            return n.toObject(["options", this.options, "oneof", this.oneof, "comment", t ? this.comment : void 0]);
          }, a.prototype.add = function (e) {
            if (!(e instanceof o)) throw TypeError("field must be a Field");
            return e.parent && e.parent !== this.parent && e.parent.remove(e), this.oneof.push(e.name), this.fieldsArray.push(e), e.partOf = this, s(this), this;
          }, a.prototype.remove = function (e) {
            if (!(e instanceof o)) throw TypeError("field must be a Field");
            var t = this.fieldsArray.indexOf(e);
            if (t < 0) throw Error(e + " is not a member of " + this);
            return this.fieldsArray.splice(t, 1), (t = this.oneof.indexOf(e.name)) > -1 && this.oneof.splice(t, 1), e.partOf = null, this;
          }, a.prototype.onAdd = function (e) {
            i.prototype.onAdd.call(this, e);
            for (var t = 0; t < this.oneof.length; ++t) {
              var r = e.get(this.oneof[t]);
              r && !r.partOf && (r.partOf = this, this.fieldsArray.push(r));
            }
            s(this);
          }, a.prototype.onRemove = function (e) {
            for (var t, r = 0; r < this.fieldsArray.length; ++r) {
              (t = this.fieldsArray[r]).parent && t.parent.remove(t);
            }
            i.prototype.onRemove.call(this, e);
          }, a.d = function () {
            for (var e = new Array(arguments.length), t = 0; t < arguments.length;) {
              e[t] = arguments[t++];
            }
            return function (t, r) {
              n.decorateType(t.constructor).add(new a(r, e)), Object.defineProperty(t, r, {
                get: n.oneOfGetter(e),
                set: n.oneOfSetter(e)
              });
            };
          }, a._configure = function () {
            o = r(286), n = r(935);
          };
        },
        845: function _(e, t, r) {
          "use strict";

          var o, n, i, a, s, c, u, l, d, p, h;
          e.exports = I, I.filename = null, I.defaults = {
            keepCase: !1
          };
          var f = /^[1-9][0-9]*$/,
            m = /^-?[1-9][0-9]*$/,
            g = /^0[x][0-9a-fA-F]+$/,
            E = /^-?0[x][0-9a-fA-F]+$/,
            y = /^0[0-7]+$/,
            T = /^-?0[0-7]+$/,
            v = /^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/,
            _ = /^[a-zA-Z_][a-zA-Z_0-9]*$/,
            R = /^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)+$/,
            O = /^(?:\.[a-zA-Z][a-zA-Z_0-9]*)+$/;
          function I(e, t, r) {
            t instanceof n || (r = t, t = new n()), r || (r = I.defaults);
            var S,
              C,
              A,
              N,
              M,
              b = o(e, r.alternateCommentMode || !1),
              U = b.next,
              w = b.push,
              P = b.peek,
              k = b.skip,
              L = b.cmnt,
              D = !0,
              G = !1,
              x = t,
              B = r.keepCase ? function (e) {
                return e;
              } : h.camelCase;
            function j(e, t, r) {
              var o = I.filename;
              return r || (I.filename = null), Error("illegal " + (t || "token") + " '" + e + "' (" + (o ? o + ", " : "") + "line " + b.line + ")");
            }
            function H() {
              var e,
                t = [];
              do {
                if ('"' !== (e = U()) && "'" !== e) throw j(e);
                t.push(U()), k(e), e = P();
              } while ('"' === e || "'" === e);
              return t.join("");
            }
            function F(e) {
              var t = U();
              switch (t) {
                case "'":
                case '"':
                  return w(t), H();
                case "true":
                case "TRUE":
                  return !0;
                case "false":
                case "FALSE":
                  return !1;
              }
              try {
                return function (e, t) {
                  var r = 1;
                  switch ("-" === e.charAt(0) && (r = -1, e = e.substring(1)), e) {
                    case "inf":
                    case "INF":
                    case "Inf":
                      return r * (1 / 0);
                    case "nan":
                    case "NAN":
                    case "Nan":
                    case "NaN":
                      return NaN;
                    case "0":
                      return 0;
                  }
                  if (f.test(e)) return r * parseInt(e, 10);
                  if (g.test(e)) return r * parseInt(e, 16);
                  if (y.test(e)) return r * parseInt(e, 8);
                  if (v.test(e)) return r * parseFloat(e);
                  throw j(e, "number", !0);
                }(t);
              } catch (r) {
                if (e && R.test(t)) return t;
                throw j(t, "value");
              }
            }
            function W(e, t) {
              var r, o;
              do {
                !t || '"' !== (r = P()) && "'" !== r ? e.push([o = K(U()), k("to", !0) ? K(U()) : o]) : e.push(H());
              } while (k(",", !0));
              k(";");
            }
            function K(e, t) {
              switch (e) {
                case "max":
                case "MAX":
                case "Max":
                  return 536870911;
                case "0":
                  return 0;
              }
              if (!t && "-" === e.charAt(0)) throw j(e, "id");
              if (m.test(e)) return parseInt(e, 10);
              if (E.test(e)) return parseInt(e, 16);
              if (T.test(e)) return parseInt(e, 8);
              throw j(e, "id");
            }
            function q() {
              if (void 0 !== S) throw j("package");
              if (S = U(), !R.test(S)) throw j(S, "name");
              x = x.define(S), k(";");
            }
            function z() {
              var e,
                t = P();
              switch (t) {
                case "weak":
                  e = A || (A = []), U();
                  break;
                case "public":
                  U();
                default:
                  e = C || (C = []);
              }
              t = H(), k(";"), e.push(t);
            }
            function V() {
              if (k("="), N = H(), !(G = "proto3" === N) && "proto2" !== N) throw j(N, "syntax");
              k(";");
            }
            function J(e, t) {
              switch (t) {
                case "option":
                  return Q(e, t), k(";"), !0;
                case "message":
                  return function (e, t) {
                    if (!_.test(t = U())) throw j(t, "type name");
                    var r = new i(t);
                    X(r, function (e) {
                      if (!J(r, e)) switch (e) {
                        case "map":
                          !function (e) {
                            k("<");
                            var t = U();
                            if (void 0 === p.mapKey[t]) throw j(t, "type");
                            k(",");
                            var r = U();
                            if (!R.test(r)) throw j(r, "type");
                            k(">");
                            var o = U();
                            if (!_.test(o)) throw j(o, "name");
                            k("=");
                            var n = new s(B(o), K(U()), t, r);
                            X(n, function (e) {
                              if ("option" !== e) throw j(e);
                              Q(n, e), k(";");
                            }, function () {
                              ee(n);
                            }), e.add(n);
                          }(r);
                          break;
                        case "required":
                        case "optional":
                        case "repeated":
                          Y(r, e);
                          break;
                        case "oneof":
                          !function (e, t) {
                            if (!_.test(t = U())) throw j(t, "name");
                            var r = new c(B(t));
                            X(r, function (e) {
                              "option" === e ? (Q(r, e), k(";")) : (w(e), Y(r, "optional"));
                            }), e.add(r);
                          }(r, e);
                          break;
                        case "extensions":
                          W(r.extensions || (r.extensions = []));
                          break;
                        case "reserved":
                          W(r.reserved || (r.reserved = []), !0);
                          break;
                        default:
                          if (!G || !R.test(e)) throw j(e);
                          w(e), Y(r, "optional");
                      }
                    }), e.add(r);
                  }(e, t), !0;
                case "enum":
                  return function (e, t) {
                    if (!_.test(t = U())) throw j(t, "name");
                    var r = new u(t);
                    X(r, function (e) {
                      switch (e) {
                        case "option":
                          Q(r, e), k(";");
                          break;
                        case "reserved":
                          W(r.reserved || (r.reserved = []), !0);
                          break;
                        default:
                          !function (e, t) {
                            if (!_.test(t)) throw j(t, "name");
                            k("=");
                            var r = K(U(), !0),
                              o = {};
                            X(o, function (e) {
                              if ("option" !== e) throw j(e);
                              Q(o, e), k(";");
                            }, function () {
                              ee(o);
                            }), e.add(t, r, o.comment);
                          }(r, e);
                      }
                    }), e.add(r);
                  }(e, t), !0;
                case "service":
                  return function (e, t) {
                    if (!_.test(t = U())) throw j(t, "service name");
                    var r = new l(t);
                    X(r, function (e) {
                      if (!J(r, e)) {
                        if ("rpc" !== e) throw j(e);
                        !function (e, t) {
                          var r = t;
                          if (!_.test(t = U())) throw j(t, "name");
                          var o,
                            n,
                            i,
                            a,
                            s = t;
                          if (k("("), k("stream", !0) && (n = !0), !R.test(t = U())) throw j(t);
                          if (o = t, k(")"), k("returns"), k("("), k("stream", !0) && (a = !0), !R.test(t = U())) throw j(t);
                          i = t, k(")");
                          var c = new d(s, r, o, i, n, a);
                          X(c, function (e) {
                            if ("option" !== e) throw j(e);
                            Q(c, e), k(";");
                          }), e.add(c);
                        }(r, e);
                      }
                    }), e.add(r);
                  }(e, t), !0;
                case "extend":
                  return function (e, t) {
                    if (!R.test(t = U())) throw j(t, "reference");
                    var r = t;
                    X(null, function (t) {
                      switch (t) {
                        case "required":
                        case "repeated":
                        case "optional":
                          Y(e, t, r);
                          break;
                        default:
                          if (!G || !R.test(t)) throw j(t);
                          w(t), Y(e, "optional", r);
                      }
                    });
                  }(e, t), !0;
              }
              return !1;
            }
            function X(e, t, r) {
              var o = b.line;
              if (e && (e.comment = L(), e.filename = I.filename), k("{", !0)) {
                for (var n; "}" !== (n = U());) {
                  t(n);
                }
                k(";", !0);
              } else r && r(), k(";"), e && "string" != typeof e.comment && (e.comment = L(o));
            }
            function Y(e, t, r) {
              var o = U();
              if ("group" !== o) {
                if (!R.test(o)) throw j(o, "type");
                var n = U();
                if (!_.test(n)) throw j(n, "name");
                n = B(n), k("=");
                var s = new a(n, K(U()), o, t, r);
                X(s, function (e) {
                  if ("option" !== e) throw j(e);
                  Q(s, e), k(";");
                }, function () {
                  ee(s);
                }), e.add(s), G || !s.repeated || void 0 === p.packed[o] && void 0 !== p.basic[o] || s.setOption("packed", !1, !0);
              } else !function (e, t) {
                var r = U();
                if (!_.test(r)) throw j(r, "name");
                var o = h.lcFirst(r);
                r === o && (r = h.ucFirst(r)), k("=");
                var n = K(U()),
                  s = new i(r);
                s.group = !0;
                var c = new a(o, n, r, t);
                c.filename = I.filename, X(s, function (e) {
                  switch (e) {
                    case "option":
                      Q(s, e), k(";");
                      break;
                    case "required":
                    case "optional":
                    case "repeated":
                      Y(s, e);
                      break;
                    default:
                      throw j(e);
                  }
                }), e.add(s).add(c);
              }(e, t);
            }
            function Q(e, t) {
              var r = k("(", !0);
              if (!R.test(t = U())) throw j(t, "name");
              var o = t;
              r && (k(")"), o = "(" + o + ")", t = P(), O.test(t) && (o += t, U())), k("="), $(e, o);
            }
            function $(e, t) {
              if (k("{", !0)) do {
                if (!_.test(M = U())) throw j(M, "name");
                "{" === P() ? $(e, t + "." + M) : (k(":"), "{" === P() ? $(e, t + "." + M) : Z(e, t + "." + M, F(!0)));
              } while (!k("}", !0));else Z(e, t, F(!0));
            }
            function Z(e, t, r) {
              e.setOption && e.setOption(t, r);
            }
            function ee(e) {
              if (k("[", !0)) {
                do {
                  Q(e, "option");
                } while (k(",", !0));
                k("]");
              }
              return e;
            }
            for (; null !== (M = U());) {
              switch (M) {
                case "package":
                  if (!D) throw j(M);
                  q();
                  break;
                case "import":
                  if (!D) throw j(M);
                  z();
                  break;
                case "syntax":
                  if (!D) throw j(M);
                  V();
                  break;
                case "option":
                  if (!D) throw j(M);
                  Q(x, M), k(";");
                  break;
                default:
                  if (J(x, M)) {
                    D = !1;
                    continue;
                  }
                  throw j(M);
              }
            }
            return I.filename = null, {
              package: S,
              imports: C,
              weakImports: A,
              syntax: N,
              root: t
            };
          }
          I._configure = function () {
            o = r(869), n = r(685), i = r(192), a = r(286), s = r(435), c = r(735), u = r(582), l = r(447), d = r(484), p = r(696), h = r(935);
          };
        },
        444: function _(e) {
          var t = e.exports,
            r = t.isAbsolute = function (e) {
              return /^(?:\/|\w+:)/.test(e);
            },
            o = t.normalize = function (e) {
              var t = (e = e.replace(/\\/g, "/").replace(/\/{2,}/g, "/")).split("/"),
                o = r(e),
                n = "";
              o && (n = t.shift() + "/");
              for (var i = 0; i < t.length;) {
                ".." === t[i] ? i > 0 && ".." !== t[i - 1] ? t.splice(--i, 2) : o ? t.splice(i, 1) : ++i : "." === t[i] ? t.splice(i, 1) : ++i;
              }
              return n + t.join("/");
            };
          t.resolve = function (e, t, n) {
            return n || (t = o(t)), r(t) ? t : (n || (e = o(e)), (e = e.replace(/(?:\/|^)[^/]+$/, "")).length ? o(e + "/" + t) : t);
          };
        },
        997: function _(e) {
          e.exports = function (e, t, r) {
            var o = r || 8192,
              n = o >>> 1,
              i = null,
              a = o;
            return function (r) {
              if (r < 1 || r > n) return e(r);
              a + r > o && (i = e(o), a = 0);
              var s = t.call(i, a, a += r);
              return 7 & a && (a = 1 + (7 | a)), s;
            };
          };
        },
        494: function _(e, t, r) {
          e.exports = s;
          var o,
            n,
            i = r(935);
          function a(e, t) {
            return RangeError("index out of range: " + e.pos + " + " + (t || 1) + " > " + e.len);
          }
          function s(e) {
            this.buf = e, this.pos = 0, this.len = e.length;
          }
          var c,
            u = "undefined" != typeof Uint8Array ? function (e) {
              return e instanceof Uint8Array || Array.isArray(e) ? new s(e) : ("undefined" != typeof ArrayBuffer && e instanceof ArrayBuffer && console.warn(""), new s(new Uint8Array(e)));
            } : function (e) {
              if (Array.isArray(e)) return new s(e);
            };
          function l() {
            var e = new o(0, 0),
              t = 0;
            if (!(this.len - this.pos > 4)) {
              for (; t < 3; ++t) {
                if (this.pos >= this.len) throw a(this);
                if (e.lo = (e.lo | (127 & this.buf[this.pos]) << 7 * t) >>> 0, this.buf[this.pos++] < 128) return e;
              }
              return e.lo = (e.lo | (127 & this.buf[this.pos++]) << 7 * t) >>> 0, e;
            }
            for (; t < 4; ++t) {
              if (e.lo = (e.lo | (127 & this.buf[this.pos]) << 7 * t) >>> 0, this.buf[this.pos++] < 128) return e;
            }
            if (e.lo = (e.lo | (127 & this.buf[this.pos]) << 28) >>> 0, e.hi = (e.hi | (127 & this.buf[this.pos]) >> 4) >>> 0, this.buf[this.pos++] < 128) return e;
            if (t = 0, this.len - this.pos > 4) {
              for (; t < 5; ++t) {
                if (e.hi = (e.hi | (127 & this.buf[this.pos]) << 7 * t + 3) >>> 0, this.buf[this.pos++] < 128) return e;
              }
            } else for (; t < 5; ++t) {
              if (this.pos >= this.len) throw a(this);
              if (e.hi = (e.hi | (127 & this.buf[this.pos]) << 7 * t + 3) >>> 0, this.buf[this.pos++] < 128) return e;
            }
            throw Error("invalid varint encoding");
          }
          function d(e, t) {
            return (e[t - 4] | e[t - 3] << 8 | e[t - 2] << 16 | e[t - 1] << 24) >>> 0;
          }
          function p() {
            if (this.pos + 8 > this.len) throw a(this, 8);
            return new o(d(this.buf, this.pos += 4), d(this.buf, this.pos += 4));
          }
          s.create = i.Buffer ? function (e) {
            return (s.create = function (e) {
              return i.Buffer.isBuffer(e) ? new (void 0)(e) : u(e);
            })(e);
          } : u, s.prototype._slice = i.Array.prototype.subarray || i.Array.prototype.slice, s.prototype.uint32 = (c = 4294967295, function () {
            if (c = (127 & this.buf[this.pos]) >>> 0, this.buf[this.pos++] < 128) return c;
            if (c = (c | (127 & this.buf[this.pos]) << 7) >>> 0, this.buf[this.pos++] < 128) return c;
            if (c = (c | (127 & this.buf[this.pos]) << 14) >>> 0, this.buf[this.pos++] < 128) return c;
            if (c = (c | (127 & this.buf[this.pos]) << 21) >>> 0, this.buf[this.pos++] < 128) return c;
            if (c = (c | (15 & this.buf[this.pos]) << 28) >>> 0, this.buf[this.pos++] < 128) return c;
            if ((this.pos += 5) > this.len) throw this.pos = this.len, a(this, 10);
            return c;
          }), s.prototype.int32 = function () {
            return 0 | this.uint32();
          }, s.prototype.sint32 = function () {
            var e = this.uint32();
            return e >>> 1 ^ -(1 & e) | 0;
          }, s.prototype.bool = function () {
            return 0 !== this.uint32();
          }, s.prototype.fixed32 = function () {
            if (this.pos + 4 > this.len) throw a(this, 4);
            return d(this.buf, this.pos += 4);
          }, s.prototype.sfixed32 = function () {
            if (this.pos + 4 > this.len) throw a(this, 4);
            return 0 | d(this.buf, this.pos += 4);
          }, s.prototype.float = function () {
            if (this.pos + 4 > this.len) throw a(this, 4);
            var e = i.float.readFloatLE(this.buf, this.pos);
            return this.pos += 4, e;
          }, s.prototype.double = function () {
            if (this.pos + 8 > this.len) throw a(this, 4);
            var e = i.float.readDoubleLE(this.buf, this.pos);
            return this.pos += 8, e;
          }, s.prototype.bytes = function () {
            var e = this.uint32(),
              t = this.pos,
              r = this.pos + e;
            if (r > this.len) throw a(this, e);
            return this.pos += e, Array.isArray(this.buf) ? this.buf.slice(t, r) : t === r ? new this.buf.constructor(0) : this._slice.call(this.buf, t, r);
          }, s.prototype.string = function () {
            var e = this.bytes();
            return n.read(e, 0, e.length);
          }, s.prototype.skip = function (e) {
            if ("number" == typeof e) {
              if (this.pos + e > this.len) throw a(this, e);
              this.pos += e;
            } else do {
              if (this.pos >= this.len) throw a(this);
            } while (128 & this.buf[this.pos++]);
            return this;
          }, s.prototype.skipType = function (e) {
            switch (e) {
              case 0:
                this.skip();
                break;
              case 1:
                this.skip(8);
                break;
              case 2:
                this.skip(this.uint32());
                break;
              case 3:
                for (; 4 != (e = 7 & this.uint32());) {
                  this.skipType(e);
                }
                break;
              case 5:
                this.skip(4);
                break;
              default:
                throw Error("invalid wire type " + e + " at offset " + this.pos);
            }
            return this;
          }, s._configure = function () {
            o = r(365), n = r(498);
            var e = i.Long ? "toLong" : "toNumber";
            i.merge(s.prototype, {
              int64: function int64() {
                return l.call(this)[e](!1);
              },
              uint64: function uint64() {
                return l.call(this)[e](!0);
              },
              sint64: function sint64() {
                return l.call(this).zzDecode()[e](!1);
              },
              fixed64: function fixed64() {
                return p.call(this)[e](!0);
              },
              sfixed64: function sfixed64() {
                return p.call(this)[e](!1);
              }
            });
          };
        },
        685: function _(e, t, r) {
          e.exports = d;
          var o = r(476);
          ((d.prototype = Object.create(o.prototype)).constructor = d).className = "Root";
          var n,
            i,
            a,
            s = r(286),
            c = r(582),
            u = r(735),
            l = r(935);
          function d(e) {
            o.call(this, "", e), this.deferred = [], this.files = [], this.names = [];
          }
          function p() {}
          d.fromJSON = function (e, t) {
            return e = "string" == typeof e ? JSON.parse(e) : e, t || (t = new d()), e.options && t.setOptions(e.options), t.addJSON(e.nested);
          }, d.prototype.resolvePath = l.path.resolve, d.prototype.parseFromPbString = function e(t, r, o) {
            "function" == typeof r && (o = r, r = void 0);
            var n = this;
            if (!o) return l.asPromise(e, n, t, r);
            var s = null;
            if ("string" == typeof t) s = JSON.parse(t);else {
              if ("object" != _typeof(t)) return void console.log("pb格式转化失败");
              s = t;
            }
            function c(e, t) {
              if (o) {
                var r = o;
                o = null, r(e, t);
              }
            }
            function u(e, t) {
              try {
                if (l.isString(t) && "{" === t.charAt(0) && (t = JSON.parse(t)), l.isString(t)) {
                  i.filename = e;
                  var o,
                    a = i(t, n, r),
                    s = 0;
                  if (a.imports) for (; s < a.imports.length; ++s) {
                    d(o = a.imports[s]);
                  }
                  if (a.weakImports) {
                    for (s = 0; s < a.weakImports.length; ++s) {
                      o = a.weakImports[s];
                    }
                    d(o);
                  }
                } else n.setOptions(t.options).addJSON(t.nested);
              } catch (e) {
                c(e);
              }
              c(null, n);
            }
            function d(e) {
              n.names.indexOf(e) > -1 || (n.names.push(e), e in a && u(e, a[e]));
            }
            u(s.name, s.pbJsonStr);
          }, d.prototype.load = function e(t, r, o) {
            "function" == typeof r && (o = r, r = void 0);
            var n = this;
            if (!o) return l.asPromise(e, n, t, r);
            var s = o === p;
            function c(e, t) {
              if (o) {
                var r = o;
                if (o = null, s) throw e;
                r(e, t);
              }
            }
            function u(e, t) {
              try {
                if (l.isString(t) && "{" === t.charAt(0) && (t = JSON.parse(t)), l.isString(t)) {
                  i.filename = e;
                  var o,
                    a = i(t, n, r),
                    u = 0;
                  if (a.imports) for (; u < a.imports.length; ++u) {
                    (o = n.resolvePath(e, a.imports[u])) && d(o);
                  }
                  if (a.weakImports) for (u = 0; u < a.weakImports.length; ++u) {
                    (o = n.resolvePath(e, a.weakImports[u])) && d(o, !0);
                  }
                } else n.setOptions(t.options).addJSON(t.nested);
              } catch (e) {
                c(e);
              }
              s || h || c(null, n);
            }
            function d(e, t) {
              var r = e.lastIndexOf("google/protobuf/");
              if (r > -1) {
                var i = e.substring(r);
                i in a && (e = i);
              }
              if (!(n.files.indexOf(e) > -1)) if (n.files.push(e), e in a) s ? u(e, a[e]) : (++h, setTimeout(function () {
                --h, u(e, a[e]);
              }));else if (s) {
                var d;
                try {
                  d = l.fs.readFileSync(e).toString("utf8");
                } catch (e) {
                  return void (t || c(e));
                }
                u(e, d);
              } else ++h, l.fetch(e, function (r, i) {
                --h, o && (r ? t ? h || c(null, n) : c(r) : u(e, i));
              });
            }
            var h = 0;
            l.isString(t) && (t = [t]);
            for (var f, m = 0; m < t.length; ++m) {
              (f = n.resolvePath("", t[m])) && d(f);
            }
            if (s) return n;
            h || c(null, n);
          }, d.prototype.loadSync = function (e, t) {
            if (!l.isNode) throw Error("not supported");
            return this.load(e, t, p);
          }, d.prototype.resolveAll = function () {
            if (this.deferred.length) throw Error("unresolvable extensions: " + this.deferred.map(function (e) {
              return "'extend " + e.extend + "' in " + e.parent.fullName;
            }).join(", "));
            return o.prototype.resolveAll.call(this);
          };
          var h = /^[A-Z]/;
          function f(e, t) {
            var r = t.parent.lookup(t.extend);
            if (r) {
              var o = new s(t.fullName, t.id, t.type, t.rule, void 0, t.options);
              return o.declaringField = t, t.extensionField = o, r.add(o), !0;
            }
            return !1;
          }
          d.prototype._handleAdd = function (e) {
            if (e instanceof s) void 0 === e.extend || e.extensionField || f(0, e) || this.deferred.push(e);else if (e instanceof c) h.test(e.name) && (e.parent[e.name] = e.values);else if (!(e instanceof u)) {
              if (e instanceof n) for (var t = 0; t < this.deferred.length;) {
                f(0, this.deferred[t]) ? this.deferred.splice(t, 1) : ++t;
              }
              for (var r = 0; r < e.nestedArray.length; ++r) {
                this._handleAdd(e._nestedArray[r]);
              }
              h.test(e.name) && (e.parent[e.name] = e);
            }
          }, d.prototype._handleRemove = function (e) {
            if (e instanceof s) {
              if (void 0 !== e.extend) if (e.extensionField) e.extensionField.parent.remove(e.extensionField), e.extensionField = null;else {
                var t = this.deferred.indexOf(e);
                t > -1 && this.deferred.splice(t, 1);
              }
            } else if (e instanceof c) h.test(e.name) && delete e.parent[e.name];else if (e instanceof o) {
              for (var r = 0; r < e.nestedArray.length; ++r) {
                this._handleRemove(e._nestedArray[r]);
              }
              h.test(e.name) && delete e.parent[e.name];
            }
          }, d._configure = function () {
            n = r(192), i = r(845), a = r(72), s = r(286), c = r(582), u = r(735), l = r(935);
          };
        },
        889: function _(e) {
          e.exports = {};
        },
        325: function _(e, t, r) {
          "use strict";

          e.exports = n;
          var o = r(935);
          function n(e, t, r) {
            if ("function" != typeof e) throw TypeError("rpcImpl must be a function");
            o.EventEmitter.call(this), this.rpcImpl = e, this.requestDelimited = Boolean(t), this.responseDelimited = Boolean(r);
          }
          (n.prototype = Object.create(o.EventEmitter.prototype)).constructor = n, n.prototype.rpcCall = function e(t, r, n, i, a) {
            if (!i) throw TypeError("request must be specified");
            var s = this;
            if (!a) return o.asPromise(e, s, t, r, n, i);
            if (s.rpcImpl) try {
              return s.rpcImpl(t, r[s.requestDelimited ? "encodeDelimited" : "encode"](i).finish(), function (e, r) {
                if (e) return s.emit("error", e, t), a(e);
                if (null !== r) {
                  if (!(r instanceof n)) try {
                    r = n[s.responseDelimited ? "decodeDelimited" : "decode"](r);
                  } catch (e) {
                    return s.emit("error", e, t), a(e);
                  }
                  return s.emit("data", r, t), a(null, r);
                }
                s.end(!0);
              });
            } catch (e) {
              return s.emit("error", e, t), void setTimeout(function () {
                a(e);
              }, 0);
            } else setTimeout(function () {
              a(Error("already ended"));
            }, 0);
          }, n.prototype.end = function (e) {
            return this.rpcImpl && (e || this.rpcImpl(null, null, null), this.rpcImpl = null, this.emit("end").off()), this;
          };
        },
        447: function _(e, t, r) {
          "use strict";

          e.exports = s;
          var o,
            n,
            i,
            a = r(476);
          function s(e, t) {
            a.call(this, e, t), this.methods = {}, this._methodsArray = null;
          }
          function c(e) {
            return e._methodsArray = null, e;
          }
          ((s.prototype = Object.create(a.prototype)).constructor = s).className = "Service", s.fromJSON = function (e, t) {
            var r = new s(e, t.options);
            if (t.methods) for (var n = Object.keys(t.methods), i = 0; i < n.length; ++i) {
              r.add(o.fromJSON(n[i], t.methods[n[i]]));
            }
            return t.nested && r.addJSON(t.nested), r.comment = t.comment, r;
          }, s.prototype.toJSON = function (e) {
            var t = a.prototype.toJSON.call(this, e),
              r = !!e && Boolean(e.keepComments);
            return n.toObject(["options", t && t.options || void 0, "methods", a.arrayToJSON(this.methodsArray, e) || {}, "nested", t && t.nested || void 0, "comment", r ? this.comment : void 0]);
          }, Object.defineProperty(s.prototype, "methodsArray", {
            get: function get() {
              return this._methodsArray || (this._methodsArray = n.toArray(this.methods));
            }
          }), s.prototype.get = function (e) {
            return this.methods[e] || a.prototype.get.call(this, e);
          }, s.prototype.resolveAll = function () {
            for (var e = this.methodsArray, t = 0; t < e.length; ++t) {
              e[t].resolve();
            }
            return a.prototype.resolve.call(this);
          }, s.prototype.add = function (e) {
            if (this.get(e.name)) throw Error("duplicate name '" + e.name + "' in " + this);
            return e instanceof o ? (this.methods[e.name] = e, e.parent = this, c(this)) : a.prototype.add.call(this, e);
          }, s.prototype.remove = function (e) {
            if (e instanceof o) {
              if (this.methods[e.name] !== e) throw Error(e + " is not a member of " + this);
              return delete this.methods[e.name], e.parent = null, c(this);
            }
            return a.prototype.remove.call(this, e);
          }, s.prototype.create = function (e, t, r) {
            for (var o, a = new i.Service(e, t, r), s = 0; s < this.methodsArray.length; ++s) {
              var c = n.lcFirst((o = this._methodsArray[s]).resolve().name).replace(/[^$\w_]/g, "");
              a[c] = n.codegen(["r", "c"], n.isReserved(c) ? c + "_" : c)("return this.rpcCall(m,q,s,r,c)")({
                m: o,
                q: o.resolvedRequestType.ctor,
                s: o.resolvedResponseType.ctor
              });
            }
            return a;
          }, s._configure = function () {
            o = r(484), n = r(935), i = r(325);
          };
        },
        869: function _(e) {
          e.exports = d;
          var t = /[\s{}=;:[\],'"()<>]/g,
            r = /(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g,
            o = /(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g,
            n = /^ *[*/]+ */,
            i = /^\s*\*?\/*/,
            a = /\n/g,
            s = /\s/,
            c = /\\(.?)/g,
            u = {
              0: "\0",
              r: "\r",
              n: "\n",
              t: "\t"
            };
          function l(e) {
            return e.replace(c, function (e, t) {
              switch (t) {
                case "\\":
                case "":
                  return t;
                default:
                  return u[t] || "";
              }
            });
          }
          function d(e, c) {
            e = e.toString();
            var u = 0,
              d = e.length,
              p = 1,
              h = null,
              f = null,
              m = 0,
              g = !1,
              E = [],
              y = null;
            function T(e) {
              return Error("illegal " + e + " (line " + p + ")");
            }
            function v(t) {
              return e.charAt(t);
            }
            function _(t, r) {
              h = e.charAt(t++), m = p, g = !1;
              var o,
                s = t - (c ? 2 : 3);
              do {
                if (--s < 0 || "\n" === (o = e.charAt(s))) {
                  g = !0;
                  break;
                }
              } while (" " === o || "\t" === o);
              for (var u = e.substring(t, r).split(a), l = 0; l < u.length; ++l) {
                u[l] = u[l].replace(c ? i : n, "").trim();
              }
              f = u.join("\n").trim();
            }
            function R(t) {
              var r = O(t),
                o = e.substring(t, r);
              return /^\s*\/{1,2}/.test(o);
            }
            function O(e) {
              for (var t = e; t < d && "\n" !== v(t);) {
                t++;
              }
              return t;
            }
            function I() {
              if (E.length > 0) return E.shift();
              if (y) return function () {
                var t = "'" === y ? o : r;
                t.lastIndex = u - 1;
                var n = t.exec(e);
                if (!n) throw T("string");
                return u = t.lastIndex, S(y), y = null, l(n[1]);
              }();
              var n, i, a, h, f;
              do {
                if (u === d) return null;
                for (n = !1; s.test(a = v(u));) {
                  if ("\n" === a && ++p, ++u === d) return null;
                }
                if ("/" === v(u)) {
                  if (++u === d) throw T("comment");
                  if ("/" === v(u)) {
                    if (c) {
                      if (h = u, f = !1, R(u)) {
                        f = !0;
                        do {
                          if ((u = O(u)) === d) break;
                          u++;
                        } while (R(u));
                      } else u = Math.min(d, O(u) + 1);
                      f && _(h, u), p++, n = !0;
                    } else {
                      for (f = "/" === v(h = u + 1); "\n" !== v(++u);) {
                        if (u === d) return null;
                      }
                      ++u, f && _(h, u - 1), ++p, n = !0;
                    }
                  } else {
                    if ("*" !== (a = v(u))) return "/";
                    h = u + 1, f = c || "*" === v(h);
                    do {
                      if ("\n" === a && ++p, ++u === d) throw T("comment");
                      i = a, a = v(u);
                    } while ("*" !== i || "/" !== a);
                    ++u, f && _(h, u - 2), n = !0;
                  }
                }
              } while (n);
              var m = u;
              if (t.lastIndex = 0, !t.test(v(m++))) for (; m < d && !t.test(v(m));) {
                ++m;
              }
              var g = e.substring(u, u = m);
              return '"' !== g && "'" !== g || (y = g), g;
            }
            function S(e) {
              E.push(e);
            }
            function C() {
              if (!E.length) {
                var e = I();
                if (null === e) return null;
                S(e);
              }
              return E[0];
            }
            return Object.defineProperty({
              next: I,
              peek: C,
              push: S,
              skip: function skip(e, t) {
                var r = C();
                if (r === e) return I(), !0;
                if (!t) throw T("token '" + r + "', '" + e + "' expected");
                return !1;
              },
              cmnt: function cmnt(e) {
                var t = null;
                return void 0 === e ? m === p - 1 && (c || "*" === h || g) && (t = f) : (m < e && C(), m !== e || g || !c && "/" !== h || (t = f)), t;
              }
            }, "line", {
              get: function get() {
                return p;
              }
            });
          }
          d.unescape = l;
        },
        192: function _(e, t, r) {
          e.exports = y;
          var o,
            n,
            i,
            a,
            s,
            c,
            u,
            l,
            d,
            p,
            h,
            f,
            m,
            g,
            E = r(476);
          function y(e, t) {
            E.call(this, e, t), this.fields = {}, this.oneofs = void 0, this.extensions = void 0, this.reserved = void 0, this.group = void 0, this._fieldsById = null, this._fieldsArray = null, this._oneofsArray = null, this._ctor = null;
          }
          function T(e) {
            return e._fieldsById = e._fieldsArray = e._oneofsArray = null, delete e.encode, delete e.decode, delete e.verify, e;
          }
          ((y.prototype = Object.create(E.prototype)).constructor = y).className = "Type", Object.defineProperties(y.prototype, {
            fieldsById: {
              get: function get() {
                if (this._fieldsById) return this._fieldsById;
                this._fieldsById = {};
                for (var e = Object.keys(this.fields), t = 0; t < e.length; ++t) {
                  var r = this.fields[e[t]],
                    o = r.id;
                  if (this._fieldsById[o]) throw Error("duplicate id " + o + " in " + this);
                  this._fieldsById[o] = r;
                }
                return this._fieldsById;
              }
            },
            fieldsArray: {
              get: function get() {
                return this._fieldsArray || (this._fieldsArray = u.toArray(this.fields));
              }
            },
            oneofsArray: {
              get: function get() {
                return this._oneofsArray || (this._oneofsArray = u.toArray(this.oneofs));
              }
            },
            ctor: {
              get: function get() {
                return this._ctor || (this.ctor = y.generateConstructor(this));
              },
              set: function set(e) {
                var t = e.prototype;
                t instanceof i || ((e.prototype = new i()).constructor = e, u.merge(e.prototype, t)), e.$type = e.prototype.$type = this, u.merge(e, i, !0), u.merge(e.prototype, i, !0), this._ctor = e;
                for (var r = 0; r < this.fieldsArray.length; ++r) {
                  this._fieldsArray[r].resolve();
                }
                var o = {};
                for (r = 0; r < this.oneofsArray.length; ++r) {
                  var n = this._oneofsArray[r].resolve().name,
                    a = function (e) {
                      for (var t = {}, r = 0; r < e.length; ++r) {
                        t[e[r]] = 0;
                      }
                      return {
                        setter: function setter(r) {
                          if (!(e.indexOf(r) < 0)) {
                            t[r] = 1;
                            for (var o = 0; o < e.length; ++o) {
                              e[o] !== r && delete this[e[o]];
                            }
                          }
                        },
                        getter: function getter() {
                          for (var e = Object.keys(this), r = e.length - 1; r > -1; --r) {
                            if (1 === t[e[r]] && void 0 !== this[e[r]] && null !== this[e[r]]) return e[r];
                          }
                        }
                      };
                    }(this._oneofsArray[r].oneof);
                  o[n] = {
                    get: a.getter,
                    set: a.setter
                  };
                }
                r && Object.defineProperties(e.prototype, o);
              }
            }
          }), y.generateConstructor = function (e) {
            return function (t) {
              for (var r, o = 0; o < e.fieldsArray.length; o++) {
                (r = e._fieldsArray[o]).map ? this[r.name] = {} : r.repeated && (this[r.name] = []);
              }
              if (t) for (var n = Object.keys(t), i = 0; i < n.length; ++i) {
                null != t[n[i]] && (this[n[i]] = t[n[i]]);
              }
            };
          }, y.fromJSON = function (e, t) {
            var r = new y(e, t.options);
            r.extensions = t.extensions, r.reserved = t.reserved;
            for (var i = Object.keys(t.fields), s = 0; s < i.length; ++s) {
              r.add((void 0 !== t.fields[i[s]].keyType ? g.fromJSON : n.fromJSON)(i[s], t.fields[i[s]]));
            }
            if (t.oneofs) for (i = Object.keys(t.oneofs), s = 0; s < i.length; ++s) {
              r.add(a.fromJSON(i[s], t.oneofs[i[s]]));
            }
            if (t.nested) for (i = Object.keys(t.nested), s = 0; s < i.length; ++s) {
              var c = t.nested[i[s]];
              r.add((void 0 !== c.id ? n.fromJSON : void 0 !== c.fields ? y.fromJSON : void 0 !== c.values ? o.fromJSON : void 0 !== c.methods ? h.fromJSON : E.fromJSON)(i[s], c));
            }
            return t.extensions && t.extensions.length && (r.extensions = t.extensions), t.reserved && t.reserved.length && (r.reserved = t.reserved), t.group && (r.group = !0), t.comment && (r.comment = t.comment), r;
          }, y.prototype.toJSON = function (e) {
            var t = E.prototype.toJSON.call(this, e),
              r = !!e && Boolean(e.keepComments);
            return {
              options: t && t.options || void 0,
              oneofs: E.arrayToJSON(this.oneofsArray, e),
              fields: E.arrayToJSON(this.fieldsArray.filter(function (e) {
                return !e.declaringField;
              }), e) || {},
              extensions: this.extensions && this.extensions.length ? this.extensions : void 0,
              reserved: this.reserved && this.reserved.length ? this.reserved : void 0,
              group: this.group || void 0,
              nested: t && t.nested || void 0,
              comment: r ? this.comment : void 0
            };
          }, y.prototype.resolveAll = function () {
            for (var e = this.fieldsArray, t = 0; t < e.length;) {
              e[t++].resolve();
            }
            var r = this.oneofsArray;
            for (t = 0; t < r.length;) {
              r[t++].resolve();
            }
            return E.prototype.resolveAll.call(this);
          }, y.prototype.get = function (e) {
            return this.fields[e] || this.oneofs && this.oneofs[e] || this.nested && this.nested[e] || null;
          }, y.prototype.add = function (e) {
            if (this.get(e.name)) throw Error("duplicate name '" + e.name + "' in " + this);
            if (e instanceof n && void 0 === e.extend) {
              if (this._fieldsById && this._fieldsById[e.id]) throw Error("duplicate id " + e.id + " in " + this);
              if (this.isReservedId(e.id)) throw Error("id " + e.id + " is reserved in " + this);
              if (this.isReservedName(e.name)) throw Error("name '" + e.name + "' is reserved in " + this);
              return e.parent && e.parent.remove(e), this.fields[e.name] = e, e.message = this, e.onAdd(this), T(this);
            }
            return e instanceof a ? (this.oneofs || (this.oneofs = {}), this.oneofs[e.name] = e, e.onAdd(this), T(this)) : E.prototype.add.call(this, e);
          }, y.prototype.remove = function (e) {
            if (e instanceof n && void 0 === e.extend) {
              if (!this.fields || this.fields[e.name] !== e) throw Error(e + " is not a member of " + this);
              return delete this.fields[e.name], e.parent = null, e.onRemove(this), T(this);
            }
            if (e instanceof a) {
              if (!this.oneofs || this.oneofs[e.name] !== e) throw Error(e + " is not a member of " + this);
              return delete this.oneofs[e.name], e.parent = null, e.onRemove(this), T(this);
            }
            return E.prototype.remove.call(this, e);
          }, y.prototype.isReservedId = function (e) {
            return E.isReservedId(this.reserved, e);
          }, y.prototype.isReservedName = function (e) {
            return E.isReservedName(this.reserved, e);
          }, y.prototype.create = function (e) {
            return new this.ctor(e);
          }, y.prototype.setup = function () {
            for (var e = this.fullName, t = [], r = 0; r < this.fieldsArray.length; ++r) {
              t.push(this._fieldsArray[r].resolve().resolvedType);
            }
            this.encode = d(this)({
              Writer: s,
              types: t,
              util: u
            }), this.decode = p(this)({
              Reader: c,
              types: t,
              util: u
            }), this.verify = l(this)({
              types: t,
              util: u
            }), this.fromObject = m.fromObject(this)({
              types: t,
              util: u
            }), this.toObject = m.toObject(this)({
              types: t,
              util: u
            });
            var o = f[e];
            if (o) {
              var n = Object.create(this);
              n.fromObject = this.fromObject, this.fromObject = o.fromObject.bind(n), n.toObject = this.toObject, this.toObject = o.toObject.bind(n);
            }
            return this;
          }, y.prototype.encode = function (e, t) {
            return this.setup().encode(e, t);
          }, y.prototype.encodeDelimited = function (e, t) {
            return this.encode(e, t && t.len ? t.fork() : t).ldelim();
          }, y.prototype.decode = function (e, t) {
            return this.setup().decode(e, t);
          }, y.prototype.decodeDelimited = function (e) {
            return e instanceof c || (e = c.create(e)), this.decode(e, e.uint32());
          }, y.prototype.verify = function (e) {
            return this.setup().verify(e);
          }, y.prototype.fromObject = function (e) {
            return this.setup().fromObject(e);
          }, y.prototype.toObject = function (e, t) {
            return this.setup().toObject(e, t);
          }, y.d = function (e) {
            return function (t) {
              u.decorateType(t, e);
            };
          }, y._configure = function () {
            o = r(582), n = r(286), i = r(339), a = r(735), s = r(244), c = r(494), u = r(935), l = r(216), d = r(929), p = r(888), h = r(447), f = r(834), m = r(525), g = r(435);
          };
        },
        696: function _(e, t, r) {
          "use strict";

          var o = e.exports,
            n = r(935),
            i = ["double", "float", "int32", "uint32", "sint32", "fixed32", "sfixed32", "int64", "uint64", "sint64", "fixed64", "sfixed64", "bool", "string", "bytes"];
          function a(e, t) {
            var r = 0,
              o = {};
            for (t |= 0; r < e.length;) {
              o[i[r + t]] = e[r++];
            }
            return o;
          }
          o.basic = a([1, 5, 0, 0, 0, 5, 5, 0, 0, 0, 1, 1, 0, 2, 2]), o.defaults = a([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, !1, "", n.emptyArray, null]), o.long = a([0, 0, 0, 1, 1], 7), o.mapKey = a([0, 0, 0, 5, 5, 0, 0, 0, 1, 1, 0, 2], 2), o.packed = a([1, 5, 0, 0, 0, 5, 5, 0, 0, 0, 1, 1, 0]), o._configure = function () {
            n = r(935);
          };
        },
        498: function _(e) {
          "use strict";

          var t = e.exports;
          t.length = function (e) {
            for (var t = 0, r = 0, o = 0; o < e.length; ++o) {
              (r = e.charCodeAt(o)) < 128 ? t += 1 : r < 2048 ? t += 2 : 55296 == (64512 & r) && 56320 == (64512 & e.charCodeAt(o + 1)) ? (++o, t += 4) : t += 3;
            }
            return t;
          }, t.read = function (e, t, r) {
            if (r - t < 1) return "";
            for (var o, n = null, i = [], a = 0; t < r;) {
              (o = e[t++]) < 128 ? i[a++] = o : o > 191 && o < 224 ? i[a++] = (31 & o) << 6 | 63 & e[t++] : o > 239 && o < 365 ? (o = ((7 & o) << 18 | (63 & e[t++]) << 12 | (63 & e[t++]) << 6 | 63 & e[t++]) - 65536, i[a++] = 55296 + (o >> 10), i[a++] = 56320 + (1023 & o)) : i[a++] = (15 & o) << 12 | (63 & e[t++]) << 6 | 63 & e[t++], a > 8191 && ((n || (n = [])).push(String.fromCharCode.apply(String, i)), a = 0);
            }
            return n ? (a && n.push(String.fromCharCode.apply(String, i.slice(0, a))), n.join("")) : String.fromCharCode.apply(String, i.slice(0, a));
          }, t.write = function (e, t, r) {
            for (var o, n, i = r, a = 0; a < e.length; ++a) {
              (o = e.charCodeAt(a)) < 128 ? t[r++] = o : o < 2048 ? (t[r++] = o >> 6 | 192, t[r++] = 63 & o | 128) : 55296 == (64512 & o) && 56320 == (64512 & (n = e.charCodeAt(a + 1))) ? (o = 65536 + ((1023 & o) << 10) + (1023 & n), ++a, t[r++] = o >> 18 | 240, t[r++] = o >> 12 & 63 | 128, t[r++] = o >> 6 & 63 | 128, t[r++] = 63 & o | 128) : (t[r++] = o >> 12 | 224, t[r++] = o >> 6 & 63 | 128, t[r++] = 63 & o | 128);
            }
            return r - i;
          };
        },
        935: function _(e, t, r) {
          var o = e.exports,
            n = r(889);
          o.LongBits = r(365), o.Long = r(939), o.pool = r(997), o.float = r(283), o.asPromise = r(728), o.EventEmitter = r(969), o.path = r(444), o.base64 = r(440), o.utf8 = r(498), o.compareFieldsById = function (e, t) {
            return e.id - t.id;
          }, o.toArray = function (e) {
            if (e) {
              for (var t = Object.keys(e), r = new Array(t.length), o = 0; o < t.length;) {
                r[o] = e[t[o++]];
              }
              return r;
            }
            return [];
          }, o.toObject = function (e) {
            for (var t = {}, r = 0; r < e.length;) {
              var o = e[r++],
                n = e[r++];
              void 0 !== n && (t[o] = n);
            }
            return t;
          }, o.isString = function (e) {
            return "string" == typeof e || e instanceof String;
          }, o.isReserved = function (e) {
            return /^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/.test(e);
          }, o.isObject = function (e) {
            return e && "object" == _typeof(e);
          }, o.Array = "undefined" != typeof Uint8Array ? Uint8Array : Array, o.oneOfGetter = function (e) {
            for (var t = {}, r = 0; r < e.length; ++r) {
              t[e[r]] = 1;
            }
            return function () {
              for (var e = Object.keys(this), r = e.length - 1; r > -1; --r) {
                if (1 === t[e[r]] && void 0 !== this[e[r]] && null !== this[e[r]]) return e[r];
              }
            };
          }, o.oneOfSetter = function (e) {
            return function (t) {
              for (var r = 0; r < e.length; ++r) {
                e[r] !== t && delete this[e[r]];
              }
            };
          }, o.merge = function (e, t, r) {
            for (var o = Object.keys(t), n = 0; n < o.length; ++n) {
              void 0 !== e[o[n]] && r || (e[o[n]] = t[o[n]]);
            }
            return e;
          }, o.decorateType = function (e, t) {
            if (e.$type) return t && e.$type.name !== t && (o.decorateRoot.remove(e.$type), e.$type.name = t, o.decorateRoot.add(e.$type)), e.$type;
            Type || (Type = r(192));
            var n = new Type(t || e.name);
            return o.decorateRoot.add(n), n.ctor = e, Object.defineProperty(e, "$type", {
              value: n,
              enumerable: !1
            }), Object.defineProperty(e.prototype, "$type", {
              value: n,
              enumerable: !1
            }), n;
          }, o.emptyArray = Object.freeze ? Object.freeze([]) : [], o.emptyObject = Object.freeze ? Object.freeze({}) : {}, o.longToHash = function (e) {
            return e ? o.LongBits.from(e).toHash() : o.LongBits.zeroHash;
          }, o.copy = function (e) {
            if ("object" != _typeof(e)) return e;
            var t = {};
            for (var r in e) {
              t[r] = e[r];
            }
            return t;
          }, o.deepCopy = function e(t) {
            if ("object" != _typeof(t)) return t;
            var r = {};
            for (var o in t) {
              r[o] = e(t[o]);
            }
            return r;
          }, o.ProtocolError = function (e) {
            function t(e, r) {
              if (!(this instanceof t)) return new t(e, r);
              Object.defineProperty(this, "message", {
                get: function get() {
                  return e;
                }
              }), Error.captureStackTrace ? Error.captureStackTrace(this, t) : Object.defineProperty(this, "stack", {
                value: new Error().stack || ""
              }), r && merge(this, r);
            }
            return (t.prototype = Object.create(Error.prototype)).constructor = t, Object.defineProperty(t.prototype, "name", {
              get: function get() {
                return e;
              }
            }), t.prototype.toString = function () {
              return this.name + ": " + this.message;
            }, t;
          }, o.toJSONOptions = {
            longs: String,
            enums: String,
            bytes: String,
            json: !0
          }, o.Buffer = null, o.newBuffer = function (e) {
            return "number" == typeof e ? new o.Array(e) : "undefined" == typeof Uint8Array ? e : new Uint8Array(e);
          }, o.stringToBytes = function (e) {
            var t,
              r,
              o = [];
            t = e.length;
            for (var n = 0; n < t; n++) {
              (r = e.charCodeAt(n)) >= 65536 && r <= 1114111 ? (o.push(r >> 18 & 7 | 240), o.push(r >> 12 & 63 | 128), o.push(r >> 6 & 63 | 128), o.push(63 & r | 128)) : r >= 2048 && r <= 65535 ? (o.push(r >> 12 & 15 | 224), o.push(r >> 6 & 63 | 128), o.push(63 & r | 128)) : r >= 128 && r <= 2047 ? (o.push(r >> 6 & 31 | 192), o.push(63 & r | 128)) : o.push(255 & r);
            }
            return o;
          }, o.byteToString = function (e) {
            if ("string" == typeof e) return e;
            for (var t = "", r = e, o = 0; o < r.length; o++) {
              var n = r[o].toString(2),
                i = n.match(/^1+?(?=0)/);
              if (i && 8 == n.length) {
                for (var a = i[0].length, s = r[o].toString(2).slice(7 - a), c = 1; c < a; c++) {
                  s += r[c + o].toString(2).slice(2);
                }
                t += String.fromCharCode(parseInt(s, 2)), o += a - 1;
              } else t += String.fromCharCode(r[o]);
            }
            return t;
          }, o.isInteger = Number.isInteger || function (e) {
            return "number" == typeof e && isFinite(e) && Math.floor(e) === e;
          }, Object.defineProperty(o, "decorateRoot", {
            get: function get() {
              return n.decorated || (n.decorated = new (r(685))());
            }
          });
        },
        216: function _(e, t, r) {
          var o, n;
          function i(e, t) {
            return e.name + ": " + t + (e.repeated && "array" !== t ? "[]" : e.map && "object" !== t ? "{k:" + e.keyType + "}" : "") + " expected";
          }
          function a(e, t, r, a) {
            var s = a.types;
            if (e.resolvedType) {
              if (e.resolvedType instanceof o) {
                if (Object.keys(e.resolvedType.values).indexOf(r) < 0) return i(e, "enum value");
              } else {
                var c = s[t].verify(r);
                if (c) return e.name + "." + c;
              }
            } else switch (e.type) {
              case "int32":
              case "uint32":
              case "sint32":
              case "fixed32":
              case "sfixed32":
                if (!n.isInteger(r)) return i(e, "integer");
                break;
              case "int64":
              case "uint64":
              case "sint64":
              case "fixed64":
              case "sfixed64":
                if (!(n.isInteger(r) || r && n.isInteger(r.low) && n.isInteger(r.high))) return i(e, "integer|Long");
                break;
              case "float":
              case "double":
                if ("number" != typeof r) return i(e, "number");
                break;
              case "bool":
                if ("boolean" != typeof r) return i(e, "boolean");
                break;
              case "string":
                if (!n.isString(r)) return i(e, "string");
                break;
              case "bytes":
                if (!(r && "number" == typeof r.length || n.isString(r))) return i(e, "buffer");
            }
          }
          function s(e, t) {
            switch (e.keyType) {
              case "int32":
              case "uint32":
              case "sint32":
              case "fixed32":
              case "sfixed32":
                if (!n.key32Re.test(t)) return i(e, "integer key");
                break;
              case "int64":
              case "uint64":
              case "sint64":
              case "fixed64":
              case "sfixed64":
                if (!n.key64Re.test(t)) return i(e, "integer|Long key");
                break;
              case "bool":
                if (!n.key2Re.test(t)) return i(e, "boolean key");
            }
          }
          function c(e) {
            return function (t) {
              return function (r) {
                var o;
                if ("object" != _typeof(r) || null === r) return "object expected";
                var c,
                  u = {};
                e.oneofsArray.length && (c = {});
                for (var l = 0; l < e.fieldsArray.length; ++l) {
                  var d,
                    p = e._fieldsArray[l].resolve(),
                    h = r[p.name];
                  if (!p.optional || null != h && r.hasOwnProperty(p.name)) if (p.map) {
                    if (!n.isObject(h)) return i(p, "object");
                    var f = Object.keys(h);
                    for (d = 0; d < f.length; ++d) {
                      if (o = s(p, f[d])) return o;
                      if (o = a(p, l, h[f[d]], t)) return o;
                    }
                  } else if (p.repeated) {
                    if (!Array.isArray(h)) return i(p, "array");
                    for (d = 0; d < h.length; ++d) {
                      if (o = a(p, l, h[d], t)) return o;
                    }
                  } else {
                    if (p.partOf) {
                      var m = p.partOf.name;
                      if (1 === u[p.partOf.name] && 1 === c[m]) return p.partOf.name + ": multiple values";
                      c[m] = 1;
                    }
                    if (o = a(p, l, h, t)) return o;
                  }
                }
              };
            };
          }
          e.exports = c, c._configure = function () {
            o = r(582), n = r(935);
          };
        },
        834: function _(e, t, r) {
          var o,
            n = t;
          n[".google.protobuf.Any"] = {
            fromObject: function fromObject(e) {
              if (e && e["@type"]) {
                var t = this.lookup(e["@type"]);
                if (t) {
                  var r = "." === e["@type"].charAt(0) ? e["@type"].substr(1) : e["@type"];
                  return this.create({
                    type_url: "/" + r,
                    value: t.encode(t.fromObject(e)).finish()
                  });
                }
              }
              return this.fromObject(e);
            },
            toObject: function toObject(e, t) {
              if (t && t.json && e.type_url && e.value) {
                var r = e.type_url.substring(e.type_url.lastIndexOf("/") + 1),
                  n = this.lookup(r);
                n && (e = n.decode(e.value));
              }
              if (!(e instanceof this.ctor) && e instanceof o) {
                var i = e.$type.toObject(e, t);
                return i["@type"] = e.$type.fullName, i;
              }
              return this.toObject(e, t);
            }
          }, n._configure = function () {
            o = r(339);
          };
        },
        244: function _(e, t, r) {
          e.exports = u;
          var o,
            n = r(935),
            i = r(498);
          function a(e, t, r) {
            this.fn = e, this.len = t, this.next = void 0, this.val = r;
          }
          function s() {}
          function c(e) {
            this.head = e.head, this.tail = e.tail, this.len = e.len, this.next = e.states;
          }
          function u() {
            this.len = 0, this.head = new a(s, 0, 0), this.tail = this.head, this.states = null;
          }
          function l(e, t, r) {
            t[r] = 255 & e;
          }
          function d(e, t) {
            this.len = e, this.next = void 0, this.val = t;
          }
          function p(e, t, r) {
            for (; e.hi;) {
              t[r++] = 127 & e.lo | 128, e.lo = (e.lo >>> 7 | e.hi << 25) >>> 0, e.hi >>>= 7;
            }
            for (; e.lo > 127;) {
              t[r++] = 127 & e.lo | 128, e.lo = e.lo >>> 7;
            }
            t[r++] = e.lo;
          }
          function h(e, t, r) {
            t[r] = 255 & e, t[r + 1] = e >>> 8 & 255, t[r + 2] = e >>> 16 & 255, t[r + 3] = e >>> 24;
          }
          u.create = n.Buffer ? function () {
            return (u.create = function () {
              return new (void 0)();
            })();
          } : function () {
            return new u();
          }, u.alloc = function (e) {
            return new n.Array(e);
          }, n.Array !== Array && (u.alloc = n.pool(u.alloc, n.Array.prototype.subarray)), u.prototype._push = function (e, t, r) {
            return this.tail = this.tail.next = new a(e, t, r), this.len += t, this;
          }, d.prototype = Object.create(a.prototype), d.prototype.fn = function (e, t, r) {
            for (; e > 127;) {
              t[r++] = 127 & e | 128, e >>>= 7;
            }
            t[r] = e;
          }, u.prototype.uint32 = function (e) {
            return this.len += (this.tail = this.tail.next = new d((e >>>= 0) < 128 ? 1 : e < 16384 ? 2 : e < 2097152 ? 3 : e < 268435456 ? 4 : 5, e)).len, this;
          }, u.prototype.int32 = function (e) {
            return e < 0 ? this._push(p, 10, o.fromNumber(e)) : this.uint32(e);
          }, u.prototype.sint32 = function (e) {
            return this.uint32((e << 1 ^ e >> 31) >>> 0);
          }, u.prototype.uint64 = function (e) {
            var t = o.from(e);
            return this._push(p, t.length(), t);
          }, u.prototype.int64 = u.prototype.uint64, u.prototype.sint64 = function (e) {
            var t = o.from(e).zzEncode();
            return this._push(p, t.length(), t);
          }, u.prototype.bool = function (e) {
            return this._push(l, 1, e ? 1 : 0);
          }, u.prototype.fixed32 = function (e) {
            return this._push(h, 4, e >>> 0);
          }, u.prototype.sfixed32 = u.prototype.fixed32, u.prototype.fixed64 = function (e) {
            var t = o.from(e);
            return this._push(h, 4, t.lo)._push(h, 4, t.hi);
          }, u.prototype.sfixed64 = u.prototype.fixed64, u.prototype.float = function (e) {
            return this._push(n.float.writeFloatLE, 4, e);
          }, u.prototype.double = function (e) {
            return this._push(n.float.writeDoubleLE, 8, e);
          };
          var f = n.Array.prototype.set ? function (e, t, r) {
            t.set(e, r);
          } : function (e, t, r) {
            for (var o = 0; o < e.length; ++o) {
              t[r + o] = e[o];
            }
          };
          u.prototype.bytes = function (e) {
            var t = e.length >>> 0;
            if (!t) return this._push(l, 1, 0);
            if (n.isString(e)) {
              var r = u.alloc(t = i.length(e));
              i.write(e, r, 0), e = r;
            }
            return this.uint32(t)._push(f, t, e);
          }, u.prototype.string = function (e) {
            var t = i.length(e);
            return t ? this.uint32(t)._push(i.write, t, e) : this._push(l, 1, 0);
          }, u.prototype.fork = function () {
            return this.states = new c(this), this.head = this.tail = new a(s, 0, 0), this.len = 0, this;
          }, u.prototype.reset = function () {
            return this.states ? (this.head = this.states.head, this.tail = this.states.tail, this.len = this.states.len, this.states = this.states.next) : (this.head = this.tail = new a(s, 0, 0), this.len = 0), this;
          }, u.prototype.ldelim = function () {
            var e = this.head,
              t = this.tail,
              r = this.len;
            return this.reset().uint32(r), r && (this.tail.next = e.next, this.tail = t, this.len += r), this;
          }, u.prototype.finish = function () {
            for (var e = this.head.next, t = this.constructor.alloc(this.len), r = 0; e;) {
              e.fn(e.val, t, r), r += e.len, e = e.next;
            }
            return t;
          }, u._configure = function () {
            o = r(365), r(440), i = r(498);
          };
        }
      },
      t = {};
    function r(o) {
      var n = t[o];
      if (void 0 !== n) return n.exports;
      var i = t[o] = {
        exports: {}
      };
      return e[o](i, i.exports, r), i.exports;
    }
    r.amdO = {}, r.n = function (e) {
      var t = e && e.__esModule ? function () {
        return e.default;
      } : function () {
        return e;
      };
      return r.d(t, {
        a: t
      }), t;
    }, r.d = function (e, t) {
      for (var o in t) {
        r.o(t, o) && !r.o(e, o) && Object.defineProperty(e, o, {
          enumerable: !0,
          get: t[o]
        });
      }
    }, r.g = function () {
      if ("object" == (typeof globalThis === "undefined" ? "undefined" : _typeof(globalThis))) return globalThis;
      try {
        return this || new Function("return this")();
      } catch (e) {
        if ("object" == (typeof window === "undefined" ? "undefined" : _typeof(window))) return window;
      }
    }(), r.o = function (e, t) {
      return Object.prototype.hasOwnProperty.call(e, t);
    }, r.r = function (e) {
      "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
        value: "Module"
      }), Object.defineProperty(e, "__esModule", {
        value: !0
      });
    };
    var o = {};
    return function () {
      "use strict";

      r.r(o), r.d(o, {
        default: function _default() {
          return Ca;
        }
      });
      var e = {};
      r.r(e), r.d(e, {
        acceptContactInvite: function acceptContactInvite() {
          return Or;
        },
        acceptInvitation: function acceptInvitation() {
          return Rr;
        },
        addContact: function addContact() {
          return Tr;
        },
        addReaction: function addReaction() {
          return kr;
        },
        addToBlackList: function addToBlackList() {
          return Cr;
        },
        addUsersToBlacklist: function addUsersToBlacklist() {
          return Ar;
        },
        addUsersToBlocklist: function addUsersToBlocklist() {
          return Nr;
        },
        declineContactInvite: function declineContactInvite() {
          return Sr;
        },
        declineInvitation: function declineInvitation() {
          return Ir;
        },
        deleteContact: function deleteContact() {
          return _r;
        },
        deleteConversation: function deleteConversation() {
          return lr;
        },
        deleteReaction: function deleteReaction() {
          return Lr;
        },
        deleteSession: function deleteSession() {
          return ur;
        },
        fetchHistoryMessages: function fetchHistoryMessages() {
          return gr;
        },
        fetchUserInfoById: function fetchUserInfoById() {
          return hr;
        },
        getAllContacts: function getAllContacts() {
          return zr;
        },
        getBlacklist: function getBlacklist() {
          return tr;
        },
        getBlocklist: function getBlocklist() {
          return rr;
        },
        getContacts: function getContacts() {
          return nr;
        },
        getContactsWithCursor: function getContactsWithCursor() {
          return Vr;
        },
        getConversationlist: function getConversationlist() {
          return cr;
        },
        getHistoryMessages: function getHistoryMessages() {
          return yr;
        },
        getReactionDetail: function getReactionDetail() {
          return xr;
        },
        getReactionList: function getReactionList() {
          return Dr;
        },
        getReactionlist: function getReactionlist() {
          return Gr;
        },
        getRoster: function getRoster() {
          return or;
        },
        getServerConversations: function getServerConversations() {
          return Hr;
        },
        getServerPinnedConversations: function getServerPinnedConversations() {
          return Wr;
        },
        getSessionList: function getSessionList() {
          return sr;
        },
        getTokenExpireTimestamp: function getTokenExpireTimestamp() {
          return mr;
        },
        modifyMessage: function modifyMessage() {
          return Pr;
        },
        pinConversation: function pinConversation() {
          return Kr;
        },
        recallMessage: function recallMessage() {
          return wr;
        },
        removeFromBlackList: function removeFromBlackList() {
          return Mr;
        },
        removeHistoryMessages: function removeHistoryMessages() {
          return jr;
        },
        removeRoster: function removeRoster() {
          return vr;
        },
        removeUserFromBlackList: function removeUserFromBlackList() {
          return br;
        },
        removeUserFromBlocklist: function removeUserFromBlocklist() {
          return Ur;
        },
        reportMessage: function reportMessage() {
          return Br;
        },
        setContactRemark: function setContactRemark() {
          return qr;
        },
        updateCurrentUserNick: function updateCurrentUserNick() {
          return fr;
        },
        updateOwnUserInfo: function updateOwnUserInfo() {
          return dr;
        },
        updateUserInfo: function updateUserInfo() {
          return pr;
        },
        uploadPushToken: function uploadPushToken() {
          return ar;
        },
        uploadToken: function uploadToken() {
          return ir;
        }
      });
      var t = {};
      r.r(t), r.d(t, {
        acceptGroupInvite: function acceptGroupInvite() {
          return No;
        },
        acceptGroupJoinRequest: function acceptGroupJoinRequest() {
          return Io;
        },
        addUsersToGroupAllowlist: function addUsersToGroupAllowlist() {
          return rn;
        },
        addUsersToGroupWhitelist: function addUsersToGroupWhitelist() {
          return tn;
        },
        agreeInviteIntoGroup: function agreeInviteIntoGroup() {
          return Ao;
        },
        agreeJoinGroup: function agreeJoinGroup() {
          return Oo;
        },
        blockGroup: function blockGroup() {
          return $r;
        },
        blockGroupMember: function blockGroupMember() {
          return Wo;
        },
        blockGroupMembers: function blockGroupMembers() {
          return qo;
        },
        blockGroupMessages: function blockGroupMessages() {
          return Zr;
        },
        changeGroupOwner: function changeGroupOwner() {
          return io;
        },
        changeOwner: function changeOwner() {
          return no;
        },
        createGroup: function createGroup() {
          return Qr;
        },
        createGroupNew: function createGroupNew() {
          return Yr;
        },
        deleteGroupSharedFile: function deleteGroupSharedFile() {
          return En;
        },
        destroyGroup: function destroyGroup() {
          return Eo;
        },
        disableSendGroupMsg: function disableSendGroupMsg() {
          return Zo;
        },
        dissolveGroup: function dissolveGroup() {
          return go;
        },
        downloadGroupSharedFile: function downloadGroupSharedFile() {
          return vn;
        },
        enableSendGroupMsg: function enableSendGroupMsg() {
          return en;
        },
        fetchGroupAnnouncement: function fetchGroupAnnouncement() {
          return fn;
        },
        fetchGroupSharedFileList: function fetchGroupSharedFileList() {
          return yn;
        },
        getGroup: function getGroup() {
          return ro;
        },
        getGroupAdmin: function getGroupAdmin() {
          return lo;
        },
        getGroupAllowlist: function getGroupAllowlist() {
          return cn;
        },
        getGroupBlacklist: function getGroupBlacklist() {
          return Qo;
        },
        getGroupBlacklistNew: function getGroupBlacklistNew() {
          return Yo;
        },
        getGroupBlocklist: function getGroupBlocklist() {
          return $o;
        },
        getGroupInfo: function getGroupInfo() {
          return ao;
        },
        getGroupMemberAttributes: function getGroupMemberAttributes() {
          return Rn;
        },
        getGroupMembersAttributes: function getGroupMembersAttributes() {
          return On;
        },
        getGroupMsgReadUser: function getGroupMsgReadUser() {
          return hn;
        },
        getGroupMuteList: function getGroupMuteList() {
          return jo;
        },
        getGroupMutelist: function getGroupMutelist() {
          return Ho;
        },
        getGroupSharedFilelist: function getGroupSharedFilelist() {
          return Tn;
        },
        getGroupWhitelist: function getGroupWhitelist() {
          return sn;
        },
        getJoinedGroups: function getJoinedGroups() {
          return oo;
        },
        getMuted: function getMuted() {
          return Bo;
        },
        getPublicGroups: function getPublicGroups() {
          return to;
        },
        groupBlockMulti: function groupBlockMulti() {
          return Ko;
        },
        groupBlockSingle: function groupBlockSingle() {
          return Fo;
        },
        inviteToGroup: function inviteToGroup() {
          return vo;
        },
        inviteUsersToGroup: function inviteUsersToGroup() {
          return _o;
        },
        isGroupWhiteUser: function isGroupWhiteUser() {
          return un;
        },
        isInGroupAllowlist: function isInGroupAllowlist() {
          return dn;
        },
        isInGroupMutelist: function isInGroupMutelist() {
          return pn;
        },
        isInGroupWhiteList: function isInGroupWhiteList() {
          return ln;
        },
        joinGroup: function joinGroup() {
          return Ro;
        },
        leaveGroup: function leaveGroup() {
          return To;
        },
        listGroupMember: function listGroupMember() {
          return co;
        },
        listGroupMembers: function listGroupMembers() {
          return uo;
        },
        listGroups: function listGroups() {
          return eo;
        },
        modifyGroup: function modifyGroup() {
          return so;
        },
        mute: function mute() {
          return Lo;
        },
        muteGroupMember: function muteGroupMember() {
          return Do;
        },
        quitGroup: function quitGroup() {
          return yo;
        },
        rejectGroupInvite: function rejectGroupInvite() {
          return bo;
        },
        rejectGroupJoinRequest: function rejectGroupJoinRequest() {
          return Co;
        },
        rejectInviteIntoGroup: function rejectInviteIntoGroup() {
          return Mo;
        },
        rejectJoinGroup: function rejectJoinGroup() {
          return So;
        },
        removeAdmin: function removeAdmin() {
          return fo;
        },
        removeGroupAdmin: function removeGroupAdmin() {
          return mo;
        },
        removeGroupAllowlistMember: function removeGroupAllowlistMember() {
          return an;
        },
        removeGroupBlockMulti: function removeGroupBlockMulti() {
          return Jo;
        },
        removeGroupBlockSingle: function removeGroupBlockSingle() {
          return zo;
        },
        removeGroupMember: function removeGroupMember() {
          return wo;
        },
        removeGroupMembers: function removeGroupMembers() {
          return ko;
        },
        removeGroupWhitelistMember: function removeGroupWhitelistMember() {
          return nn;
        },
        removeMultiGroupMember: function removeMultiGroupMember() {
          return Po;
        },
        removeMute: function removeMute() {
          return Go;
        },
        removeSingleGroupMember: function removeSingleGroupMember() {
          return Uo;
        },
        rmUsersFromGroupWhitelist: function rmUsersFromGroupWhitelist() {
          return on;
        },
        setAdmin: function setAdmin() {
          return po;
        },
        setGroupAdmin: function setGroupAdmin() {
          return ho;
        },
        setGroupMemberAttributes: function setGroupMemberAttributes() {
          return _n;
        },
        unblockGroupMember: function unblockGroupMember() {
          return Vo;
        },
        unblockGroupMembers: function unblockGroupMembers() {
          return Xo;
        },
        unmuteGroupMember: function unmuteGroupMember() {
          return xo;
        },
        updateGroupAnnouncement: function updateGroupAnnouncement() {
          return mn;
        },
        uploadGroupSharedFile: function uploadGroupSharedFile() {
          return gn;
        }
      });
      var n = {};
      r.r(n), r.d(n, {
        addUsersToChatRoom: function addUsersToChatRoom() {
          return Pn;
        },
        addUsersToChatRoomAllowlist: function addUsersToChatRoomAllowlist() {
          return ci;
        },
        addUsersToChatRoomWhitelist: function addUsersToChatRoomWhitelist() {
          return si;
        },
        blockChatRoomMember: function blockChatRoomMember() {
          return Xn;
        },
        blockChatRoomMembers: function blockChatRoomMembers() {
          return Qn;
        },
        chatRoomBlockMulti: function chatRoomBlockMulti() {
          return Yn;
        },
        chatRoomBlockSingle: function chatRoomBlockSingle() {
          return Jn;
        },
        createChatRoom: function createChatRoom() {
          return Sn;
        },
        deleteChatRoomSharedFile: function deleteChatRoomSharedFile() {
          return vi;
        },
        destroyChatRoom: function destroyChatRoom() {
          return Cn;
        },
        disableSendChatRoomMsg: function disableSendChatRoomMsg() {
          return ii;
        },
        enableSendChatRoomMsg: function enableSendChatRoomMsg() {
          return ai;
        },
        fetchChatRoomAnnouncement: function fetchChatRoomAnnouncement() {
          return Ei;
        },
        fetchChatRoomSharedFileList: function fetchChatRoomSharedFileList() {
          return _i;
        },
        getChatRoomAdmin: function getChatRoomAdmin() {
          return Bn;
        },
        getChatRoomAllowlist: function getChatRoomAllowlist() {
          return hi;
        },
        getChatRoomAttributes: function getChatRoomAttributes() {
          return Oi;
        },
        getChatRoomBlacklist: function getChatRoomBlacklist() {
          return oi;
        },
        getChatRoomBlacklistNew: function getChatRoomBlacklistNew() {
          return ri;
        },
        getChatRoomBlocklist: function getChatRoomBlocklist() {
          return ni;
        },
        getChatRoomDetails: function getChatRoomDetails() {
          return An;
        },
        getChatRoomMuteList: function getChatRoomMuteList() {
          return zn;
        },
        getChatRoomMuted: function getChatRoomMuted() {
          return qn;
        },
        getChatRoomMutelist: function getChatRoomMutelist() {
          return Vn;
        },
        getChatRoomSharedFilelist: function getChatRoomSharedFilelist() {
          return Ri;
        },
        getChatRoomWhitelist: function getChatRoomWhitelist() {
          return pi;
        },
        getChatRooms: function getChatRooms() {
          return In;
        },
        isChatRoomWhiteUser: function isChatRoomWhiteUser() {
          return fi;
        },
        isInChatRoomAllowlist: function isInChatRoomAllowlist() {
          return mi;
        },
        isInChatRoomMutelist: function isInChatRoomMutelist() {
          return gi;
        },
        joinChatRoom: function joinChatRoom() {
          return kn;
        },
        leaveChatRoom: function leaveChatRoom() {
          return Dn;
        },
        listChatRoomMember: function listChatRoomMember() {
          return Gn;
        },
        listChatRoomMembers: function listChatRoomMembers() {
          return xn;
        },
        modifyChatRoom: function modifyChatRoom() {
          return Nn;
        },
        muteChatRoomMember: function muteChatRoomMember() {
          return Fn;
        },
        quitChatRoom: function quitChatRoom() {
          return Ln;
        },
        removeChatRoomAdmin: function removeChatRoomAdmin() {
          return Hn;
        },
        removeChatRoomAllowlistMember: function removeChatRoomAllowlistMember() {
          return di;
        },
        removeChatRoomAttribute: function removeChatRoomAttribute() {
          return Ai;
        },
        removeChatRoomAttributes: function removeChatRoomAttributes() {
          return Ci;
        },
        removeChatRoomBlockMulti: function removeChatRoomBlockMulti() {
          return ei;
        },
        removeChatRoomBlockSingle: function removeChatRoomBlockSingle() {
          return $n;
        },
        removeChatRoomMember: function removeChatRoomMember() {
          return bn;
        },
        removeChatRoomMembers: function removeChatRoomMembers() {
          return wn;
        },
        removeChatRoomWhitelistMember: function removeChatRoomWhitelistMember() {
          return li;
        },
        removeMultiChatRoomMember: function removeMultiChatRoomMember() {
          return Un;
        },
        removeMuteChatRoomMember: function removeMuteChatRoomMember() {
          return Wn;
        },
        removeSingleChatRoomMember: function removeSingleChatRoomMember() {
          return Mn;
        },
        rmUsersFromChatRoomWhitelist: function rmUsersFromChatRoomWhitelist() {
          return ui;
        },
        setChatRoomAdmin: function setChatRoomAdmin() {
          return jn;
        },
        setChatRoomAttribute: function setChatRoomAttribute() {
          return Si;
        },
        setChatRoomAttributes: function setChatRoomAttributes() {
          return Ii;
        },
        unblockChatRoomMember: function unblockChatRoomMember() {
          return Zn;
        },
        unblockChatRoomMembers: function unblockChatRoomMembers() {
          return ti;
        },
        unmuteChatRoomMember: function unmuteChatRoomMember() {
          return Kn;
        },
        updateChatRoomAnnouncement: function updateChatRoomAnnouncement() {
          return yi;
        },
        uploadChatRoomSharedFile: function uploadChatRoomSharedFile() {
          return Ti;
        }
      });
      var i = {};
      r.r(i), r.d(i, {
        getPresenceStatus: function getPresenceStatus() {
          return Li;
        },
        getSubscribedPresenceList: function getSubscribedPresenceList() {
          return Pi;
        },
        getSubscribedPresencelist: function getSubscribedPresencelist() {
          return ki;
        },
        publishPresence: function publishPresence() {
          return bi;
        },
        subscribePresence: function subscribePresence() {
          return Ui;
        },
        unsubscribePresence: function unsubscribePresence() {
          return wi;
        }
      });
      var a = {};
      r.r(a), r.d(a, {
        clearRemindTypeForConversation: function clearRemindTypeForConversation() {
          return Bi;
        },
        getPushPerformLanguage: function getPushPerformLanguage() {
          return Wi;
        },
        getSilentModeForAll: function getSilentModeForAll() {
          return Gi;
        },
        getSilentModeForConversation: function getSilentModeForConversation() {
          return ji;
        },
        getSilentModeForConversations: function getSilentModeForConversations() {
          return Hi;
        },
        setPushPerformLanguage: function setPushPerformLanguage() {
          return Fi;
        },
        setSilentModeForAll: function setSilentModeForAll() {
          return Di;
        },
        setSilentModeForConversation: function setSilentModeForConversation() {
          return xi;
        }
      });
      var s = {};
      r.r(s), r.d(s, {
        changeChatThreadName: function changeChatThreadName() {
          return Yi;
        },
        createChatThread: function createChatThread() {
          return zi;
        },
        destroyChatThread: function destroyChatThread() {
          return Xi;
        },
        getChatThreadDetail: function getChatThreadDetail() {
          return ra;
        },
        getChatThreadLastMessage: function getChatThreadLastMessage() {
          return ta;
        },
        getChatThreadMembers: function getChatThreadMembers() {
          return Qi;
        },
        getChatThreads: function getChatThreads() {
          return ea;
        },
        getJoinedChatThreads: function getJoinedChatThreads() {
          return Zi;
        },
        joinChatThread: function joinChatThread() {
          return Vi;
        },
        leaveChatThread: function leaveChatThread() {
          return Ji;
        },
        removeChatThreadMember: function removeChatThreadMember() {
          return $i;
        }
      });
      var c = {};
      r.r(c), r.d(c, {
        getSupportedLanguages: function getSupportedLanguages() {
          return oa;
        },
        translateMessage: function translateMessage() {
          return na;
        }
      });
      var u = {};
      function l() {
        u.converter._configure(), u.decoder._configure(), u.encoder._configure(), u.Field._configure(), u.MapField._configure(), u.Message._configure(), u.Namespace._configure(), u.Method._configure(), u.ReflectionObject._configure(), u.OneOf._configure(), u.parse._configure(), u.Reader._configure(), u.Root._configure(), u.Service._configure(), u.verifier._configure(), u.Type._configure(), u.types._configure(), u.wrappers._configure(), u.Writer._configure();
      }
      u.build = "minimal", u.Writer = r(244), u.encoder = r(929), u.Reader = r(494), u.util = r(935), u.rpc = r(325), u.roots = r(889), u.verifier = r(216), u.tokenize = r(869), u.parse = r(845), u.common = r(72), u.ReflectionObject = r(998), u.Namespace = r(476), u.Root = r(685), u.Enum = r(582), u.Type = r(192), u.Field = r(286), u.OneOf = r(735), u.MapField = r(435), u.Service = r(447), u.Method = r(484), u.converter = r(525), u.decoder = r(888), u.Message = r(339), u.wrappers = r(834), u.types = r(696), u.util = r(935), u.configure = l, u.load = function (e, t, r) {
        return "function" == typeof t ? (r = t, t = new u.Root()) : t || (t = new u.Root()), t.load(e, r);
      }, u.loadSync = function (e, t) {
        return t || (t = new u.Root()), t.loadSync(e);
      }, u.parseFromPbString = function (e, t, r) {
        return "function" == typeof t ? (r = t, t = new u.Root()) : t || (t = new u.Root()), t.parseFromPbString(e, r);
      }, l();
      var d,
        p = u,
        h = r(720),
        f = r.n(h),
        m = function () {
          function e(e) {
            this.type = e.type, this.message = e.message, this.data = e.data;
          }
          return e.create = function (t) {
            return new e(t);
          }, e;
        }();
      !function (e) {
        e[e.REQUEST_SUCCESS = 0] = "REQUEST_SUCCESS", e[e.REQUEST_TIMEOUT = -1] = "REQUEST_TIMEOUT", e[e.REQUEST_UNKNOWN = -2] = "REQUEST_UNKNOWN", e[e.REQUEST_PARAMETER_ERROR = -3] = "REQUEST_PARAMETER_ERROR", e[e.REQUEST_ABORT = -4] = "REQUEST_ABORT", e[e.WEBIM_CONNCTION_USER_NOT_ASSIGN_ERROR = 0] = "WEBIM_CONNCTION_USER_NOT_ASSIGN_ERROR", e[e.WEBIM_CONNCTION_OPEN_ERROR = 1] = "WEBIM_CONNCTION_OPEN_ERROR", e[e.WEBIM_CONNCTION_AUTH_ERROR = 2] = "WEBIM_CONNCTION_AUTH_ERROR", e[e.WEBIM_CONNCTION_OPEN_USERGRID_ERROR = 3] = "WEBIM_CONNCTION_OPEN_USERGRID_ERROR", e[e.WEBIM_CONNCTION_ATTACH_ERROR = 4] = "WEBIM_CONNCTION_ATTACH_ERROR", e[e.WEBIM_CONNCTION_ATTACH_USERGRID_ERROR = 5] = "WEBIM_CONNCTION_ATTACH_USERGRID_ERROR", e[e.WEBIM_CONNCTION_REOPEN_ERROR = 6] = "WEBIM_CONNCTION_REOPEN_ERROR", e[e.WEBIM_CONNCTION_SERVER_CLOSE_ERROR = 7] = "WEBIM_CONNCTION_SERVER_CLOSE_ERROR", e[e.WEBIM_CONNCTION_SERVER_ERROR = 8] = "WEBIM_CONNCTION_SERVER_ERROR", e[e.WEBIM_CONNCTION_IQ_ERROR = 9] = "WEBIM_CONNCTION_IQ_ERROR", e[e.WEBIM_CONNCTION_PING_ERROR = 10] = "WEBIM_CONNCTION_PING_ERROR", e[e.WEBIM_CONNCTION_NOTIFYVERSION_ERROR = 11] = "WEBIM_CONNCTION_NOTIFYVERSION_ERROR", e[e.WEBIM_CONNCTION_GETROSTER_ERROR = 12] = "WEBIM_CONNCTION_GETROSTER_ERROR", e[e.WEBIM_CONNCTION_CROSSDOMAIN_ERROR = 13] = "WEBIM_CONNCTION_CROSSDOMAIN_ERROR", e[e.WEBIM_CONNCTION_LISTENING_OUTOF_MAXRETRIES = 14] = "WEBIM_CONNCTION_LISTENING_OUTOF_MAXRETRIES", e[e.WEBIM_CONNCTION_RECEIVEMSG_CONTENTERROR = 15] = "WEBIM_CONNCTION_RECEIVEMSG_CONTENTERROR", e[e.WEBIM_CONNCTION_DISCONNECTED = 16] = "WEBIM_CONNCTION_DISCONNECTED", e[e.WEBIM_CONNCTION_AJAX_ERROR = 17] = "WEBIM_CONNCTION_AJAX_ERROR", e[e.WEBIM_CONNCTION_JOINROOM_ERROR = 18] = "WEBIM_CONNCTION_JOINROOM_ERROR", e[e.WEBIM_CONNCTION_GETROOM_ERROR = 19] = "WEBIM_CONNCTION_GETROOM_ERROR", e[e.WEBIM_CONNCTION_GETROOMINFO_ERROR = 20] = "WEBIM_CONNCTION_GETROOMINFO_ERROR", e[e.WEBIM_CONNCTION_GETROOMMEMBER_ERROR = 21] = "WEBIM_CONNCTION_GETROOMMEMBER_ERROR", e[e.WEBIM_CONNCTION_GETROOMOCCUPANTS_ERROR = 22] = "WEBIM_CONNCTION_GETROOMOCCUPANTS_ERROR", e[e.WEBIM_CONNCTION_LOAD_CHATROOM_ERROR = 23] = "WEBIM_CONNCTION_LOAD_CHATROOM_ERROR", e[e.WEBIM_CONNCTION_NOT_SUPPORT_CHATROOM_ERROR = 24] = "WEBIM_CONNCTION_NOT_SUPPORT_CHATROOM_ERROR", e[e.WEBIM_CONNCTION_JOINCHATROOM_ERROR = 25] = "WEBIM_CONNCTION_JOINCHATROOM_ERROR", e[e.WEBIM_CONNCTION_QUITCHATROOM_ERROR = 26] = "WEBIM_CONNCTION_QUITCHATROOM_ERROR", e[e.WEBIM_CONNCTION_APPKEY_NOT_ASSIGN_ERROR = 27] = "WEBIM_CONNCTION_APPKEY_NOT_ASSIGN_ERROR", e[e.WEBIM_CONNCTION_TOKEN_NOT_ASSIGN_ERROR = 28] = "WEBIM_CONNCTION_TOKEN_NOT_ASSIGN_ERROR", e[e.WEBIM_CONNCTION_SESSIONID_NOT_ASSIGN_ERROR = 29] = "WEBIM_CONNCTION_SESSIONID_NOT_ASSIGN_ERROR", e[e.WEBIM_CONNCTION_RID_NOT_ASSIGN_ERROR = 30] = "WEBIM_CONNCTION_RID_NOT_ASSIGN_ERROR", e[e.WEBIM_CONNCTION_CALLBACK_INNER_ERROR = 31] = "WEBIM_CONNCTION_CALLBACK_INNER_ERROR", e[e.WEBIM_CONNCTION_CLIENT_OFFLINE = 32] = "WEBIM_CONNCTION_CLIENT_OFFLINE", e[e.WEBIM_CONNCTION_CLIENT_LOGOUT = 33] = "WEBIM_CONNCTION_CLIENT_LOGOUT", e[e.WEBIM_CONNCTION_CLIENT_TOO_MUCH_ERROR = 34] = "WEBIM_CONNCTION_CLIENT_TOO_MUCH_ERROR", e[e.WEBIM_CONNECTION_ACCEPT_INVITATION_FROM_GROUP = 35] = "WEBIM_CONNECTION_ACCEPT_INVITATION_FROM_GROUP", e[e.WEBIM_CONNECTION_DECLINE_INVITATION_FROM_GROUP = 36] = "WEBIM_CONNECTION_DECLINE_INVITATION_FROM_GROUP", e[e.WEBIM_CONNECTION_ACCEPT_JOIN_GROUP = 37] = "WEBIM_CONNECTION_ACCEPT_JOIN_GROUP", e[e.WEBIM_CONNECTION_DECLINE_JOIN_GROUP = 38] = "WEBIM_CONNECTION_DECLINE_JOIN_GROUP", e[e.WEBIM_CONNECTION_CLOSED = 39] = "WEBIM_CONNECTION_CLOSED", e[e.WEBIM_CONNECTION_ERROR = 40] = "WEBIM_CONNECTION_ERROR", e[e.MAX_LIMIT = 50] = "MAX_LIMIT", e[e.MESSAGE_NOT_FOUND = 51] = "MESSAGE_NOT_FOUND", e[e.NO_PERMISSION = 52] = "NO_PERMISSION", e[e.OPERATION_UNSUPPORTED = 53] = "OPERATION_UNSUPPORTED", e[e.OPERATION_NOT_ALLOWED = 54] = "OPERATION_NOT_ALLOWED", e[e.LOCAL_DB_OPERATION_FAILED = 55] = "LOCAL_DB_OPERATION_FAILED", e[e.WEBIM_UPLOADFILE_BROWSER_ERROR = 100] = "WEBIM_UPLOADFILE_BROWSER_ERROR", e[e.WEBIM_UPLOADFILE_ERROR = 101] = "WEBIM_UPLOADFILE_ERROR", e[e.WEBIM_UPLOADFILE_NO_LOGIN = 102] = "WEBIM_UPLOADFILE_NO_LOGIN", e[e.WEBIM_UPLOADFILE_NO_FILE = 103] = "WEBIM_UPLOADFILE_NO_FILE", e[e.WEBIM_DOWNLOADFILE_ERROR = 200] = "WEBIM_DOWNLOADFILE_ERROR", e[e.WEBIM_DOWNLOADFILE_NO_LOGIN = 201] = "WEBIM_DOWNLOADFILE_NO_LOGIN", e[e.WEBIM_DOWNLOADFILE_BROWSER_ERROR = 202] = "WEBIM_DOWNLOADFILE_BROWSER_ERROR", e[e.PARSE_FILE_ERROR = 203] = "PARSE_FILE_ERROR", e[e.USER_NOT_FOUND = 204] = "USER_NOT_FOUND", e[e.MESSAGE_PARAMETER_ERROR = 205] = "MESSAGE_PARAMETER_ERROR", e[e.WEBIM_CONNCTION_USER_LOGIN_ANOTHER_DEVICE = 206] = "WEBIM_CONNCTION_USER_LOGIN_ANOTHER_DEVICE", e[e.WEBIM_CONNCTION_USER_REMOVED = 207] = "WEBIM_CONNCTION_USER_REMOVED", e[e.WEBIM_CONNCTION_USER_KICKED_BY_CHANGE_PASSWORD = 216] = "WEBIM_CONNCTION_USER_KICKED_BY_CHANGE_PASSWORD", e[e.WEBIM_CONNCTION_USER_KICKED_BY_OTHER_DEVICE = 217] = "WEBIM_CONNCTION_USER_KICKED_BY_OTHER_DEVICE", e[e.USER_MUTED_BY_ADMIN = 219] = "USER_MUTED_BY_ADMIN", e[e.USER_NOT_FRIEND = 221] = "USER_NOT_FRIEND", e[e.WEBIM_MESSAGE_REC_TEXT = 300] = "WEBIM_MESSAGE_REC_TEXT", e[e.WEBIM_MESSAGE_REC_TEXT_ERROR = 301] = "WEBIM_MESSAGE_REC_TEXT_ERROR", e[e.WEBIM_MESSAGE_REC_EMOTION = 302] = "WEBIM_MESSAGE_REC_EMOTION", e[e.WEBIM_MESSAGE_REC_PHOTO = 303] = "WEBIM_MESSAGE_REC_PHOTO", e[e.WEBIM_MESSAGE_REC_AUDIO = 304] = "WEBIM_MESSAGE_REC_AUDIO", e[e.WEBIM_MESSAGE_REC_AUDIO_FILE = 305] = "WEBIM_MESSAGE_REC_AUDIO_FILE", e[e.WEBIM_MESSAGE_REC_VEDIO = 306] = "WEBIM_MESSAGE_REC_VEDIO", e[e.WEBIM_MESSAGE_REC_VEDIO_FILE = 307] = "WEBIM_MESSAGE_REC_VEDIO_FILE", e[e.WEBIM_MESSAGE_REC_FILE = 308] = "WEBIM_MESSAGE_REC_FILE", e[e.WEBIM_MESSAGE_SED_TEXT = 309] = "WEBIM_MESSAGE_SED_TEXT", e[e.WEBIM_MESSAGE_SED_EMOTION = 310] = "WEBIM_MESSAGE_SED_EMOTION", e[e.WEBIM_MESSAGE_SED_PHOTO = 311] = "WEBIM_MESSAGE_SED_PHOTO", e[e.WEBIM_MESSAGE_SED_AUDIO = 312] = "WEBIM_MESSAGE_SED_AUDIO", e[e.WEBIM_MESSAGE_SED_AUDIO_FILE = 313] = "WEBIM_MESSAGE_SED_AUDIO_FILE", e[e.WEBIM_MESSAGE_SED_VEDIO = 314] = "WEBIM_MESSAGE_SED_VEDIO", e[e.WEBIM_MESSAGE_SED_VEDIO_FILE = 315] = "WEBIM_MESSAGE_SED_VEDIO_FILE", e[e.WEBIM_MESSAGE_SED_FILE = 316] = "WEBIM_MESSAGE_SED_FILE", e[e.WEBIM_MESSAGE_SED_ERROR = 317] = "WEBIM_MESSAGE_SED_ERROR", e[e.STATUS_INIT = 400] = "STATUS_INIT", e[e.STATUS_DOLOGIN_USERGRID = 401] = "STATUS_DOLOGIN_USERGRID", e[e.STATUS_DOLOGIN_IM = 402] = "STATUS_DOLOGIN_IM", e[e.STATUS_OPENED = 403] = "STATUS_OPENED", e[e.STATUS_CLOSING = 404] = "STATUS_CLOSING", e[e.STATUS_CLOSED = 405] = "STATUS_CLOSED", e[e.STATUS_ERROR = 406] = "STATUS_ERROR", e[e.SERVER_BUSY = 500] = "SERVER_BUSY", e[e.MESSAGE_INCLUDE_ILLEGAL_CONTENT = 501] = "MESSAGE_INCLUDE_ILLEGAL_CONTENT", e[e.MESSAGE_EXTERNAL_LOGIC_BLOCKED = 502] = "MESSAGE_EXTERNAL_LOGIC_BLOCKED", e[e.SERVER_UNKNOWN_ERROR = 503] = "SERVER_UNKNOWN_ERROR", e[e.MESSAGE_RECALL_TIME_LIMIT = 504] = "MESSAGE_RECALL_TIME_LIMIT", e[e.SERVICE_NOT_ENABLED = 505] = "SERVICE_NOT_ENABLED", e[e.SERVICE_NOT_ALLOW_MESSAGING = 506] = "SERVICE_NOT_ALLOW_MESSAGING", e[e.SERVICE_NOT_ALLOW_MESSAGING_MUTE = 507] = "SERVICE_NOT_ALLOW_MESSAGING_MUTE", e[e.MESSAGE_MODERATION_BLOCKED = 508] = "MESSAGE_MODERATION_BLOCKED", e[e.MESSAGE_CURRENT_LIMITING = 509] = "MESSAGE_CURRENT_LIMITING", e[e.MESSAGE_WEBSOCKET_DISCONNECTED = 510] = "MESSAGE_WEBSOCKET_DISCONNECTED", e[e.MESSAGE_SIZE_LIMIT = 511] = "MESSAGE_SIZE_LIMIT", e[e.GROUP_NOT_EXIST = 605] = "GROUP_NOT_EXIST", e[e.GROUP_NOT_JOINED = 602] = "GROUP_NOT_JOINED", e[e.GROUP_MEMBERS_FULL = 606] = "GROUP_MEMBERS_FULL", e[e.PERMISSION_DENIED = 603] = "PERMISSION_DENIED", e[e.WEBIM_LOAD_MSG_ERROR = 604] = "WEBIM_LOAD_MSG_ERROR", e[e.GROUP_ALREADY_JOINED = 601] = "GROUP_ALREADY_JOINED", e[e.GROUP_MEMBERS_LIMIT = 607] = "GROUP_MEMBERS_LIMIT", e[e.GROUP_IS_DISABLED = 608] = "GROUP_IS_DISABLED", e[e.GROUP_MEMBER_ATTRIBUTES_SET_FAILED = 609] = "GROUP_MEMBER_ATTRIBUTES_SET_FAILED", e[e.REST_PARAMS_STATUS = 700] = "REST_PARAMS_STATUS", e[e.CHATROOM_NOT_JOINED = 702] = "CHATROOM_NOT_JOINED", e[e.CHATROOM_MEMBERS_FULL = 704] = "CHATROOM_MEMBERS_FULL", e[e.CHATROOM_NOT_EXIST = 705] = "CHATROOM_NOT_EXIST", e[e.SDK_RUNTIME_ERROR = 999] = "SDK_RUNTIME_ERROR", e[e.PRESENCE_PARAM_EXCEED = 1100] = "PRESENCE_PARAM_EXCEED", e[e.REACTION_ALREADY_ADDED = 1101] = "REACTION_ALREADY_ADDED", e[e.REACTION_CREATING = 1102] = "REACTION_CREATING", e[e.REACTION_OPERATION_IS_ILLEGAL = 1103] = "REACTION_OPERATION_IS_ILLEGAL", e[e.TRANSLATION_NOT_VALID = 1200] = "TRANSLATION_NOT_VALID", e[e.TRANSLATION_TEXT_TOO_LONG = 1201] = "TRANSLATION_TEXT_TOO_LONG", e[e.TRANSLATION_FAILED = 1204] = "TRANSLATION_FAILED", e[e.THREAD_NOT_EXIST = 1300] = "THREAD_NOT_EXIST", e[e.THREAD_ALREADY_EXIST = 1301] = "THREAD_ALREADY_EXIST", e[e.MODIFY_MESSAGE_NOT_EXIST = 1302] = "MODIFY_MESSAGE_NOT_EXIST", e[e.MODIFY_MESSAGE_FORMAT_ERROR = 1303] = "MODIFY_MESSAGE_FORMAT_ERROR", e[e.MODIFY_MESSAGE_FAILED = 1304] = "MODIFY_MESSAGE_FAILED", e[e.CONVERSATION_NOT_EXIST = 1400] = "CONVERSATION_NOT_EXIST";
      }(d || (d = {}));
      var g,
        E,
        y,
        T,
        v,
        _,
        _R = function R() {
          return _R = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _R.apply(this, arguments);
        },
        O = function O(e, t, r, o) {
          var n,
            i,
            a,
            s,
            c,
            u,
            l,
            p,
            h,
            f,
            m,
            g,
            E,
            y,
            T,
            v,
            _,
            O,
            I,
            S,
            C,
            A,
            N,
            M = e.response;
          M && "string" == typeof M && (M = JSON.parse(M));
          var b = e.status,
            U = {
              elapse: o,
              httpCode: b,
              errDesc: null == M ? void 0 : M.error_description
            };
          if (400 === b) {
            if (40002 === M.error_code) return void t({
              type: d.THREAD_ALREADY_EXIST,
              message: null == M ? void 0 : M.error_description,
              extraInfo: U
            });
            if (40009 === M.error_code) return void t({
              type: d.OPERATION_UNSUPPORTED,
              message: null == M ? void 0 : M.error_description,
              extraInfo: U
            });
            if (60005 === M.error_code) return void t({
              type: d.GROUP_MEMBER_ATTRIBUTES_SET_FAILED,
              message: (null == M ? void 0 : M.desc) || (null == M ? void 0 : M.error_description),
              extraInfo: U
            });
            if (60010 === M.error_code) return void ((null == M ? void 0 : M.error_description.includes("exceeds chatgroup user metadata single value limit")) ? t({
              type: d.MAX_LIMIT,
              message: (null == M ? void 0 : M.desc) || M.error_description,
              extraInfo: U
            }) : t({
              type: d.NO_PERMISSION,
              message: (null == M ? void 0 : M.desc) || M.error_description,
              extraInfo: U
            }));
            if (60011 === M.error_code) return void t({
              type: d.CHATROOM_NOT_JOINED,
              message: null == M ? void 0 : M.desc,
              extraInfo: U
            });
            if (60006 === M.error_code || 60007 === M.error_code || 60009 === M.error_code || 60012 === M.error_code) return void t({
              type: d.MAX_LIMIT,
              message: (null == M ? void 0 : M.desc) || (null == M ? void 0 : M.error_description),
              extraInfo: U
            });
            if (null === (n = M.error_description) || void 0 === n ? void 0 : n.includes("are not members of this group")) return (null === (i = e.responseURL) || void 0 === i ? void 0 : i.includes("chatgroups")) ? t({
              type: d.GROUP_NOT_JOINED,
              data: e.response || e.responseText,
              message: M.error_description,
              extraInfo: U
            }) : t({
              type: d.CHATROOM_NOT_JOINED,
              data: e.response || e.responseText,
              message: M.error_description,
              extraInfo: U
            }), void r({
              type: d.WEBIM_CONNCTION_AJAX_ERROR,
              message: null == M ? void 0 : M.error_description,
              data: e.responseText,
              extraInfo: U
            });
            if ("the app not open presence" === (null == M ? void 0 : M.result)) return void t({
              type: d.SERVICE_NOT_ENABLED,
              message: null == M ? void 0 : M.result,
              extraInfo: U
            });
            if (null == M ? void 0 : M.error_description.includes("remark length must less")) return void t({
              type: d.MAX_LIMIT,
              message: null == M ? void 0 : M.error_description,
              extraInfo: U
            });
            switch (null == M ? void 0 : M.error_description) {
              case "the user is already operation this message":
                t({
                  type: d.REACTION_ALREADY_ADDED,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "The quantity has exceeded the limit!":
                t({
                  type: d.MAX_LIMIT,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "The user not in this group!":
                t({
                  type: d.GROUP_NOT_JOINED,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "the user operation is illegal!":
                t({
                  type: d.REACTION_OPERATION_IS_ILLEGAL,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "this appKey is not open reaction service!":
              case "this appKey not open message roaming":
                t({
                  type: d.SERVICE_NOT_ENABLED,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "this message is creating reaction, please try again.":
                t({
                  type: d.REACTION_CREATING,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "groupId can not be null!":
                t({
                  type: d.GROUP_NOT_EXIST,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "The input text is too long.":
                t({
                  type: d.TRANSLATION_TEXT_TOO_LONG,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "The target language is not valid.":
                t({
                  type: d.TRANSLATION_NOT_VALID,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "report failed, get message by id failed":
                t({
                  type: d.MESSAGE_NOT_FOUND,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "ext is too big ":
                t({
                  type: d.PRESENCE_PARAM_EXCEED,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "Request body not readable.Please check content type is correct!":
                t({
                  type: d.REQUEST_PARAMETER_ERROR,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              case "updateRemark | they are not friends, please add as a friend first.":
                t({
                  type: d.USER_NOT_FRIEND,
                  message: null == M ? void 0 : M.error_description,
                  extraInfo: U
                });
                break;
              default:
                t({
                  type: d.WEBIM_CONNCTION_AJAX_ERROR,
                  message: null == M ? void 0 : M.error_description,
                  data: e.responseText,
                  extraInfo: U
                }), r({
                  type: d.WEBIM_CONNCTION_AJAX_ERROR,
                  message: null == M ? void 0 : M.error_description,
                  data: e.responseText,
                  extraInfo: U
                });
            }
          } else if (401 === b) 40001 === M.error_code || 60001 === M.error_code || "Unable to authenticate (OAuth)" === M.error_description ? t({
            type: d.NO_PERMISSION,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }) : (r({
            type: d.WEBIM_CONNCTION_AJAX_ERROR,
            data: e.responseText,
            message: e.responseText,
            extraInfo: U
          }), t({
            type: d.WEBIM_CONNCTION_AJAX_ERROR,
            data: e.responseText,
            message: e.responseText,
            extraInfo: U
          }));else if (403 === b) 4e4 === M.error_code || 60004 === M.error_code || 15002 === M.error_code ? t({
            type: d.SERVICE_NOT_ENABLED,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }) : 40003 === M.error_code || 40004 === M.error_code ? t({
            type: d.THREAD_ALREADY_EXIST,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }) : 40005 === M.error_code || 40007 === M.error_code || 91002 === M.error_code ? t({
            type: d.MAX_LIMIT,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }) : 60002 === M.error_code && t({
            type: d.PERMISSION_DENIED,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }), "group member list is full!" === M.error_description ? (null === (a = e.responseURL) || void 0 === a ? void 0 : a.includes("chatgroups")) ? t({
            type: d.GROUP_MEMBERS_FULL,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : t({
            type: d.CHATROOM_MEMBERS_FULL,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : (null === (s = M.error_description) || void 0 === s ? void 0 : s.includes(M.error_description.includes("already in group"))) ? (null === (c = e.responseURL) || void 0 === c ? void 0 : c.includes("chatgroups")) && t({
            type: d.GROUP_ALREADY_JOINED,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : (null === (u = M.error_description) || void 0 === u ? void 0 : u.includes("are not members of this group")) ? (null === (l = e.responseURL) || void 0 === l ? void 0 : l.includes("chatgroups")) ? t({
            type: d.GROUP_NOT_JOINED,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : t({
            type: d.CHATROOM_NOT_JOINED,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : (null === (p = M.error_description) || void 0 === p ? void 0 : p.includes("service not open!")) || (null === (h = M.error_description) || void 0 === h ? void 0 : h.includes("message report not open")) || (null === (f = M.error_description) || void 0 === f ? void 0 : f.includes("messageroaming function not open")) ? t({
            type: d.SERVICE_NOT_ENABLED,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : (null === (m = M.error_description) || void 0 === m ? void 0 : m.includes("members size is greater than max user size !")) ? t({
            type: d.GROUP_MEMBERS_LIMIT,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : (null === (g = M.error_description) || void 0 === g ? void 0 : g.includes("can not operate this group, reason: group is disabled")) ? t({
            type: d.GROUP_IS_DISABLED,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : (null === (E = M.error_description) || void 0 === E ? void 0 : E.includes("Invitee's contact max count")) || (null === (y = M.error_description) || void 0 === y ? void 0 : y.includes("Inviter's contact max count")) ? t({
            type: d.MAX_LIMIT,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : t({
            type: d.PERMISSION_DENIED,
            data: e.response || e.responseText,
            message: "permission denied",
            extraInfo: _R(_R({}, U), {
              errDesc: "permission denied"
            })
          }), r({
            type: d.WEBIM_CONNCTION_AJAX_ERROR,
            data: e.responseText,
            message: e.responseText,
            extraInfo: U
          });else if (404 === b) 40011 === M.error_code ? t({
            type: d.THREAD_NOT_EXIST,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }) : 40012 === M.error_code ? t({
            type: d.NO_PERMISSION,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }) : 60003 === M.error_code || 20004 === M.error_code ? t({
            type: d.GROUP_NOT_JOINED,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }) : 91001 === M.error_code && t({
            type: d.CONVERSATION_NOT_EXIST,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          }), (null === (T = M.error_description) || void 0 === T ? void 0 : T.includes("do not find this group")) || (null === (v = M.error_description) || void 0 === v ? void 0 : v.includes("does not exist")) ? (null === (_ = e.responseURL) || void 0 === _ ? void 0 : _.includes("chatgroups")) ? t({
            type: d.GROUP_NOT_EXIST,
            data: e.response || e.responseText,
            message: "The chat room dose not exist.",
            extraInfo: _R(_R({}, U), {
              errDesc: "The chat room dose not exist."
            })
          }) : t({
            type: d.CHATROOM_NOT_EXIST,
            data: e.response || e.responseText,
            message: "The chat room dose not exist.",
            extraInfo: _R(_R({}, U), {
              errDesc: "The chat room dose not exist."
            })
          }) : (null === (O = M.error_description) || void 0 === O ? void 0 : O.includes("username")) && (null === (I = M.error_description) || void 0 === I ? void 0 : I.includes("doesn't exist!'")) || (null === (S = M.error_description) || void 0 === S ? void 0 : S.includes("user not found")) || (null === (C = M.error_description) || void 0 === C ? void 0 : C.includes("Service resource not found")) && "UserNotFoundException" === (null == M ? void 0 : M.exception) ? t({
            type: d.USER_NOT_FOUND,
            data: e.response || e.responseText,
            message: M.error_description,
            extraInfo: U
          }) : t({
            type: d.WEBIM_CONNCTION_AJAX_ERROR,
            data: e.response || e.responseText,
            message: e.responseText,
            extraInfo: U
          }), r({
            type: d.WEBIM_CONNCTION_AJAX_ERROR,
            data: e.response || e.responseText,
            message: e.responseText,
            extraInfo: U
          });else if (406 === b) 90004 === M.error_code && t({
            type: d.OPERATION_NOT_ALLOWED,
            message: null == M ? void 0 : M.error_description,
            extraInfo: U
          });else if (429 === b || 503 === b) {
            if (null === (A = M.error_description) || void 0 === A ? void 0 : A.includes("The request has reached the maximum limit")) return void t({
              type: d.MAX_LIMIT,
              message: e.responseText,
              extraInfo: U
            });
            t({
              type: d.SERVER_BUSY,
              data: e.response || e.responseText,
              message: "Server is busy.",
              extraInfo: _R(_R({}, U), {
                errDesc: "Server is busy."
              })
            }), r({
              type: d.WEBIM_CONNCTION_AJAX_ERROR,
              data: e.responseText,
              message: "Server is busy.",
              extraInfo: _R(_R({}, U), {
                errDesc: "Server is busy."
              })
            });
          } else if (500 === b) {
            if (40006 === M.error_code || 40008 === M.error_code || 40010 === M.error_code) return void t({
              type: d.SERVER_UNKNOWN_ERROR,
              message: null == M ? void 0 : M.error_description,
              extraInfo: U
            });
            if (90005 === M.error_code || 99999 === M.error_code) return void t({
              type: d.REQUEST_UNKNOWN,
              message: null == M ? void 0 : M.error_description,
              extraInfo: U
            });
            if (null === (N = M.error_description) || void 0 === N ? void 0 : N.includes("translte failed!")) return void t({
              type: d.TRANSLATION_FAILED,
              message: e.responseText,
              extraInfo: U
            });
            t({
              type: d.WEBIM_CONNCTION_AJAX_ERROR,
              data: e.responseText,
              message: "",
              extraInfo: U
            }), r({
              type: d.WEBIM_CONNCTION_AJAX_ERROR,
              data: e.responseText,
              message: "",
              extraInfo: U
            });
          } else t({
            type: d.WEBIM_CONNCTION_AJAX_ERROR,
            data: e.responseText,
            message: e.responseText,
            extraInfo: _R(_R({}, U), {
              errDesc: "ajax error"
            })
          }), r({
            type: d.WEBIM_CONNCTION_AJAX_ERROR,
            data: e.responseText,
            message: e.responseText,
            extraInfo: _R(_R({}, U), {
              errDesc: "ajax error"
            })
          });
        };
      !function (e) {
        e[e.UNKNOWOPERATION = -1] = "UNKNOWOPERATION", e[e.REST_GET_SESSION_LIST = 1] = "REST_GET_SESSION_LIST", e[e.REST_DEL_SESSION = 2] = "REST_DEL_SESSION", e[e.REST_GET_HISTORY_MESSAGE = 3] = "REST_GET_HISTORY_MESSAGE", e[e.REST_PIN_CONVERSATION = 4] = "REST_PIN_CONVERSATION", e[e.REST_OPERATE = 100] = "REST_OPERATE", e[e.MSYNC_SENDMESSAGE = 101] = "MSYNC_SENDMESSAGE", e[e.MSYNC_RECALLMESSAGE = 102] = "MSYNC_RECALLMESSAGE", e[e.MSYNC_MODIFYMESSAGE = 103] = "MSYNC_MODIFYMESSAGE", e[e.MSYNC_OPERATE = 200] = "MSYNC_OPERATE", e[e.ROSTER_ADD = 201] = "ROSTER_ADD", e[e.ROSTER_REMOVE = 202] = "ROSTER_REMOVE", e[e.ROSTER_ACCEPT = 203] = "ROSTER_ACCEPT", e[e.ROSTER_DECLINE = 204] = "ROSTER_DECLINE", e[e.ROSTER_BAN = 205] = "ROSTER_BAN", e[e.ROSTER_ALLOW = 206] = "ROSTER_ALLOW", e[e.ROSTER_BLACKLIST = 207] = "ROSTER_BLACKLIST", e[e.ROSTER_CONTACTS = 208] = "ROSTER_CONTACTS", e[e.ROSTER_GET_ALL_CONTACTS_REMARKS = 209] = "ROSTER_GET_ALL_CONTACTS_REMARKS", e[e.ROSTER_GET_ALL_CONTACTS_REMARKS_FROM_SERVER_BY_PAGE = 210] = "ROSTER_GET_ALL_CONTACTS_REMARKS_FROM_SERVER_BY_PAGE", e[e.ROSTER_SET_CONTACT_REMARK = 211] = "ROSTER_SET_CONTACT_REMARK", e[e.ROSTER_OPERATE = 300] = "ROSTER_OPERATE", e[e.USER_LOGIN = 301] = "USER_LOGIN", e[e.USER_CREATE = 302] = "USER_CREATE", e[e.USER_UPDATE_USERINFO = 303] = "USER_UPDATE_USERINFO", e[e.USER_FETCH_USERINFO = 304] = "USER_FETCH_USERINFO", e[e.USER_UPDATE_NICK = 305] = "USER_UPDATE_NICK", e[e.USER_UPLOAD_PUSH_TOKEN = 306] = "USER_UPLOAD_PUSH_TOKEN", e[e.USER_OPERATE = 400] = "USER_OPERATE", e[e.GROUP_CREATEGROUP = 401] = "GROUP_CREATEGROUP", e[e.GROUP_BLOCK_MESSAGE = 402] = "GROUP_BLOCK_MESSAGE", e[e.GROUP_FETCH_PUBLICGROUPS_WITHCURSOR = 403] = "GROUP_FETCH_PUBLICGROUPS_WITHCURSOR", e[e.GROUP_FETCH_USERS_GROUP = 404] = "GROUP_FETCH_USERS_GROUP", e[e.GROUP_CHANGE_OWNER = 405] = "GROUP_CHANGE_OWNER", e[e.GROUP_FETCH_SPECIFICATION = 406] = "GROUP_FETCH_SPECIFICATION", e[e.GROUP_CHANGE_GROUPATTRIBUTE = 407] = "GROUP_CHANGE_GROUPATTRIBUTE", e[e.GROUP_FETCH_MEMEBERS = 408] = "GROUP_FETCH_MEMEBERS", e[e.GROUP_GET_ADMIN = 409] = "GROUP_GET_ADMIN", e[e.GROUP_SET_ADMIN = 410] = "GROUP_SET_ADMIN", e[e.GROUP_REMOVE_ADMIN = 411] = "GROUP_REMOVE_ADMIN", e[e.GROUP_DESTOTYGROUP = 412] = "GROUP_DESTOTYGROUP", e[e.GROUP_LEAVEGROUP = 413] = "GROUP_LEAVEGROUP", e[e.GROUP_INVITE_TO_GROUP = 414] = "GROUP_INVITE_TO_GROUP", e[e.GROUP_JOIN_PUBLICGROUP = 415] = "GROUP_JOIN_PUBLICGROUP", e[e.GROUP_ACCEPT_JOINPUBLICGROUPAPPL = 416] = "GROUP_ACCEPT_JOINPUBLICGROUPAPPL", e[e.GROUP_DECLINE_JOINPUBLICGROUPAPPL = 417] = "GROUP_DECLINE_JOINPUBLICGROUPAPPL", e[e.GROUP_ACCEPT_INVITATION = 418] = "GROUP_ACCEPT_INVITATION", e[e.GROUP_DECLINE_INVITATION = 419] = "GROUP_DECLINE_INVITATION", e[e.GROUP_REMOVE_MEMBER = 420] = "GROUP_REMOVE_MEMBER", e[e.GROUP_REMOVE_MEMBERS = 421] = "GROUP_REMOVE_MEMBERS", e[e.GROUP_MUTE_MEMBERS = 422] = "GROUP_MUTE_MEMBERS", e[e.GROUP_UNMUTE_MEMBERS = 423] = "GROUP_UNMUTE_MEMBERS", e[e.GROUP_FETCH_MUTES = 424] = "GROUP_FETCH_MUTES", e[e.GROUP_BLOCK_MEMBER = 425] = "GROUP_BLOCK_MEMBER", e[e.GROUP_BLOCK_MEMBERS = 426] = "GROUP_BLOCK_MEMBERS", e[e.GROUP_UNBLOCK_MEMBER = 427] = "GROUP_UNBLOCK_MEMBER", e[e.GROUP_UNBLOCK_MEMBERS = 428] = "GROUP_UNBLOCK_MEMBERS", e[e.GROUP_GET_BLOCK_LIST = 429] = "GROUP_GET_BLOCK_LIST", e[e.GROUP_MUTE_ALLMEMBERS = 430] = "GROUP_MUTE_ALLMEMBERS", e[e.GROUP_UNMUTE_ALLMEMBERS = 431] = "GROUP_UNMUTE_ALLMEMBERS", e[e.GROUP_ADD_WHITELIST = 432] = "GROUP_ADD_WHITELIST", e[e.GROUP_REMOVE_WHITELIST = 433] = "GROUP_REMOVE_WHITELIST", e[e.GROUP_FETCH_WHITELIST = 434] = "GROUP_FETCH_WHITELIST", e[e.GROUP_IS_IN_WHITELIST = 435] = "GROUP_IS_IN_WHITELIST", e[e.GROUP_GET_READ_USERS = 436] = "GROUP_GET_READ_USERS", e[e.GROUP_FETCH_ANNOUNCEMENT = 437] = "GROUP_FETCH_ANNOUNCEMENT", e[e.GROUP_UPDATE_ANNOUNCEMENT = 438] = "GROUP_UPDATE_ANNOUNCEMENT", e[e.GROUP_UPLOAD_SHAREDFILE = 439] = "GROUP_UPLOAD_SHAREDFILE", e[e.GROUP_DELETE_SHAREDFILE = 440] = "GROUP_DELETE_SHAREDFILE", e[e.GROUP_FETCH_SHAREDFILE = 441] = "GROUP_FETCH_SHAREDFILE", e[e.GROUP_DOWNLOAD_SHAREDFILE = 442] = "GROUP_DOWNLOAD_SHAREDFILE", e[e.GROUP_MEMBER_SET_META_DATA = 443] = "GROUP_MEMBER_SET_META_DATA", e[e.GROUP_MEMBER_FETCH_META_DATA = 444] = "GROUP_MEMBER_FETCH_META_DATA", e[e.GROUP_OPERATE = 500] = "GROUP_OPERATE", e[e.CHATROOM_FETCH_CHATROOMSWITHPAGE = 501] = "CHATROOM_FETCH_CHATROOMSWITHPAGE", e[e.CHATROOM_CREATECHATROOM = 502] = "CHATROOM_CREATECHATROOM", e[e.CHATROOM_DESTORYCHATROOM = 503] = "CHATROOM_DESTORYCHATROOM", e[e.CHATROOM_FETCH_SPECIFICATION = 504] = "CHATROOM_FETCH_SPECIFICATION", e[e.CHATROOM_CHANGE_ATTRIBUTE = 505] = "CHATROOM_CHANGE_ATTRIBUTE", e[e.CHATROOM_REMOVE_MEMBER = 506] = "CHATROOM_REMOVE_MEMBER", e[e.CHATROOM_REMOVE_MEMBERS = 507] = "CHATROOM_REMOVE_MEMBERS", e[e.CHATROOM_ADD_MEMBERS = 508] = "CHATROOM_ADD_MEMBERS", e[e.CHATROOM_JOINCAHTROOM = 509] = "CHATROOM_JOINCAHTROOM", e[e.CHATROOM_LEAVECAHTROOM = 510] = "CHATROOM_LEAVECAHTROOM", e[e.CHATROOM_FETCH_MEMBERS = 511] = "CHATROOM_FETCH_MEMBERS", e[e.CHATROOM_GET_ADMIN = 512] = "CHATROOM_GET_ADMIN", e[e.CHATROOM_SET_ADMIN = 513] = "CHATROOM_SET_ADMIN", e[e.CHATROOM_REMOVE_ADMIN = 514] = "CHATROOM_REMOVE_ADMIN", e[e.CHATROOM_MUTE_USER = 515] = "CHATROOM_MUTE_USER", e[e.CHATROOM_UNMUTE_USER = 516] = "CHATROOM_UNMUTE_USER", e[e.CHATROOM_FETCH_MUTES = 517] = "CHATROOM_FETCH_MUTES", e[e.CHATROOM_BLOCK_USER = 518] = "CHATROOM_BLOCK_USER", e[e.CHATROOM_BLOCK_USERS = 519] = "CHATROOM_BLOCK_USERS", e[e.CHATROOM_UNBLOCK_USER = 520] = "CHATROOM_UNBLOCK_USER", e[e.CHATROOM_UNBLOCK_USERS = 521] = "CHATROOM_UNBLOCK_USERS", e[e.CHATROOM_FETCH_BANS = 522] = "CHATROOM_FETCH_BANS", e[e.CHATROOM_MUTE_ALLMEMEBERS = 523] = "CHATROOM_MUTE_ALLMEMEBERS", e[e.CHATROOM_UNMUTE_ALLMEMEBERS = 524] = "CHATROOM_UNMUTE_ALLMEMEBERS", e[e.CHATROOM_ADD_WHITELIST = 525] = "CHATROOM_ADD_WHITELIST", e[e.CHATROOM_REMOVE_WHITELIST = 526] = "CHATROOM_REMOVE_WHITELIST", e[e.CHATROOM_FETCH_WHITELIST = 527] = "CHATROOM_FETCH_WHITELIST", e[e.CHATROOM_FETCH_MEMBERIN_WHITELIST = 528] = "CHATROOM_FETCH_MEMBERIN_WHITELIST", e[e.CHATROOM_FETCH_ANNOUNCEMENT = 529] = "CHATROOM_FETCH_ANNOUNCEMENT", e[e.CHATROOM_UPDATE_ANNOUNCEMENT = 530] = "CHATROOM_UPDATE_ANNOUNCEMENT", e[e.CHATROOM_REMOVE_SHARE_FILE = 531] = "CHATROOM_REMOVE_SHARE_FILE", e[e.CHATROOM_GET_SHARE_FILE_LIST = 532] = "CHATROOM_GET_SHARE_FILE_LIST", e[e.CHATROOM_UPLOAD_FILE = 533] = "CHATROOM_UPLOAD_FILE", e[e.CHATROOM_SET_META_DATA = 534] = "CHATROOM_SET_META_DATA", e[e.CHATROOM_DELETE_META_DATA = 535] = "CHATROOM_DELETE_META_DATA", e[e.CHATROOM_FETCH_META_DATA = 536] = "CHATROOM_FETCH_META_DATA", e[e.CHATROOM_OPERATE = 600] = "CHATROOM_OPERATE";
      }(g || (g = {})), function (e) {
        e.SDK_INTERNAL = "SDK_INTERNAL", e.LOGIN = "USER_LOGIN", e.REGISTER = "USER_CREATE", e.GET_CHATROOM_LIST = "CHATROOM_FETCH_CHATROOMSWITHPAGE", e.CREATE_CHATROOM = "CHATROOM_CREATECHATROOM", e.DESTROY_CHATROOM = "CHATROOM_DESTORYCHATROOM", e.GET_CHATROOM_DETAIL = "CHATROOM_FETCH_SPECIFICATION", e.MODIFY_CHATROOM = "CHATROOM_CHANGE_ATTRIBUTE", e.REMOVE_CHATROOM_MEMBER = "CHATROOM_REMOVE_MEMBER", e.MULTI_REMOVE_CHATROOM_MEMBER = "CHATROOM_REMOVE_MEMBERS", e.ADD_USERS_TO_CHATROOM = "CHATROOM_ADD_MEMBERS", e.JOIN_CHATROOM = "CHATROOM_JOINCAHTROOM", e.QUIT_CHATROOM = "CHATROOM_LEAVECAHTROOM", e.LIST_CHATROOM_MEMBERS = "CHATROOM_FETCH_MEMBERS", e.GET_CHATROOM_ADMIN = "CHATROOM_GET_ADMIN", e.SET_CHATROOM_ADMIN = "CHATROOM_SET_ADMIN", e.REMOVE_CHATROOM_ADMIN = "CHATROOM_REMOVE_ADMIN", e.MUTE_CHATROOM_MEMBER = "CHATROOM_MUTE_USER", e.REMOVE_MUTE_CHATROOM_MEMBER = "CHATROOM_UNMUTE_USER", e.GET_MUTE_CHATROOM_MEMBERS = "CHATROOM_FETCH_MUTES", e.SET_CHATROOM_MEMBER_TO_BLACK = "CHATROOM_BLOCK_USER", e.MULTI_SET_CHATROOM_MEMBER_TO_BLACK = "CHATROOM_BLOCK_USERS", e.REMOVE_CHATROOM_MEMBER_BLACK = "CHATROOM_UNBLOCK_USER", e.MULTI_REMOVE_CHATROOM_MEMBER_BLACK = "CHATROOM_UNBLOCK_USERS", e.GET_CHATROOM_BLOCK_MEMBERS = "CHATROOM_FETCH_BANS", e.DISABLED_CHATROOM_SEND_MSG = "CHATROOM_MUTE_ALLMEMEBERS", e.ENABLE_CHATROOM_SEND_MSG = "CHATROOM_UNMUTE_ALLMEMEBERS", e.ADD_CHATROOM_WHITE_USERS = "CHATROOM_ADD_WHITELIST", e.REMOVE_CHATROOM_WHITE_USERS = "CHATROOM_REMOVE_WHITELIST", e.GET_CHATROOM_WHITE_USERS = "CHATROOM_FETCH_WHITELIST", e.CHECK_CHATROOM_WHITE_USER = "CHATROOM_FETCH_MEMBERIN_WHITELIST", e.GET_CHATROOM_ANN = "CHATROOM_FETCH_ANNOUNCEMENT", e.UPDATE_CHATROOM_ANN = "CHATROOM_UPDATE_ANNOUNCEMENT", e.DELETE_CHATROOM_FILE = "CHATROOM_REMOVE_SHARE_FILE", e.GET_CHATROOM_FILES = "CHATROOM_GET_SHARE_FILE_LIST", e.UPLOAD_CHATROOM_FILE = "CHATROOM_UPLOAD_FILE", e.SET_CHATROOM_ATTR = "CHATROOM_SET_META_DATA", e.DELETE_CHATROOM_ATTR = "CHATROOM_DELETE_META_DATA", e.GET_CHATROOM_ATTR = "CHATROOM_FETCH_META_DATA", e.CREATE_GROUP = "GROUP_CREATEGROUP", e.BLOCK_GROUP = "GROUP_BLOCK_MESSAGE", e.LIST_GROUP = "GROUP_FETCH_PUBLICGROUPS_WITHCURSOR", e.GET_USER_GROUP = "GROUP_FETCH_USERS_GROUP", e.CHANGE_OWNER = "GROUP_CHANGE_OWNER", e.GET_GROUP_INFO = "GROUP_FETCH_SPECIFICATION", e.MODIFY_GROUP = "GROUP_CHANGE_GROUPATTRIBUTE", e.LIST_GROUP_MEMBER = "GROUP_FETCH_MEMEBERS", e.GET_GROUP_ADMIN = "GROUP_GET_ADMIN", e.SET_GROUP_ADMIN = "GROUP_SET_ADMIN", e.REMOVE_GROUP_ADMIN = "GROUP_REMOVE_ADMIN", e.DISSOLVE_GROUP = "GROUP_DESTOTYGROUP", e.QUIT_GROUP = "GROUP_LEAVEGROUP", e.INVITE_TO_GROUP = "GROUP_INVITE_TO_GROUP", e.JOIN_GROUP = "GROUP_JOIN_PUBLICGROUP", e.AGREE_JOIN_GROUP = "GROUP_ACCEPT_JOINPUBLICGROUPAPPL", e.REJECT_JOIN_GROUP = "GROUP_DECLINE_JOINPUBLICGROUPAPPL", e.AGREE_INVITE_GROUP = "GROUP_ACCEPT_INVITATION", e.REJECT_INVITE_GROUP = "GROUP_DECLINE_INVITATION", e.REMOVE_GROUP_MEMBER = "GROUP_REMOVE_MEMBER", e.MULTI_REMOVE_GROUP_MEMBER = "GROUP_REMOVE_MEMBERS", e.MUTE_GROUP_MEMBER = "GROUP_MUTE_MEMBERS", e.UNMUTE_GROUP_MEMBER = "GROUP_UNMUTE_MEMBERS", e.GET_GROUP_MUTE_LIST = "GROUP_FETCH_MUTES", e.BLOCK_GROUP_MEMBER = "GROUP_BLOCK_MEMBER", e.BLOCK_GROUP_MEMBERS = "GROUP_BLOCK_MEMBERS", e.UNBLOCK_GROUP_MEMBER = "GROUP_UNBLOCK_MEMBER", e.UNBLOCK_GROUP_MEMBERS = "GROUP_UNBLOCK_MEMBERS", e.GET_GROUP_BLACK_LIST = "GROUP_GET_BLOCK_LIST", e.DISABLED_SEND_GROUP_MSG = "GROUP_MUTE_ALLMEMBERS", e.ENABLE_SEND_GROUP_MSG = "GROUP_UNMUTE_ALLMEMBERS", e.ADD_USERS_TO_GROUP_WHITE = "GROUP_ADD_WHITELIST", e.REMOVE_GROUP_WHITE_MEMBER = "GROUP_REMOVE_WHITELIST", e.GET_GROUP_WHITE_LIST = "GROUP_FETCH_WHITELIST", e.IS_IN_GROUP_WHITE_LIST = "GROUP_IS_IN_WHITELIST", e.GET_GROUP_MSG_READ_USER = "GROUP_GET_READ_USERS", e.GET_GROUP_ANN = "GROUP_FETCH_ANNOUNCEMENT", e.UPDATE_GROUP_ANN = "GROUP_UPDATE_ANNOUNCEMENT", e.UPLOAD_GROUP_FILE = "GROUP_UPLOAD_SHAREDFILE", e.DELETE_GROUP_FILE = "GROUP_DELETE_SHAREDFILE", e.GET_GROUP_FILE_LIST = "GROUP_FETCH_SHAREDFILE", e.DOWN_GROUP_FILE = "GROUP_DOWNLOAD_SHAREDFILE", e.SET_GROUP_MEMBER_ATTRS = "GROUP_MEMBER_SET_META_DATA", e.GET_GROUP_MEMBER_ATTR = "GROUP_MEMBER_FETCH_META_DATA", e.GET_SESSION_LIST = "REST_GET_SESSION_LIST", e.DELETE_SESSION = "REST_DEL_SESSION", e.GET_HISTORY_MSG = "REST_GET_HISTORY_MESSAGE", e.PIN_CONVERSATION = "REST_PIN_CONVERSATION", e.UPDATE_USER_INFO = "USER_UPDATE_USERINFO", e.GET_USER_INFO = "USER_FETCH_USERINFO", e.UPDATE_USER_NICK = "USER_UPDATE_NICK", e.UPLOAD_PUSH_TOKEN = "USER_UPLOAD_PUSH_TOKEN", e.GET_BLACK_LIST = "ROSTER_BLACKLIST", e.GET_CONTACTS = "ROSTER_CONTACTS", e.ROSTER_GET_ALL_CONTACTS_REMARKS = "ROSTER_GET_ALL_CONTACTS_REMARKS", e.ROSTER_GET_ALL_CONTACTS_REMARKS_FROM_SERVER_BY_PAGE = "ROSTER_GET_ALL_CONTACTS_REMARKS_FROM_SERVER_BY_PAGE", e.ROSTER_SET_CONTACT_REMARK = "ROSTER_SET_CONTACT_REMARK", e.ROSTER_ADD = "ROSTER_ADD", e.ROSTER_REMOVE = "ROSTER_REMOVE", e.ROSTER_ACCEPT = "ROSTER_ACCEPT", e.ROSTER_DECLINE = "ROSTER_DECLINE", e.ROSTER_BAN = "ROSTER_BAN", e.ROSTER_ALLOW = "ROSTER_ALLOW", e.SEND_MSG = "MSYNC_SENDMESSAGE", e.UPLOAD_MSG_ATTACH = "UPLOAD_MSG_ATTACH", e.SEND_RECALL_MSG = "MSYNC_RECALLMESSAGE", e.MODIFY_MESSAGE = "MSYNC_MODIFYMESSAGE";
      }(E || (E = {})), function (e) {
        e.GET_DNS = "REST_DNSLIST", e.LOGIN_BY_AGORA_TOKEN = "LOGIN_BY_AGORA_TOKEN", e.LOGIN_BY_PWD = "LOGIN_BY_PWD", e.RESISTER = "REGISTER";
      }(y || (y = {})), function (e) {
        e[e["5G"] = 7] = "5G", e[e["4G"] = 7] = "4G", e[e["3G"] = 7] = "3G", e[e["2G"] = 7] = "2G", e[e["SLOW-2G"] = 7] = "SLOW-2G", e[e.WIFI = 2] = "WIFI", e[e.LAN = 1] = "LAN", e[e.DISCONNECTED = 0] = "DISCONNECTED", e[e.NONE = 0] = "NONE", e[e.UNKNOWN = -1] = "UNKNOWN", e[e["WEBIM UNABLE TO GET"] = -2] = "WEBIM UNABLE TO GET";
      }(T || (T = {})), function (e) {
        e[e.success = 200] = "success", e[e.failed = 500] = "failed";
      }(v || (v = {})), function (e) {
        e[e.web = 0] = "web", e[e.native = 1] = "native";
      }(_ || (_ = {}));
      var I = new Map(),
        S = 1e3,
        C = 9675,
        A = -1;
      function N() {
        console.log && (console.log.apply ? console.log.apply(console, Array.prototype.slice.call(arguments)) : Function.prototype.apply.apply(console.log, [console, arguments])), console.trace && console.trace();
      }
      var M,
        b = "undefined" != typeof window && void 0 !== window.navigator && /Trident\/|MSIE /.test(window.navigator.userAgent),
        U = function U() {},
        w = {};
      !function (e) {
        e[e.TRACE = 0] = "TRACE", e[e.DEBUG = 1] = "DEBUG", e[e.INFO = 2] = "INFO", e[e.WARN = 3] = "WARN", e[e.ERROR = 4] = "ERROR", e[e.SILENT = 5] = "SILENT";
      }(M || (M = {}));
      var P = function () {
        function e(e, t, r) {
          this.name = e || "defaultLogger", this.currentLevel = 0, this.useCookiePersist = !1, this.storageLogLevelKey = "loglevel", this.levels = M, this.logMethods = ["trace", "debug", "info", "warn", "error"], this.methodFactory = r || this.defaultMethodFactory;
          var o = this._getPersistedLevel();
          null == o && (o = null === t ? "WARN" : t), this.logs = [], this.config = {
            useCache: !1,
            maxCache: 3145728,
            color: "",
            background: ""
          }, this.logBytes = 0, this.setLevel(o, !1, "");
        }
        return e.prototype.setConfig = function (e) {
          this.config = e;
        }, e.prototype.getLevel = function () {
          return this.currentLevel;
        }, e.prototype.setLevel = function (e, t, r) {
          if ("string" == typeof e && (e = M[e]), void 0 === e && (e = 0), !("number" == typeof e && e >= 0 && e <= this.levels.SILENT)) throw Error("log.setLevel() called with invalid level: " + e);
          if (this.currentLevel = e, !1 !== t && this._persistLevel(e), this.replaceLoggingMethods(e, r), "undefined" == typeof console && e < M.SILENT) throw Error("No console available for logging");
        }, e.prototype.setDefaultLevel = function (e) {
          this._getPersistedLevel() || this.setLevel(e, !1, "");
        }, e.prototype.enableAll = function (e) {
          this.setLevel(this.levels.TRACE, !0, "");
        }, e.prototype.disableAll = function (e) {
          this.setLevel(this.levels.SILENT, !0, "");
        }, e.prototype.getLogs = function () {
          return this.logs;
        }, e.prototype.download = function () {
          if ("undefined" != typeof window && "undefined" != typeof document) {
            var e = this.getLogs().join("\n"),
              t = new Blob([e], {
                type: "text/plain;charset=UTF-8"
              }),
              r = window.URL.createObjectURL(t),
              o = document.createElement("a");
            o.style.display = "none", o.href = r, o.setAttribute("download", "sdklog"), document.body.appendChild(o), o.click();
          }
        }, e.prototype._bindMethod = function (e, t, r) {
          var o = this,
            n = e[t],
            i = this.getTime();
          if (r) return this._cacheLog;
          if ("function" == typeof n.bind) return function () {
            for (var r = [], i = 0; i < arguments.length; i++) {
              r[i] = arguments[i];
            }
            var a = o.getTime();
            n.call.apply(n, function (e, t, r) {
              if (r || 2 === arguments.length) for (var o, n = 0, i = t.length; n < i; n++) {
                !o && n in t || (o || (o = Array.prototype.slice.call(t, 0, n)), o[n] = t[n]);
              }
              return e.concat(o || Array.prototype.slice.call(t));
            }([e, "".concat(a, " IM SDK [").concat("log" === t ? "debug" : t, "]: ")], r, !1)), o.onLog && o.onLog({
              time: a,
              level: "log" === t ? "debug" : t,
              logs: r
            });
          };
          try {
            return Function.prototype.bind.call(n, e, "".concat(i, " IM SDK [").concat("log" === t ? "debug" : t, "]: "));
          } catch (t) {
            return function () {
              return Function.prototype.apply.apply(n, [e, arguments]);
            };
          }
        }, e.prototype.getTime = function () {
          var e = new Date();
          return e.toTimeString().split(" ")[0] + ":" + e.getMilliseconds();
        }, e.prototype._cacheLog = function () {
          for (var e = [], t = 0; t < arguments.length; t++) {
            e[t] = arguments[t];
          }
          var r = new Date().toLocaleString() + ": ",
            o = "";
          e.forEach(function (e) {
            o += "object" == _typeof(e) ? JSON.stringify(e) + " " : e + " ";
          }), this._cacheLogCall(r + o);
        }, e.prototype._cacheLogCall = function (e) {
          var t = k(e),
            r = this.logBytes + t,
            o = this.config.maxCache;
          if (!(t >= o)) {
            if (r < o) this.logBytes += t;else for (var n = r - o, i = 0; i < n;) {
              var a = this.logs.shift();
              void 0 !== a && (i += k(a));
            }
            this.logs.push(e);
          }
        }, e.prototype._getPersistedLevel = function () {
          var e;
          if ("undefined" == typeof window) return 5;
          if ("undefined" === (e = window && window.localStorage && window.localStorage[this.storageLogLevelKey])) {
            var t = window.document.cookie,
              r = t.indexOf(encodeURIComponent(this.storageLogLevelKey));
            -1 !== r && (e = /^([^;]+)/.exec(t.slice(r))[1]);
          }
          return e || 5;
        }, e.prototype._persistLevel = function (e) {
          var t = this.logMethods[e] || "SILENT";
          "undefined" != typeof window && (window.localStorage && (window.localStorage[this.storageLogLevelKey] = t), this.useCookiePersist && (window.document.cookie = encodeURIComponent(this.storageLogLevelKey) + "=" + t + ";"));
        }, e.prototype.replaceLoggingMethods = function (e, t) {
          for (var r = 0; r < this.logMethods.length; r++) {
            var o = this.logMethods[r];
            this[o] = r < e ? U : this.methodFactory(o, e, t);
          }
          this.log = this.debug;
        }, e.prototype.defaultMethodFactory = function (e, t, r) {
          return this.realMethod(e) || this.enableLoggingWhenConsoleArrives.apply(this, [e, t, r]);
        }, e.prototype.realMethod = function (e) {
          return "debug" === e && (e = "log"), "undefined" != typeof console && ("trace" === e && b ? N : void 0 !== console[e] ? this._bindMethod(console, e, this.config.useCache) : void 0 !== console.log ? this._bindMethod(console, "log", this.config.useCache) : U);
        }, e.prototype.enableLoggingWhenConsoleArrives = function (e, t, r) {
          return function () {
            "undefined" != typeof console && (this.replaceLoggingMethods.call(this, t, r), this[e].apply(this, arguments));
          }.bind(this);
        }, e;
      }();
      function k(e) {
        for (var t = e.length, r = 0; r < e.length; r++) {
          e.charCodeAt(r) > 255 && t++;
        }
        return t;
      }
      var L = new P();
      L.getLogger = function (e) {
        if ("string" != typeof e || "" === e) throw new TypeError("You must supply a name when creating a logger.");
        return this;
      };
      var D = "undefined" != typeof window ? window.log : void 0;
      L.noConflict = function () {
        return "undefined" != typeof window && window.log === L && (window.log = D), L;
      }, L.getLoggers = function () {
        return w;
      };
      var G = L,
        _x = function x() {
          return _x = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _x.apply(this, arguments);
        },
        B = function B() {};
      function j(e, t) {
        var r,
          o = this;
        return V().platform === q.WEB ? new Promise(function (t, o) {
          var n = e.dataType || "text",
            i = e.success || B,
            a = e.error || B,
            s = new XMLHttpRequest();
          s.ontimeout = function () {
            o({
              type: d.REQUEST_TIMEOUT,
              message: "Request Timeout",
              errorType: "timeout_error",
              xhr: s
            });
          }, s.onerror = function () {
            o({
              type: d.REQUEST_UNKNOWN,
              message: "Request Unknow Error",
              errorType: "onerror",
              xhr: s
            });
          }, s.onabort = function () {
            o({
              type: d.REQUEST_ABORT,
              message: "Request Abort",
              errorType: "onabort",
              xhr: s
            });
          }, s.onreadystatechange = function () {
            if (4 === s.readyState) {
              var e = new Date().getTime() - r,
                c = s.status || 0,
                u = {
                  elapse: e,
                  httpCode: c
                };
              if (200 === c) {
                $.ajaxUnconventionalErrorTimes = 0;
                try {
                  switch (n) {
                    case "text":
                      return i(s.responseText), void t(s.responseText);
                    case "json":
                      var l = JSON.parse(s.responseText);
                      return l.extraInfo = u, i(l), void t(l);
                    case "xml":
                      return s.responseXML && s.responseXML.documentElement ? (i(s.responseXML.documentElement), void t(s.responseXML.documentElement)) : (a({
                        type: d.WEBIM_CONNCTION_AJAX_ERROR,
                        data: s.responseText,
                        message: "XHR.responseXML is null or XHR.responseXML.documentElement is null"
                      }), void o({
                        type: d.WEBIM_CONNCTION_AJAX_ERROR,
                        data: s.responseText,
                        message: "XHR.responseXML is null or XHR.responseXML.documentElement is null"
                      }));
                    default:
                      a({
                        type: d.WEBIM_CONNCTION_AJAX_ERROR,
                        data: s.responseText,
                        message: "Invalid dataType"
                      }), o({
                        type: d.WEBIM_CONNCTION_AJAX_ERROR,
                        data: s.responseText,
                        message: "Invalid dataType"
                      });
                  }
                  return t(s.response || s.responseText), void i(s.response || s.responseText, s);
                } catch (e) {
                  o(e);
                }
                return;
              }
              [400, 401, 403, 404, 429, 500, 503].includes(c) || (G.debug("rest api request fail status:", c), $.ajaxUnconventionalErrorTimes++), O(s, o, a, e);
            }
            0 === s.readyState && (a({
              type: d.WEBIM_CONNCTION_AJAX_ERROR,
              data: s.responseText,
              message: "Request not initialized"
            }), o({
              type: d.WEBIM_CONNCTION_AJAX_ERROR,
              data: s.responseText,
              message: "Request not initialized"
            }));
          }, e.responseType && s.responseType && (s.responseType = e.responseType), e.mimeType && s.overrideMimeType(e.mimeType);
          var c = e.type || "POST",
            u = e.data || null,
            l = "";
          if ("get" === c.toLowerCase() && u) {
            for (var p in u) {
              u.hasOwnProperty(p) && (l += p + "=" + u[p] + "&");
            }
            l = l ? l.slice(0, -1) : l, e.url += (e.url.indexOf("?") > 0 ? "&" : "?") + (l ? l + "&" : l) + "_v=" + new Date().getTime(), u = null, l = "";
          }
          r = new Date().getTime(), s.open(c, e.url);
          var h = e.headers || {};
          for (var f in h["Content-Type"] || (h["Content-Type"] = "application/json"), h) {
            h.hasOwnProperty(f) && s.setRequestHeader(f, h[f]);
          }
          s.send(u);
        }).then(function (r) {
          return o.dataReport && t && t !== E.SDK_INTERNAL && o.dataReport.geOperateFun({
            operationName: t
          })({
            isEndApi: !0,
            data: _x({
              isSuccess: 1,
              requestUrl: e.url,
              requestName: t,
              requestMethod: e.type
            }, Q(r.extraInfo))
          }), t !== E.SDK_INTERNAL && delete r.extraInfo, "Object" === H(r) ? _x(_x({}, r), {
            type: d.REQUEST_SUCCESS
          }) : {
            data: r,
            type: d.REQUEST_SUCCESS
          };
        }).catch(function (r) {
          throw o.dataReport && t && t !== E.SDK_INTERNAL && o.dataReport.geOperateFun({
            operationName: t
          })({
            isEndApi: !0,
            data: _x({
              isSuccess: 0,
              requestUrl: e.url,
              requestName: t,
              requestMethod: e.type
            }, Q(r.extraInfo))
          }), t !== E.SDK_INTERNAL && delete r.extraInfo, r;
        }) : F.call(this, e, t);
      }
      function H(e) {
        return Object.prototype.toString.call(e).slice(8, -1);
      }
      function F(e, t) {
        var r = this;
        return new Promise(function (t, r) {
          var o = e.success || B,
            n = e.error || B,
            i = e.type || "POST",
            a = e.data || null,
            s = "",
            c = new Date().getTime(),
            u = $.getEnvInfo();
          if ("get" === i.toLowerCase() && a) {
            for (var l in a) {
              a.hasOwnProperty(l) && (s += l + "=" + a[l] + "&");
            }
            s = s ? s.slice(0, -1) : s, e.url += (e.url.indexOf("?") > 0 ? "&" : "?") + (s ? s + "&" : s) + "_v=" + new Date().getTime(), a = null, s = "";
          }
          var d = {
            url: e.url,
            data: e.data,
            method: i,
            headers: {},
            success: function success(e) {
              var i,
                a,
                s,
                u,
                l,
                d = {
                  elapse: new Date().getTime() - c,
                  httpCode: Number((null === (i = e.statusCode) || void 0 === i ? void 0 : i.toString()) || (null === (a = e.status) || void 0 === a ? void 0 : a.toString())),
                  errDesc: (null === (s = null == e ? void 0 : e.data) || void 0 === s ? void 0 : s.error_description) || ""
                };
              if ("200" === (null === (u = e.statusCode) || void 0 === u ? void 0 : u.toString()) || "200" === (null === (l = e.status) || void 0 === l ? void 0 : l.toString())) {
                e.data.extraInfo = d;
                var p = e.data;
                o(p), t(p);
              } else e.extraInfo = d, n(p = e), r(p);
            },
            complete: function complete() {},
            fail: function fail(e) {
              var t = {
                elapse: new Date().getTime() - c,
                httpCode: A,
                errDesc: "request:fail"
              };
              e.extraInfo = t, e.data = {
                error: "request:fail",
                error_description: "request:fail"
              }, n(e), r(e);
            }
          };
          if ("zfb" === u.platform || "dd" === u.platform ? d.headers = e.headers : d.header = e.headers, "dd" === u.platform) return dd.httpRequest(d);
          u.global.request(d);
        }).then(function (o) {
          return r.dataReport && t && t !== E.SDK_INTERNAL && r.dataReport.geOperateFun({
            operationName: t
          })({
            isEndApi: !0,
            data: _x({
              isSuccess: 1,
              requestUrl: e.url,
              requestName: t,
              requestMethod: e.type
            }, Q(o.extraInfo))
          }), t !== E.SDK_INTERNAL && delete o.extraInfo, "Object" === H(o) ? _x(_x({}, o), {
            type: d.REQUEST_SUCCESS
          }) : {
            data: o,
            type: d.REQUEST_SUCCESS
          };
        }).catch(function (o) {
          throw r.dataReport && t && t !== E.SDK_INTERNAL && r.dataReport.geOperateFun({
            operationName: t
          })({
            isEndApi: !0,
            data: _x({
              isSuccess: 0,
              requestUrl: e.url,
              requestName: t,
              requestMethod: e.type
            }, Q(o.extraInfo))
          }), t !== E.SDK_INTERNAL && delete o.extraInfo, o;
        });
      }
      var W,
        K,
        q,
        z = (W = function W(e, t) {
          var r = V();
          if (r.platform !== q.WEB) {
            var o = r.global,
              n = function n(r) {
                r.isConnected ? e() : t();
              };
            o.offNetworkStatusChange && o.offNetworkStatusChange(n), o.onNetworkStatusChange && o.onNetworkStatusChange(n);
          } else "undefined" != typeof addEventListener && (window.addEventListener("online", e), window.addEventListener("offline", t));
        }, function () {
          for (var e = [], t = 0; t < arguments.length; t++) {
            e[t] = arguments[t];
          }
          if (!W) return K;
          K = W.apply(void 0, e), W = null;
        });
      function V() {
        return "undefined" != typeof swan && J(swan) ? {
          platform: q.BAIDU,
          global: swan
        } : "undefined" != typeof tt && J(tt) ? {
          platform: q.TT,
          global: tt
        } : "undefined" != typeof dd && J(dd) ? {
          platform: q.DD,
          global: dd
        } : "undefined" != typeof my && J(my) ? {
          platform: q.ZFB,
          global: my
        } : "undefined" != typeof wx && J(wx) ? {
          platform: q.WX,
          global: wx
        } : "undefined" != typeof uni && J(uni) ? {
          platform: q.UNI,
          global: uni
        } : "undefined" != typeof window && window.WebSocket ? {
          platform: q.WEB,
          global: window
        } : {
          platform: q.NODE,
          global: r.g || {}
        };
      }
      function J(e) {
        for (var t = ["canIUse", "getSystemInfo"], r = 0, o = t.length; r < o; r++) {
          if (!e[t[r]]) return !1;
        }
        return !0;
      }
      function X(e, t) {
        var r,
          o,
          n,
          i,
          a = this,
          s = new Date().getTime(),
          c = e.accessToken;
        if (c) {
          var u = e.appKey,
            l = [],
            p = "",
            h = "";
          if (u && (p = (l = u.split("#"))[0], h = l[1]), p || h) {
            var f = e.apiUrl,
              m = e.uploadUrl || f + "/" + p + "/" + h + "/chatfiles";
            if ((null === (o = null === (r = null == e ? void 0 : e.file) || void 0 === r ? void 0 : r.data) || void 0 === o ? void 0 : o.size) <= 0) e.onFileUploadError && e.onFileUploadError({
              type: d.WEBIM_UPLOADFILE_ERROR,
              message: "fileSize must be greater than 0"
            });else {
              var g = new XMLHttpRequest();
              g.upload && (null === (i = (n = g.upload).addEventListener) || void 0 === i || i.call(n, "progress", e.onFileUploadProgress || B, !1)), g.addEventListener("abort", e.onFileUploadCanceled || B, !1), g.addEventListener("error", function (e) {
                T({
                  type: d.WEBIM_UPLOADFILE_ERROR,
                  data: g
                });
              }, !1), g.addEventListener("load", function (r) {
                try {
                  var o = JSON.parse(g.responseText);
                  if (400 === g.status) return T({
                    type: d.WEBIM_UPLOADFILE_ERROR,
                    data: o
                  }), !1;
                  try {
                    !function (r) {
                      var o = new Date().getTime() - s;
                      a.dataReport && t && [E.UPLOAD_MSG_ATTACH, E.UPLOAD_CHATROOM_FILE, E.UPLOAD_GROUP_FILE].includes(t) && a.dataReport.geOperateFun({
                        operationName: t
                      })({
                        isEndApi: !0,
                        data: {
                          isSuccess: (null == r ? void 0 : r.error) ? 0 : 1,
                          requestMethod: "POST",
                          requestName: t,
                          requestElapse: o,
                          requestUrl: m,
                          code: g.status,
                          codeDesc: (null == r ? void 0 : r.error_description) || ""
                        }
                      }), e.onFileUploadComplete && e.onFileUploadComplete(r);
                    }(o);
                  } catch (r) {
                    T({
                      type: d.WEBIM_CONNCTION_CALLBACK_INNER_ERROR,
                      data: r
                    });
                  }
                } catch (r) {
                  T({
                    type: d.WEBIM_UPLOADFILE_ERROR,
                    data: g.responseText
                  });
                }
              }, !1), g.open("POST", m), g.setRequestHeader("restrict-access", "true"), g.setRequestHeader("Accept", "*/*"), g.setRequestHeader("Authorization", "Bearer " + c);
              var y = new FormData();
              y.append("file", e.file.data), e.thumbnailWidth && y.append("thumbnail-width", e.thumbnailWidth + ""), e.thumbnailHeight && y.append("thumbnail-height", e.thumbnailHeight + ""), g.send(y);
            }
          } else e.onFileUploadError && e.onFileUploadError({
            type: d.WEBIM_UPLOADFILE_ERROR,
            message: "AppKey illegal"
          });
        } else e.onFileUploadError && e.onFileUploadError({
          type: d.WEBIM_UPLOADFILE_NO_LOGIN,
          message: "AccessToken cannot be empty"
        });
        function T(r) {
          var o = new Date().getTime() - s;
          a.dataReport && t && [E.UPLOAD_MSG_ATTACH, E.UPLOAD_CHATROOM_FILE, E.UPLOAD_GROUP_FILE].includes(t) && a.dataReport.geOperateFun({
            operationName: t
          })({
            isEndApi: !0,
            data: {
              isSuccess: 0,
              requestMethod: "POST",
              requestName: t,
              requestElapse: o,
              requestUrl: m,
              code: (null == g ? void 0 : g.status) || 0,
              codeDesc: "upload file error"
            }
          }), e.onFileUploadError && e.onFileUploadError(r);
        }
      }
      function Y(e, t) {
        e.onFileDownloadComplete = e.onFileDownloadComplete || B, e.onFileDownloadError = e.onFileDownloadError || B;
        var r = new Date().getTime(),
          o = new XMLHttpRequest(),
          n = this;
        o.addEventListener("load", function (i) {
          var a = new Date().getTime() - r;
          n.dataReport && t && t === E.DOWN_GROUP_FILE && n.dataReport.geOperateFun({
            operationName: t
          })({
            isEndApi: !0,
            data: {
              isSuccess: 200 === o.status ? 1 : 0,
              requestMethod: "POST",
              requestName: t,
              requestElapse: a,
              requestUrl: null == e ? void 0 : e.url,
              code: o.status,
              codeDesc: 200 === o.status ? "" : "download file error"
            }
          }), e.onFileDownloadComplete && e.onFileDownloadComplete(o.response);
        }, !1), o.addEventListener("error", function (i) {
          var a = new Date().getTime() - r;
          n.dataReport && t && t === E.DOWN_GROUP_FILE && n.dataReport.geOperateFun({
            operationName: t
          })({
            isEndApi: !0,
            data: {
              isSuccess: 0,
              requestMethod: "POST",
              requestName: t,
              requestElapse: a,
              requestUrl: null == e ? void 0 : e.url,
              code: (null == o ? void 0 : o.status) || 0,
              codeDesc: "download file error"
            }
          }), e.onFileDownloadError && e.onFileDownloadError({
            type: d.WEBIM_DOWNLOADFILE_ERROR,
            id: e.id,
            xhr: o
          });
        }, !1);
        var i = e.method || "GET",
          a = e.responseType || "blob",
          s = e.mimeType || "text/plain; charset=x-user-defined";
        o.open(i, e.url), "undefined" != typeof Blob ? o.responseType = a : o.overrideMimeType(s);
        var c = {
            "X-Requested-With": "XMLHttpRequest",
            Accept: "application/octet-stream",
            "share-secret": e.secret,
            Authorization: "Bearer " + this.context.accessToken
          },
          u = e.headers || {};
        for (var l in u) {
          c[l] = u[l];
        }
        for (var l in c) {
          c[l] && o.setRequestHeader(l, c[l]);
        }
        o.send(null);
      }
      function Q(e) {
        void 0 === e && (e = {});
        var t = e.elapse,
          r = void 0 === t ? 0 : t,
          o = e.httpCode,
          n = void 0 === o ? 0 : o,
          i = e.errDesc;
        return {
          requestElapse: r,
          code: n,
          codeDesc: void 0 === i ? "" : i
        };
      }
      !function (e) {
        e.WEB = "web", e.WX = "wx", e.ZFB = "zfb", e.DD = "dd", e.TT = "tt", e.BAIDU = "baidu", e.QUICK_APP = "quick_app", e.UNI = "uni", e.NODE = "node";
      }(q || (q = {}));
      var $ = {
          autoIncrement: 0,
          ajaxUnconventionalErrorTimes: 0,
          ajax: j,
          getUniqueId: function getUniqueId() {
            this.autoIncrement ? this.autoIncrement++ : this.autoIncrement = 1;
            var e = new Date(),
              t = new Date(2010, 1, 1);
            return (e.getTime() - t.getTime() + this.autoIncrement).toString();
          },
          getFileUrl: function getFileUrl(e) {
            var t = {
                url: "",
                filename: "",
                filetype: "",
                data: {}
              },
              r = "string" == typeof e ? document.getElementById(e) : e;
            if (window.URL.createObjectURL) {
              if (!r.files) throw Error("this is not HTMLInputElement");
              var o = r.files;
              if (o.length > 0) {
                var n = o.item(0);
                t.data = n, t.url = window.URL.createObjectURL(n), t.filename = (null == n ? void 0 : n.name) || "";
              }
            } else {
              if ("string" != typeof e) throw Error("in IE fileInputId must be string");
              n = document.getElementById(e).value, t.url = n;
              var i = n.lastIndexOf("/"),
                a = n.lastIndexOf("\\"),
                s = Math.max(i, a);
              t.filename = s < 0 ? n : n.substring(s + 1);
            }
            var c = t.filename.lastIndexOf(".");
            return -1 !== c && (t.filetype = t.filename.substring(c + 1).toLowerCase()), t;
          },
          uploadFile: X,
          flow: function flow(e) {
            for (var t = e.length, r = t; r--;) {
              if ("function" != typeof e[r]) throw new TypeError("Expected a function");
            }
            return function () {
              for (var r = [], o = 0; o < arguments.length; o++) {
                r[o] = arguments[o];
              }
              for (var n = 0, i = t ? e[n].apply(this, r) : r[0]; ++n < t;) {
                i = e[n].call(this, i);
              }
              return i;
            };
          },
          listenNetwork: z,
          getEnvInfo: V,
          wxRequest: F,
          parseDownloadResponse: function parseDownloadResponse(e) {
            if (!window || !window.URL) throw Error("parseDownloadResponse can be used in broswer only");
            return e && e.type && "application/json" === e.type || 0 > Object.prototype.toString.call(e).indexOf("Blob") ? this.url + "?token=" : window.URL.createObjectURL(e);
          },
          download: Y,
          parseNotify: function parseNotify(e) {
            for (var t = "", r = 0; r < e.length; r++) {
              t += "%" + e[r].toString(16);
            }
            return JSON.parse(decodeURIComponent(t));
          },
          getExtraData: Q,
          Uint8ArrayToString: function Uint8ArrayToString(e) {
            for (var t = "", r = 0; r < e.length; r++) {
              t += String.fromCharCode(e[r]);
            }
            return t;
          }
        },
        Z = r(188),
        ee = r.n(Z),
        _te = function te() {
          return _te = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _te.apply(this, arguments);
        };
      function re(e) {
        var t,
          r,
          o,
          n = e.id,
          i = e.payload,
          a = e.timestamp,
          s = e.to,
          c = i.bodies && i.bodies.length > 0 ? i.bodies[0] : {},
          u = {},
          l = {},
          d = i.type ? i.type : s.indexOf("@conference.easemob.com") > -1 ? "groupChat" : "singleChat";
        switch (d = "chat" === d ? "singleChat" : d, c.type) {
          case "txt":
            var p = null === (t = null == i ? void 0 : i.meta) || void 0 === t ? void 0 : t.edit_msg;
            if (u = {
              id: n,
              type: "txt",
              chatType: d,
              msg: c.msg || "",
              to: i.to || "",
              from: i.from,
              time: a,
              ext: i.ext
            }, p) {
              var h = p.edit_time,
                f = p.operator,
                m = p.count;
              u.modifiedInfo = {
                operationTime: h,
                operatorId: f,
                operationCount: m
              };
            }
            break;
          case "img":
            u = {
              id: n,
              type: "img",
              chatType: d,
              to: i.to,
              from: i.from,
              time: a,
              ext: i.ext,
              width: (null === (r = c.size) || void 0 === r ? void 0 : r.width) || 0,
              height: (null === (o = c.size) || void 0 === o ? void 0 : o.height) || 0,
              secret: c.secret || "",
              url: (null == c ? void 0 : c.url) || "",
              file_length: c.file_length || 0,
              file: {}
            };
            break;
          case "video":
            u = {
              id: n,
              type: "video",
              chatType: d,
              from: i.from,
              to: i.to,
              url: (null == c ? void 0 : c.url) || "",
              secret: c.secret || "",
              filename: c.filename,
              length: c.length || 0,
              file: {},
              file_length: c.file_length || 0,
              filetype: i.ext.file_type || "",
              ext: i.ext,
              time: a
            };
            break;
          case "loc":
            u = {
              id: n,
              type: "loc",
              chatType: d,
              from: i.from,
              to: i.to,
              buildingName: c.buildingName || "",
              addr: c.addr,
              lat: c.lat,
              lng: c.lng,
              ext: i.ext,
              time: a
            };
            break;
          case "audio":
            u = {
              id: n,
              type: "audio",
              chatType: d,
              from: i.from,
              to: i.to,
              secret: c.secret || "",
              ext: i.ext,
              time: a,
              url: (null == c ? void 0 : c.url) || "",
              file: {},
              filename: c.filename,
              length: c.length || 0,
              file_length: c.file_length || 0,
              filetype: i.ext.file_type || ""
            };
            break;
          case "file":
            u = {
              id: n,
              type: "file",
              chatType: d,
              from: i.from,
              to: i.to,
              ext: i.ext,
              time: a,
              url: (null == c ? void 0 : c.url) || "",
              secret: c.secret || "",
              file: {},
              filename: c.filename || "",
              file_length: c.file_length || 0,
              filetype: i.ext.file_type || ""
            };
            break;
          case "cmd":
            u = {
              id: n,
              type: "cmd",
              chatType: d,
              from: i.from,
              to: i.to,
              ext: i.ext,
              time: a,
              action: c.action || ""
            };
            break;
          case "custom":
            u = {
              id: n,
              type: "custom",
              chatType: d,
              from: i.from,
              to: i.to,
              ext: i.ext,
              time: a,
              customEvent: c.customEvent || "",
              customExts: c.customExts || ""
            };
            break;
          case "combine":
            u = {
              id: n,
              type: "combine",
              chatType: d,
              msg: c.msg || "",
              to: i.to || "",
              from: i.from,
              time: a,
              ext: i.ext,
              title: c.title || "",
              summary: c.summary || "",
              url: (null == c ? void 0 : c.url) || "",
              compatibleText: c.text,
              combineLevel: c.combineLevel || 0,
              secret: c.secret || "",
              filename: c.filename || "",
              file_length: c.file_length || 0
            };
            break;
          default:
            G.error("unexpected message: ".concat(e));
        }
        if (i.msgConfig && (l.msgConfig = i.msgConfig), null == i ? void 0 : i.meta) {
          var g = i.meta;
          g.thread && (l.chatThread = {
            messageId: g.thread.msg_parent_id,
            parentId: g.thread.muc_parent_id,
            chatThreadName: g.thread.thread_name
          }), g.reaction && (l.reactions = g.reaction), g.translations && (l.translations = g.translations);
        }
        return _te(_te({}, u), l);
      }
      var oe,
        ne = function ne(e) {
          return "".concat(e.conversationType, "-").concat(e.conversationId);
        },
        ie = function ie(e) {
          var t = e.isRecallSelfMsg,
            r = e.conversation,
            o = e.recalledMsgTime,
            n = r.unReadCount,
            i = void 0 === n ? 0 : n,
            a = r.unreadCountClearTimestamp;
          return t || (void 0 === a ? 0 : a) > o ? i : i && i > 0 ? i - 1 : 0;
        },
        ae = function ae(e) {
          var t,
            r = 0;
          if (0 === e.length) return r;
          for (t = 0; t < e.length; t++) {
            r = (r << 5) - r + e.charCodeAt(t), r |= 0;
          }
          return r;
        },
        se = function () {
          function e(e) {
            var t = e.id;
            this.id = t, this.type = e.type;
          }
          return e.prototype.set = function (e) {
            this.body = {
              id: this.id,
              ackId: e.id,
              type: "read",
              to: e.to,
              from: e.from || "",
              chatType: e.chatType
            };
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              chatType: e.chatType,
              ackId: e.id,
              type: "read",
              to: e.to,
              from: e.from || "",
              ackContent: e.ackContent,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly
            };
          }, e;
        }(),
        ce = function () {
          function e(e) {
            this.id = e.id, this.type = e.type;
          }
          return e.prototype.set = function (e) {
            this.body = {
              id: this.id,
              ackId: e.ackId,
              type: "delivery",
              to: e.to,
              from: e.from || ""
            };
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              ackId: e.ackId,
              type: "delivery",
              to: e.to,
              from: e.from || "",
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly
            };
          }, e;
        }(),
        ue = function () {
          function e(e) {
            var t = e.type,
              r = e.id;
            this.id = r, this.type = t;
          }
          return e.prototype.set = function (e) {
            this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "channel",
              to: e.to,
              from: e.from || "",
              time: Date.now()
            };
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              type: "channel",
              chatType: e.chatType || "singleChat",
              to: e.to,
              from: e.from || "",
              time: Date.now(),
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly
            };
          }, e;
        }(),
        le = function () {
          function e(e) {
            var t = e.type,
              r = e.id || $.getUniqueId();
            this.id = r, this.type = t, this.value = "";
          }
          return e.prototype.set = function (e) {
            this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "txt",
              to: e.to,
              msg: e.msg,
              from: e.from,
              roomType: e.roomType,
              success: e.success,
              fail: e.fail,
              ext: e.ext,
              time: Date.now(),
              isChatThread: e.isChatThread
            }, this.value = e.msg;
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            var t, r;
            return (null === (t = e.msgConfig) || void 0 === t ? void 0 : t.languages) && Array.isArray(null === (r = e.msgConfig) || void 0 === r ? void 0 : r.languages), {
              type: "txt",
              id: $.getUniqueId(),
              msg: e.msg,
              to: e.to,
              from: e.from || "",
              chatType: e.chatType,
              ext: e.ext,
              time: Date.now(),
              msgConfig: e.msgConfig,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList
            };
          }, e;
        }(),
        de = function () {
          function e(e) {
            var t = e.type,
              r = e.id;
            this.id = r || $.getUniqueId(), this.type = t;
          }
          return e.prototype.set = function (e) {
            this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "cmd",
              to: e.to,
              action: e.action,
              from: e.from,
              roomType: e.roomType,
              success: e.success,
              fail: e.fail,
              ext: e.ext,
              time: Date.now()
            };
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              type: "cmd",
              to: e.to,
              from: e.from || "",
              chatType: e.chatType || "singleChat",
              action: e.action,
              time: Date.now(),
              ext: e.ext,
              msgConfig: e.msgConfig,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList
            };
          }, e;
        }(),
        pe = function () {
          function e(e) {
            var t = e.type,
              r = e.id || $.getUniqueId();
            this.id = r, this.type = t;
          }
          return e.prototype.set = function (e) {
            this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "custom",
              to: e.to,
              customEvent: e.customEvent,
              customExts: e.customExts,
              from: e.from,
              roomType: e.roomType,
              success: e.success,
              fail: e.fail,
              ext: e.ext,
              time: Date.now()
            };
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              chatType: e.chatType || "singleChat",
              type: "custom",
              to: e.to,
              customEvent: e.customEvent,
              customExts: e.customExts,
              from: e.from || "",
              ext: e.ext,
              time: Date.now(),
              msgConfig: e.msgConfig,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList
            };
          }, e;
        }(),
        he = function () {
          function e(e) {
            var t = e.type,
              r = e.id;
            this.id = r || $.getUniqueId(), this.type = t;
          }
          return e.prototype.set = function (e) {
            this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "loc",
              to: e.to,
              addr: e.addr,
              buildingName: e.buildingName,
              lat: e.lat,
              lng: e.lng,
              from: e.from,
              roomType: e.roomType,
              success: e.success,
              fail: e.fail,
              ext: e.ext,
              time: Date.now()
            };
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              chatType: e.chatType || "singleChat",
              type: "loc",
              to: e.to,
              addr: e.addr,
              buildingName: e.buildingName,
              lat: e.lat,
              lng: e.lng,
              from: e.from || "",
              ext: e.ext,
              time: Date.now(),
              msgConfig: e.msgConfig,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList
            };
          }, e;
        }(),
        fe = function () {
          function e(e) {
            var t = e.type,
              r = e.id || $.getUniqueId();
            this.id = r, this.type = t;
          }
          return e.prototype.set = function (e) {
            e.file = e.file || e.fileInputId && $.getFileUrl(e.fileInputId), this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "img",
              file: e.file,
              width: e.width,
              height: e.height,
              to: e.to,
              from: e.from || "",
              roomType: e.roomType,
              success: e.success,
              fail: e.fail,
              ext: e.ext,
              time: Date.now(),
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete,
              onFileUploadProgress: e.onFileUploadProgress,
              body: e.body,
              isChatThread: e.isChatThread
            };
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              chatType: e.chatType,
              type: "img",
              url: e.url,
              width: e.width,
              height: e.height,
              file: e.file,
              to: e.to,
              from: e.from || "",
              ext: e.ext,
              time: Date.now(),
              msgConfig: e.msgConfig,
              file_length: e.file_length,
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete,
              onFileUploadProgress: e.onFileUploadProgress,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList,
              thumbnailWidth: e.thumbnailWidth,
              thumbnailHeight: e.thumbnailHeight
            };
          }, e;
        }(),
        me = function () {
          function e(e) {
            var t = e.type,
              r = e.id || $.getUniqueId();
            this.id = r, this.type = t;
          }
          return e.prototype.set = function (e) {
            e.file = e.file || e.fileInputId && $.getFileUrl(e.fileInputId), this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "audio",
              file: e.file,
              filename: e.filename,
              length: e.length,
              file_length: e.file_length,
              fileInputId: e.fileInputId,
              to: e.to,
              from: e.from,
              roomType: e.roomType,
              success: e.success,
              fail: e.fail,
              ext: e.ext,
              time: Date.now(),
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete,
              onFileUploadProgress: e.onFileUploadProgress,
              body: e.body,
              isChatThread: e.isChatThread
            };
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              chatType: e.chatType,
              type: "audio",
              filename: e.filename,
              length: e.length,
              file: e.file,
              to: e.to,
              from: e.from || "",
              ext: e.ext,
              time: Date.now(),
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete,
              onFileUploadProgress: e.onFileUploadProgress,
              body: e.body,
              file_length: e.file_length,
              msgConfig: e.msgConfig,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList
            };
          }, e;
        }(),
        ge = function () {
          function e(e) {
            var t = e.type,
              r = e.id;
            this.id = r, this.type = t;
          }
          return e.prototype.set = function (e) {
            e.file = e.file || e.fileInputId && $.getFileUrl(e.fileInputId), this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "video",
              file: e.file,
              filename: e.filename,
              length: e.length,
              file_length: e.file_length,
              fileInputId: e.fileInputId,
              to: e.to,
              from: e.from,
              roomType: e.roomType,
              success: e.success,
              fail: e.fail,
              ext: e.ext,
              time: Date.now(),
              apiUrl: e.apiUrl,
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete,
              onFileUploadProgress: e.onFileUploadProgress,
              body: e.body,
              isChatThread: e.isChatThread
            };
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              chatType: e.chatType || "singleChat",
              type: "video",
              file: e.file,
              filename: e.filename,
              length: e.length,
              file_length: e.file_length,
              fileInputId: e.fileInputId,
              to: e.to,
              from: e.from || "",
              ext: e.ext,
              time: Date.now(),
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete,
              onFileUploadProgress: e.onFileUploadProgress,
              body: e.body,
              msgConfig: e.msgConfig,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList
            };
          }, e;
        }(),
        Ee = function () {
          function e(e) {
            var t = e.type,
              r = e.id;
            this.id = r, this.type = t;
          }
          return e.prototype.set = function (e) {
            e.file = e.file || e.fileInputId && $.getFileUrl(e.fileInputId), this.body = {
              id: this.id,
              chatType: e.chatType || "singleChat",
              type: "file",
              file: e.file,
              filename: e.filename,
              fileInputId: e.fileInputId,
              to: e.to,
              from: e.from,
              roomType: e.roomType,
              success: e.success,
              fail: e.fail,
              ext: e.ext,
              time: Date.now(),
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete,
              onFileUploadProgress: e.onFileUploadProgress,
              body: e.body,
              isChatThread: e.isChatThread
            };
          }, e.prototype.setChatType = function (e) {
            return !!this.body && (this.body.chatType = e, !0);
          }, e.prototype.setGroup = function (e) {
            return !!this.body && (this.body.group = e, !0);
          }, e.create = function (e) {
            return {
              id: $.getUniqueId(),
              chatType: e.chatType || "singleChat",
              type: "file",
              file: e.file,
              filename: e.filename,
              fileInputId: e.fileInputId,
              file_length: e.file_length,
              to: e.to,
              from: e.from || "",
              ext: e.ext,
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete,
              onFileUploadProgress: e.onFileUploadProgress,
              body: e.body,
              time: Date.now(),
              msgConfig: e.msgConfig,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList
            };
          }, e;
        }(),
        ye = function () {
          function e(e) {
            var t = e.type,
              r = e.id || $.getUniqueId();
            this.id = r, this.type = t, this.value = "";
          }
          return e.create = function (e) {
            return {
              type: "combine",
              id: $.getUniqueId(),
              to: e.to,
              from: e.from || "",
              chatType: e.chatType,
              ext: e.ext,
              time: Date.now(),
              msgConfig: e.msgConfig,
              isChatThread: e.isChatThread,
              priority: e.priority,
              deliverOnlineOnly: e.deliverOnlineOnly,
              receiverList: e.receiverList,
              compatibleText: e.compatibleText,
              title: e.title,
              summary: e.summary,
              messageList: e.messageList,
              onFileUploadError: e.onFileUploadError,
              onFileUploadComplete: e.onFileUploadComplete
            };
          }, e;
        }(),
        Te = function () {
          function e(t, r) {
            return this.type = t, this.id = r || $.getUniqueId(), e.createOldMsg({
              type: t,
              id: this.id
            });
          }
          return e.createOldMsg = function (e) {
            switch (e.type) {
              case "read":
                return new se({
                  type: "read",
                  id: e.id
                });
              case "delivery":
                return new ce({
                  type: "delivery",
                  id: e.id
                });
              case "channel":
                return new ue({
                  type: "channel",
                  id: e.id
                });
              case "txt":
                return new le({
                  type: "txt",
                  id: e.id
                });
              case "cmd":
                return new de({
                  type: "cmd",
                  id: e.id
                });
              case "custom":
                return new pe({
                  type: "custom",
                  id: e.id
                });
              case "loc":
                return new he({
                  type: "loc",
                  id: e.id
                });
              case "img":
                return new fe({
                  type: "img",
                  id: e.id
                });
              case "audio":
                return new me({
                  type: "audio",
                  id: e.id
                });
              case "video":
                return new ge({
                  type: "video",
                  id: e.id
                });
              case "file":
                return new Ee({
                  type: "file",
                  id: e.id
                });
            }
          }, e.create = function (e) {
            return "txt" !== (t = e).type || "version" in t ? function (e) {
              return "img" === e.type && !("version" in e);
            }(e) ? fe.create(e) : function (e) {
              return "cmd" === e.type && !("version" in e);
            }(e) ? de.create(e) : function (e) {
              return "file" === e.type && !("version" in e);
            }(e) ? Ee.create(e) : function (e) {
              return "audio" === e.type && !("version" in e);
            }(e) ? me.create(e) : function (e) {
              return "video" === e.type && !("version" in e);
            }(e) ? ge.create(e) : function (e) {
              return "custom" === e.type && !("version" in e);
            }(e) ? pe.create(e) : function (e) {
              return "loc" === e.type && !("version" in e);
            }(e) ? he.create(e) : function (e) {
              return "channel" === e.type && !("version" in e);
            }(e) ? ue.create(e) : function (e) {
              return "delivery" === e.type && !("version" in e);
            }(e) ? ce.create(e) : function (e) {
              return "read" === e.type && !("version" in e);
            }(e) ? se.create(e) : function (e) {
              return "combine" === e.type && !("version" in e);
            }(e) ? ye.create(e) : {} : le.create(e);
            var t;
          }, e.prototype.set = function (e) {}, e;
        }();
      !function (e) {
        e[e.CREATE = 0] = "CREATE", e[e.FAIL = 1] = "FAIL", e[e.INPROGRESS = 2] = "INPROGRESS", e[e.SUCCESS = 3] = "SUCCESS";
      }(oe || (oe = {}));
      var _ve = function ve() {
          return _ve = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _ve.apply(this, arguments);
        },
        _e = function _e(e, t, r, o) {
          return new (r || (r = Promise))(function (n, i) {
            function a(e) {
              try {
                c(o.next(e));
              } catch (e) {
                i(e);
              }
            }
            function s(e) {
              try {
                c(o.throw(e));
              } catch (e) {
                i(e);
              }
            }
            function c(e) {
              var t;
              e.done ? n(e.value) : (t = e.value, t instanceof r ? t : new r(function (e) {
                e(t);
              })).then(a, s);
            }
            c((o = o.apply(e, t || [])).next());
          });
        },
        Re = function Re(e, t) {
          var r,
            o,
            n,
            i,
            a = {
              label: 0,
              sent: function sent() {
                if (1 & n[0]) throw n[1];
                return n[1];
              },
              trys: [],
              ops: []
            };
          return i = {
            next: s(0),
            throw: s(1),
            return: s(2)
          }, "function" == typeof Symbol && (i[Symbol.iterator] = function () {
            return this;
          }), i;
          function s(i) {
            return function (s) {
              return function (i) {
                if (r) throw new TypeError("Generator is already executing.");
                for (; a;) {
                  try {
                    if (r = 1, o && (n = 2 & i[0] ? o.return : i[0] ? o.throw || ((n = o.return) && n.call(o), 0) : o.next) && !(n = n.call(o, i[1])).done) return n;
                    switch (o = 0, n && (i = [2 & i[0], n.value]), i[0]) {
                      case 0:
                      case 1:
                        n = i;
                        break;
                      case 4:
                        return a.label++, {
                          value: i[1],
                          done: !1
                        };
                      case 5:
                        a.label++, o = i[1], i = [0];
                        continue;
                      case 7:
                        i = a.ops.pop(), a.trys.pop();
                        continue;
                      default:
                        if (!((n = (n = a.trys).length > 0 && n[n.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
                          a = 0;
                          continue;
                        }
                        if (3 === i[0] && (!n || i[1] > n[0] && i[1] < n[3])) {
                          a.label = i[1];
                          break;
                        }
                        if (6 === i[0] && a.label < n[1]) {
                          a.label = n[1], n = i;
                          break;
                        }
                        if (n && a.label < n[2]) {
                          a.label = n[2], a.ops.push(i);
                          break;
                        }
                        n[2] && a.ops.pop(), a.trys.pop();
                        continue;
                    }
                    i = t.call(e, a);
                  } catch (e) {
                    i = [6, e], o = 0;
                  } finally {
                    r = n = 0;
                  }
                }
                if (5 & i[0]) throw i[1];
                return {
                  value: i[0] ? i[1] : void 0,
                  done: !0
                };
              }([i, s]);
            };
          }
        },
        Oe = {
          0: "TEXT",
          1: "IMAGE",
          2: "VIDEO",
          3: "LOCATION",
          4: "VOICE",
          5: "FILE",
          6: "COMMAND",
          7: "CUSTOM",
          8: "COMBINE"
        };
      function Ie(e) {
        for (var t = {}, r = 0; r < e.length; r++) {
          if (8 === e[r].type) t[e[r].key] = JSON.parse(e[r].stringValue);else if (7 === e[r].type) t[e[r].key] = e[r].stringValue;else if (6 === e[r].type) t[e[r].key] = e[r].doubleValue;else if (5 === e[r].type) t[e[r].key] = e[r].floatValue;else if (1 === e[r].type) {
            var o = e[r].varintValue,
              n = new (f())(o.low, o.high, o.unsigned).toString();
            t[e[r].key] = 0 !== Number(n);
          } else 2 !== e[r].type && 3 !== e[r].type && 4 !== e[r].type || (o = e[r].varintValue, n = new (f())(o.low, o.high, o.unsigned).toString(), t[e[r].key] = Number(n));
        }
        return t;
      }
      function Se(e) {
        var t, r, o, n, i, a, s, c, u, l, d, p, h, f, m, g, E, y, T, v, _, R, O, I, S, C, A;
        return _e(this, void 0, void 0, function () {
          var N, M, b, U, w, P, k, L, D, x, B, j, H, F, W, K, q, z, V, J, X, Y, Q, $, Z, ee, te, ne, ie, ae, se, ce, ue, le, de, pe, he, fe, me, ge, Ee, ye, Te, ve, _e, Se, Ce, Ae, Ne, Me;
          return Re(this, function (Re) {
            switch (Re.label) {
              case 0:
                switch (N = e.status, M = e.thirdMessage, b = e.msgBody, U = e.msgId, w = e.type, P = e.from, k = e.to, L = e.time, D = e.onlineState, x = e.chatType, B = e.ignoreCallback, j = e.priority, H = e.format, F = e.broadcast, W = void 0 !== F && F, K = {}, q = {}, z = N.errorCode > 0, V = N.errorCode, J = N.reason, X = {}, Y = [], Q = [], $ = {}, Z = "", ee = 0, te = null, ne = null, M.ext && (X = Ie(M.ext)), M.meta && "string" == typeof M.meta && ((ae = JSON.parse(M.meta)).reaction && (Y = ae.reaction).forEach(function (e) {
                  e.isAddedBySelf = e.state, delete e.state;
                }), ae.translations && (Q = ae.translations), ae.edit_msg && (se = ae.edit_msg, ce = se.count, ue = se.operator, le = se.edit_time, de = se.sender, pe = se.send_time, $ = {
                  operationTime: le,
                  operatorId: ue,
                  operationCount: ce
                }, Z = de, ee = pe), ae.thread && "{}" !== JSON.stringify(ae.thread) && (te = {
                  messageId: ae.thread.msg_parent_id,
                  parentId: ae.thread.muc_parent_id,
                  chatThreadName: ae.thread.thread_name
                }), ae.thread_overview && "{}" !== JSON.stringify(ae.thread_overview) && (ne = {
                  id: ae.thread_overview.id,
                  parentId: ae.thread_overview.muc_parent_id,
                  name: ae.thread_overview.name,
                  lastMessage: ae.thread_overview.last_message && "{}" !== JSON.stringify(ae.thread_overview.last_message) ? re(ae.thread_overview.last_message) : null,
                  createTimestamp: ae.thread_overview.create_timestamp,
                  updateTimestamp: ae.thread_overview.update_timestamp,
                  messageCount: ae.thread_overview.message_count || 0
                })), b.type) {
                  case 0:
                    return [3, 1];
                  case 1:
                    return [3, 7];
                  case 2:
                    return [3, 10];
                  case 3:
                    return [3, 13];
                  case 4:
                    return [3, 16];
                  case 5:
                    return [3, 19];
                  case 6:
                    return [3, 22];
                  case 7:
                    return [3, 23];
                  case 8:
                    return [3, 26];
                }
                return [3, 27];
              case 1:
                return Object.prototype.hasOwnProperty.call(b, "subType") && 0 === b.subType ? (ie = (b.remotePath && this.apiUrl + b.remotePath.substr(b.remotePath.indexOf("/", 9))) + "?em-redirect=true", b.secretKey && (ie = "".concat(ie, "&share-secret=").concat(b.secretKey)), he = {
                  id: U,
                  type: "combine",
                  chatType: x,
                  to: k,
                  from: P,
                  ext: X,
                  time: Number(L),
                  onlineState: D,
                  title: b.title || "",
                  summary: b.summary || "",
                  url: ie || "",
                  secret: b.secretKey || "",
                  file_length: b.fileLength || 0,
                  filename: b.displayName || "",
                  compatibleText: b.text,
                  combineLevel: b.combineLevel || 0
                }, K.msgConfig && (he.msgConfig = K.msgConfig), Y.length > 0 && (he.reactions = Y), te && (he.chatThread = te), ne && (he.chatThreadOverview = ne), "chatRoom" === x && (he.priority = j, he.broadcast = W), q = he, B ? [3, 3] : [4, null === (r = null === (t = this._localCache) || void 0 === t ? void 0 : t.getInstance()) || void 0 === r ? void 0 : r.storeMessage(he, oe.SUCCESS)]) : [3, 4];
              case 2:
                Re.sent(), null === (o = this.eventHandler) || void 0 === o || o.dispatch("onCombineMessage", he), Re.label = 3;
              case 3:
                return [3, 28];
              case 4:
                return !(K = {
                  id: U,
                  type: w,
                  contentsType: Oe[b.type],
                  from: P,
                  to: k,
                  data: b.text,
                  ext: X,
                  sourceMsg: b.text,
                  time: L,
                  msgConfig: M.msgConfig,
                  onlineState: D
                }).msgConfig && delete M.msgConfig, K.error = z, K.errorText = J, K.errorCode = V, !B && this.onTextMessage && this.onTextMessage(K), fe = {
                  id: U,
                  type: "txt",
                  chatType: x,
                  msg: b.text,
                  to: k,
                  from: P,
                  ext: X,
                  time: Number(L),
                  onlineState: D
                }, K.msgConfig && (fe.msgConfig = K.msgConfig), Y.length > 0 && (fe.reactions = Y), te && (fe.chatThread = te), ne && (fe.chatThreadOverview = ne), Q.length > 0 && (fe.translations = Q), $.operationCount > 0 && (fe.modifiedInfo = $, M.type === Be.EDIT && (fe.from = Z, fe.time = ee)), "chatRoom" === x && (fe.priority = j, fe.broadcast = W), q = fe, B ? [3, 6] : [4, null === (i = null === (n = this._localCache) || void 0 === n ? void 0 : n.getInstance()) || void 0 === i ? void 0 : i.storeMessage(fe, oe.SUCCESS)];
              case 5:
                Re.sent(), null === (a = this.eventHandler) || void 0 === a || a.dispatch("onTextMessage", fe), Re.label = 6;
              case 6:
                return [3, 28];
              case 7:
                return me = (null === (s = null == b ? void 0 : b.size) || void 0 === s ? void 0 : s.width) || 0, ge = (null === (c = null == b ? void 0 : b.size) || void 0 === c ? void 0 : c.height) || 0, ie = this.useOwnUploadFun ? b.remotePath : (b.remotePath && this.apiUrl + b.remotePath.substr(b.remotePath.indexOf("/", 9))) + "?em-redirect=true", b.secretKey && !this.useOwnUploadFun && (ie = "".concat(ie, "&share-secret=").concat(b.secretKey)), !(K = {
                  id: U,
                  type: w,
                  contentsType: Oe[b.type],
                  from: P,
                  to: k,
                  url: ie,
                  secret: b.secretKey,
                  filename: b.displayName,
                  thumb: this.useOwnUploadFun ? "" : "".concat(ie, "&thumbnail=true"),
                  thumb_secret: b.secretKey,
                  file_length: b.fileLength || "",
                  width: me,
                  height: ge,
                  filetype: b.filetype || "",
                  accessToken: this.token,
                  ext: X,
                  time: L,
                  msgConfig: M.msgConfig,
                  onlineState: D
                }).delay && delete K.delay, !K.msgConfig && delete M.msgConfig, K.error = z, K.errorText = J, K.errorCode = V, !B && this.onPictureMessage && this.onPictureMessage(K), Ee = {
                  id: U,
                  type: "img",
                  chatType: x,
                  from: P,
                  to: k,
                  url: ie || "",
                  width: me,
                  height: ge,
                  secret: b.secretKey || "",
                  thumb: this.useOwnUploadFun ? "" : "".concat(ie, "&thumbnail=true"),
                  thumb_secret: b.secretKey,
                  file_length: b.fileLength || 0,
                  ext: X,
                  time: Number(L),
                  onlineState: D
                }, K.msgConfig && (Ee.msgConfig = K.msgConfig), Y.length > 0 && (Ee.reactions = Y), te && (Ee.chatThread = te), ne && (Ee.chatThreadOverview = ne), "chatRoom" === x && (Ee.priority = j, Ee.broadcast = W), q = Ee, B ? [3, 9] : [4, null === (l = null === (u = this._localCache) || void 0 === u ? void 0 : u.getInstance()) || void 0 === l ? void 0 : l.storeMessage(Ee, oe.SUCCESS)];
              case 8:
                Re.sent(), null === (d = this.eventHandler) || void 0 === d || d.dispatch("onImageMessage", Ee), Re.label = 9;
              case 9:
                return [3, 28];
              case 10:
                return ie = this.useOwnUploadFun ? b.remotePath : (b.remotePath && this.apiUrl + b.remotePath.substr(b.remotePath.indexOf("/", 9))) + "?em-redirect=true", b.secretKey && !this.useOwnUploadFun && (ie = "".concat(ie, "&share-secret=").concat(b.secretKey)), !(K = {
                  id: U,
                  type: w,
                  contentsType: Oe[b.type],
                  from: P,
                  to: k,
                  url: ie,
                  secret: b.secretKey,
                  filename: b.displayName,
                  length: b.duration || "",
                  file_length: b.fileLength || "",
                  filetype: b.filetype || "",
                  accessToken: this.token || "",
                  ext: X,
                  time: L,
                  msgConfig: M.msgConfig,
                  onlineState: D
                }).delay && delete K.delay, !K.msgConfig && delete M.msgConfig, K.error = z, K.errorText = J, K.errorCode = V, !B && this.onVideoMessage && this.onVideoMessage(K), ye = {
                  id: U,
                  type: "video",
                  chatType: x,
                  from: P,
                  to: k,
                  url: ie,
                  secret: b.secretKey,
                  filename: b.displayName,
                  length: b.duration || 0,
                  file: {},
                  file_length: b.fileLength || 0,
                  filetype: b.filetype || "",
                  accessToken: this.token || "",
                  ext: X,
                  time: Number(L),
                  onlineState: D
                }, K.msgConfig && (ye.msgConfig = K.msgConfig), Y.length > 0 && (ye.reactions = Y), te && (ye.chatThread = te), ne && (ye.chatThreadOverview = ne), "chatRoom" === x && (ye.priority = j, ye.broadcast = W), q = ye, B ? [3, 12] : [4, null === (h = null === (p = this._localCache) || void 0 === p ? void 0 : p.getInstance()) || void 0 === h ? void 0 : h.storeMessage(ye, oe.SUCCESS)];
              case 11:
                Re.sent(), null === (f = this.eventHandler) || void 0 === f || f.dispatch("onVideoMessage", ye), Re.label = 12;
              case 12:
                return [3, 28];
              case 13:
                return !(K = {
                  id: U,
                  type: w,
                  contentsType: Oe[b.type],
                  from: P,
                  to: k,
                  addr: b.address,
                  buildingName: b.buildingName,
                  lat: b.latitude,
                  lng: b.longitude,
                  ext: X,
                  time: L,
                  msgConfig: M.msgConfig,
                  onlineState: D
                }).delay && delete K.delay, !K.msgConfig && delete M.msgConfig, K.error = z, K.errorText = J, K.errorCode = V, !B && this.onLocationMessage && this.onLocationMessage(K), Te = {
                  id: U,
                  type: "loc",
                  chatType: x,
                  from: P,
                  to: k,
                  buildingName: b.buildingName,
                  addr: b.address,
                  lat: b.latitude,
                  lng: b.longitude,
                  ext: X,
                  time: Number(L),
                  onlineState: D
                }, K.msgConfig && (Te.msgConfig = K.msgConfig), Y.length > 0 && (Te.reactions = Y), te && (Te.chatThread = te), ne && (Te.chatThreadOverview = ne), "chatRoom" === x && (Te.priority = j, Te.broadcast = W), q = Te, B ? [3, 15] : [4, null === (g = null === (m = this._localCache) || void 0 === m ? void 0 : m.getInstance()) || void 0 === g ? void 0 : g.storeMessage(Te, oe.SUCCESS)];
              case 14:
                Re.sent(), null === (E = this.eventHandler) || void 0 === E || E.dispatch("onLocationMessage", Te), Re.label = 15;
              case 15:
                return [3, 28];
              case 16:
                return ie = this.useOwnUploadFun ? b.remotePath : (b.remotePath && this.apiUrl + b.remotePath.substr(b.remotePath.indexOf("/", 9))) + "?em-redirect=true", b.secretKey && !this.useOwnUploadFun && (ie = "".concat(ie, "&share-secret=").concat(b.secretKey)), !(K = {
                  id: U,
                  type: w,
                  contentsType: Oe[b.type],
                  from: P,
                  to: k,
                  url: ie,
                  secret: b.secretKey,
                  filename: b.displayName,
                  file_length: b.fileLength || "",
                  accessToken: this.token || "",
                  ext: X,
                  length: b.duration,
                  time: L,
                  msgConfig: M.msgConfig,
                  onlineState: D
                }).delay && delete K.delay, !K.msgConfig && delete M.msgConfig, K.error = z, K.errorText = J, K.errorCode = V, !B && this.onAudioMessage && this.onAudioMessage(K), ve = {
                  id: U,
                  type: "audio",
                  chatType: x,
                  from: P,
                  to: k,
                  url: ie,
                  secret: b.secretKey,
                  file: {},
                  filename: b.displayName,
                  length: b.duration || 0,
                  file_length: b.fileLength || 0,
                  filetype: b.filetype || "",
                  accessToken: this.token || "",
                  ext: X,
                  time: Number(L),
                  onlineState: D
                }, K.msgConfig && (ve.msgConfig = K.msgConfig), Y.length > 0 && (ve.reactions = Y), te && (ve.chatThread = te), ne && (ve.chatThreadOverview = ne), "chatRoom" === x && (ve.priority = j, ve.broadcast = W), q = ve, B ? [3, 18] : [4, null === (T = null === (y = this._localCache) || void 0 === y ? void 0 : y.getInstance()) || void 0 === T ? void 0 : T.storeMessage(ve, oe.SUCCESS)];
              case 17:
                Re.sent(), null === (v = this.eventHandler) || void 0 === v || v.dispatch("onAudioMessage", ve), Re.label = 18;
              case 18:
                return [3, 28];
              case 19:
                return ie = this.useOwnUploadFun ? b.remotePath : (b.remotePath && this.apiUrl + b.remotePath.substr(b.remotePath.indexOf("/", 9))) + "?em-redirect=true", b.secretKey && !this.useOwnUploadFun && (ie = "".concat(ie, "&share-secret=").concat(b.secretKey)), !(K = {
                  id: U,
                  type: w,
                  contentsType: Oe[b.type],
                  from: P,
                  to: k,
                  url: ie,
                  secret: b.secretKey,
                  filename: b.displayName,
                  file_length: b.fileLength,
                  accessToken: this.token || "",
                  ext: X,
                  time: L,
                  msgConfig: M.msgConfig,
                  onlineState: D
                }).delay && delete K.delay, !K.msgConfig && delete M.msgConfig, K.error = z, K.errorText = J, K.errorCode = V, !B && this.onFileMessage && this.onFileMessage(K), _e = {
                  id: U,
                  type: "file",
                  chatType: x,
                  from: P,
                  to: k,
                  url: ie,
                  secret: b.secretKey,
                  file: {},
                  filename: b.displayName,
                  length: b.duration || 0,
                  file_length: b.fileLength || 0,
                  filetype: b.filetype || "",
                  accessToken: this.token || "",
                  ext: X,
                  time: Number(L),
                  onlineState: D
                }, K.msgConfig && (_e.msgConfig = K.msgConfig), Y.length > 0 && (_e.reactions = Y), te && (_e.chatThread = te), ne && (_e.chatThreadOverview = ne), "chatRoom" === x && (_e.priority = j, _e.broadcast = W), q = _e, B ? [3, 21] : [4, null === (R = null === (_ = this._localCache) || void 0 === _ ? void 0 : _.getInstance()) || void 0 === R ? void 0 : R.storeMessage(_e, oe.SUCCESS)];
              case 20:
                Re.sent(), null === (O = this.eventHandler) || void 0 === O || O.dispatch("onFileMessage", _e), Re.label = 21;
              case 21:
                return [3, 28];
              case 22:
                return !(K = {
                  id: U,
                  type: w,
                  contentsType: Oe[b.type],
                  from: P,
                  to: k,
                  action: b.action,
                  ext: X,
                  time: L,
                  msgConfig: M.msgConfig,
                  onlineState: D
                }).msgConfig && delete M.msgConfig, K.error = z, K.errorText = J, K.errorCode = V, !B && this.onCmdMessage && this.onCmdMessage(K), Se = {
                  id: U,
                  type: "cmd",
                  chatType: x,
                  from: P,
                  to: k,
                  action: b.action,
                  ext: X,
                  time: Number(L),
                  onlineState: D
                }, K.msgConfig && (Se.msgConfig = K.msgConfig), Y.length > 0 && (Se.reactions = Y), te && (Se.chatThread = te), ne && (Se.chatThreadOverview = ne), "chatRoom" === x && (Se.priority = j, Se.broadcast = W), q = Se, B || null === (I = this.eventHandler) || void 0 === I || I.dispatch("onCmdMessage", Se), [3, 28];
              case 23:
                return Ce = {}, Ae = {}, M.contents[0].customExts && (Ce = Ie(M.contents[0].customExts)), M.contents[0].params && (Ae = Ie(M.contents[0].params)), K = {
                  id: U,
                  type: w,
                  contentsType: Oe[b.type],
                  from: P,
                  to: k,
                  customEvent: b.customEvent,
                  params: Ae,
                  customExts: Ce,
                  ext: X,
                  time: L,
                  onlineState: D
                }, !B && this.onCustomMessage && this.onCustomMessage(K), Ne = {
                  id: U,
                  type: "custom",
                  chatType: x,
                  from: P,
                  to: k,
                  customEvent: b.customEvent,
                  params: Ae,
                  customExts: Ce,
                  ext: X,
                  time: Number(L),
                  onlineState: D
                }, K.msgConfig && (Ne.msgConfig = K.msgConfig), Y.length > 0 && (Ne.reactions = Y), te && (Ne.chatThread = te), ne && (Ne.chatThreadOverview = ne), "chatRoom" === x && (Ne.priority = j, Ne.broadcast = W), q = Ne, B ? [3, 25] : [4, null === (C = null === (S = this._localCache) || void 0 === S ? void 0 : S.getInstance()) || void 0 === C ? void 0 : C.storeMessage(Ne, oe.SUCCESS)];
              case 24:
                Re.sent(), null === (A = this.eventHandler) || void 0 === A || A.dispatch("onCustomMessage", Ne), Re.label = 25;
              case 25:
                return [3, 28];
              case 26:
                return ie = (b.remotePath && this.apiUrl + b.remotePath.substr(b.remotePath.indexOf("/", 9))) + "?em-redirect=true", b.secretKey && (ie = "".concat(ie, "&share-secret=").concat(b.secretKey)), Me = {
                  id: U,
                  type: "combine",
                  chatType: x,
                  to: k,
                  from: P,
                  ext: X,
                  time: Number(L),
                  onlineState: D,
                  title: b.title || "",
                  summary: b.summary || "",
                  url: ie || "",
                  secret: b.secretKey || "",
                  file_length: b.fileLength || 0,
                  filename: b.displayName || "",
                  compatibleText: b.text,
                  combineLevel: b.combineLevel || 0
                }, K.msgConfig && (Me.msgConfig = K.msgConfig), Y.length > 0 && (Me.reactions = Y), te && (Me.chatThread = te), ne && (Me.chatThreadOverview = ne), "chatRoom" === x && (Me.priority = j, Me.broadcast = W), q = Me, !B && this.eventHandler && this.eventHandler.dispatch("onCombineMessage", Me), [3, 28];
              case 27:
                return G.error("Unknow message type, message:", b), [3, 28];
              case 28:
                return H ? [2, q] : [2, K];
            }
          });
        });
      }
      function Ce(e, t, r) {
        if (this.delivery && e !== t) {
          var o = this.getUniqueId(),
            n = new Te("delivery", o);
          n.set({
            ackId: r,
            to: e
          }), G.debug("send delivery ack"), this.send(n.body);
        }
      }
      var Ae = function Ae(e, t, r, o) {
          var n, i, a, s, c, u, l, d, p, h, m, g, E, y, T, v, _, R, O, I;
          return _e(this, void 0, void 0, function () {
            var S, C, A, N, M, b, U, w, P, k, L, D, x, B, j, H, F, W, K, q, z, V, J, X, Y, Q, Z, ee, te;
            return Re(this, function (re) {
              switch (re.label) {
                case 0:
                  if (S = new (f())(e.timestamp.low, e.timestamp.high, e.timestamp.unsigned).toString(), C = this.root.lookup("easemob.pb.MessageBody"), A = C.decode(e.payload), N = 1, e.meta && e.meta.length) switch ($.parseNotify(e.meta).is_online) {
                    case 0:
                      N = 0;
                      break;
                    case 1:
                      N = 1;
                      break;
                    default:
                      N = 2;
                  } else N = 3;
                  switch (M = new (f())(e.id.low, e.id.high, e.id.unsigned).toString(), b = A.ackMessageId ? new (f())(A.ackMessageId.low, A.ackMessageId.high, A.ackMessageId.unsigned).toString() : "", U = "", w = A.from && A.from.name, P = A.to && A.to.name, G.debug("thirdMessage:", A), A.type) {
                    case Be.SINGLECHAT:
                      return [3, 1];
                    case Be.GROUPCHAT:
                      return [3, 2];
                    case Be.CHATROOM:
                      return [3, 3];
                    case Be.READ_ACK:
                      return [3, 4];
                    case Be.DELIVER_ACK:
                      return [3, 5];
                    case Be.RECALL:
                      return [3, 6];
                    case Be.CHANNEL_ACK:
                      return [3, 15];
                    case Be.EDIT:
                      return [3, 16];
                  }
                  return [3, 19];
                case 1:
                  return U = "chat", "agoraToken" === this.grantType && (U = "singleChat"), this.delivery && !r && w !== this.context.userId && Ce.call(this, w, P, M), [3, 20];
                case 2:
                  return U = "groupchat", "agoraToken" === this.grantType && (U = "groupChat"), [3, 20];
                case 3:
                  return U = "chatroom", "agoraToken" === this.grantType && (U = "chatRoom"), N = 1, [3, 20];
                case 4:
                  return U = "read_ack", k = void 0, A.ext[0] && JSON.parse(A.ext[0].stringValue) ? (k = {
                    id: M,
                    type: "read",
                    from: w,
                    to: P,
                    mid: b,
                    groupReadCount: A.ext[0] && JSON.parse(A.ext[0].stringValue),
                    ackContent: A.ackContent,
                    onlineState: N
                  }, this.onReadMessage && this.onReadMessage(k), null === (n = this.eventHandler) || void 0 === n || n.dispatch("onReadMessage", k), [2]) : (k = {
                    id: M,
                    type: "read",
                    from: w,
                    to: P,
                    mid: b,
                    onlineState: N
                  }, this.onReadMessage && this.onReadMessage(k), null === (i = this.eventHandler) || void 0 === i || i.dispatch("onReadMessage", k), [2]);
                case 5:
                  return U = "deliver_ack", this.onDeliveredMessage && this.onDeliveredMessage({
                    id: M,
                    type: "delivery",
                    from: w,
                    to: P,
                    mid: b,
                    onlineState: N
                  }), L = {
                    id: M,
                    type: "delivery",
                    from: w,
                    to: P,
                    mid: b,
                    onlineState: N
                  }, null === (a = this.eventHandler) || void 0 === a || a.dispatch("onDeliveredMessage", L), [2];
                case 6:
                  return U = "recall", D = {
                    id: M,
                    from: w || "admin",
                    to: P,
                    mid: b,
                    onlineState: N
                  }, x = P === this.user ? w : P, [4, null === (c = null === (s = this._localCache) || void 0 === s ? void 0 : s.getInstance()) || void 0 === c ? void 0 : c.getMessageByServerMsgId(D.mid)];
                case 7:
                  return (B = re.sent()) ? [4, null === (l = null === (u = this._localCache) || void 0 === u ? void 0 : u.getInstance()) || void 0 === l ? void 0 : l.removeMsgByServerMsgId(D.mid)] : [3, 9];
                case 8:
                  re.sent(), re.label = 9;
                case 9:
                  return "singleChat" !== (null == B ? void 0 : B.chatType) && "groupChat" !== (null == B ? void 0 : B.chatType) ? [3, 14] : (j = (null == B ? void 0 : B.from) === this.user || "" === (null == B ? void 0 : B.from), [4, null === (p = null === (d = this._localCache) || void 0 === d ? void 0 : d.getInstance()) || void 0 === p ? void 0 : p.getConversationLastMessage(x, B.chatType)]);
                case 10:
                  return H = re.sent(), [4, null === (m = null === (h = this._localCache) || void 0 === h ? void 0 : h.getInstance()) || void 0 === m ? void 0 : m.getConversationBySessionId(ne({
                    conversationId: x,
                    conversationType: B.chatType
                  }))];
                case 11:
                  return (F = re.sent()) ? [4, null === (E = null === (g = this._localCache) || void 0 === g ? void 0 : g.getInstance()) || void 0 === E ? void 0 : E.updateLocalConversation(ne({
                    conversationId: x,
                    conversationType: B.chatType
                  }), {
                    lastMessageId: null == H ? void 0 : H.serverMsgId,
                    unReadCount: ie({
                      conversation: F,
                      isRecallSelfMsg: j,
                      recalledMsgTime: B.time
                    })
                  })] : [3, 13];
                case 12:
                  re.sent(), re.label = 13;
                case 13:
                  re.label = 14;
                case 14:
                  return this.onRecallMessage && this.onRecallMessage(D), null === (y = this.eventHandler) || void 0 === y || y.dispatch("onRecallMessage", D), [2];
                case 15:
                  return this.onChannelMessage && this.onChannelMessage({
                    id: M,
                    type: "channel",
                    chatType: "singleChat",
                    from: w,
                    to: P,
                    time: Number(S),
                    onlineState: N
                  }), W = {
                    id: M,
                    type: "channel",
                    chatType: "singleChat",
                    from: w,
                    to: P,
                    time: Number(S),
                    onlineState: N
                  }, null === (T = this.eventHandler) || void 0 === T || T.dispatch("onChannelMessage", W), [2];
                case 16:
                  return K = {
                    errorCode: 0,
                    reason: ""
                  }, [4, Se.call(this, {
                    status: K,
                    thirdMessage: A,
                    msgBody: A.contents[0],
                    msgId: M,
                    type: U,
                    from: w,
                    to: P,
                    time: S,
                    onlineState: N,
                    ignoreCallback: !0,
                    format: !0
                  })];
                case 17:
                  return q = re.sent(), z = !!e.to && -1 !== e.to.domain.indexOf("conference"), q.chatType = z ? "groupChat" : "singleChat", V = A.editMessageId && new (f())(A.editMessageId.low, A.editMessageId.high, A.editMessageId.unsigned).toString(), J = {
                    id: V,
                    type: q.type,
                    chatType: q.chatType,
                    msg: q.msg,
                    to: q.to,
                    from: q.from,
                    time: q.time,
                    modifiedInfo: q.modifiedInfo
                  }, q.translations && (J.translations = q.translations), [4, null === (_ = null === (v = this._localCache) || void 0 === v ? void 0 : v.getInstance()) || void 0 === _ ? void 0 : _.getMessageByServerMsgId(V)];
                case 18:
                  return "txt" === (null == (X = re.sent()) ? void 0 : X.type) && (null === (O = null === (R = this._localCache) || void 0 === R ? void 0 : R.getInstance()) || void 0 === O || O.putMessageToDB(_ve(_ve({}, X), {
                    msg: J.msg,
                    modifiedInfo: J.modifiedInfo,
                    translations: J.translations
                  }))), "txt" === q.type && (null === (I = this.eventHandler) || void 0 === I || I.dispatch("onModifiedMessage", J)), [2];
                case 19:
                  return G.error("unexpected message type: ".concat(A.type)), [2];
                case 20:
                  Y = "normal", Z = !1, "chat" === U.toLowerCase() || "singleChat" === U ? Q = "singleChat" : "groupchat" === U.toLowerCase() || "groupChat" === U ? Q = "groupChat" : (Q = "chatRoom", N = 1, e.ext && (ee = Ie(e.ext), Z = !!(null == ee ? void 0 : ee.is_broadcast), Y = 0 === ee.chatroom_msg_tag ? "high" : 2 === ee.chatroom_msg_tag ? "low" : "normal")), te = 0, re.label = 21;
                case 21:
                  return te < A.contents.length ? [4, Se.call(this, {
                    status: t,
                    thirdMessage: A,
                    msgBody: A.contents[te],
                    msgId: M,
                    type: U,
                    from: w,
                    to: P,
                    time: S,
                    onlineState: N,
                    chatType: Q,
                    ignoreCallback: r,
                    priority: Y,
                    format: o,
                    broadcast: Z
                  })] : [3, 24];
                case 22:
                  return [2, re.sent()];
                case 23:
                  return te++, [3, 21];
                case 24:
                  return [2];
              }
            });
          });
        },
        Ne = ["public", "members_only", "allow_user_invites", "invite_need_confirm"],
        Me = {
          name: "name",
          title: "name",
          description: "description",
          public: "public",
          members_only: "approval",
          allow_user_invites: "allowInvites",
          max_users: "maxUsers",
          invite_need_confirm: "inviteNeedConfirm",
          custom: "ext",
          last_modified: "lastModified"
        };
      function be(e, t) {
        var r,
          o,
          n,
          i,
          a,
          s,
          c = this,
          u = this.context,
          l = u.userId,
          d = u.jid,
          p = t.from.name === l && d.clientResource !== t.from.clientResource;
        return t.isThread ? (n = {
          id: t.mucId.name,
          name: t.mucName,
          operation: "",
          parentId: t.mucParentId.name,
          operator: t.from.name,
          userName: t.to.length ? t.to[0].name : ""
        }, i = {
          chatThreadId: t.mucId.name,
          chatThreadName: t.mucName,
          operation: "",
          parentId: t.mucParentId.name
        }) : (o = {
          type: "",
          owner: t.from.name,
          gid: t.mucId.name,
          from: t.from.name,
          fromJid: t.from,
          to: t.to.length ? t.to[0].name : "",
          toJid: t.to,
          chatroom: t.isChatroom,
          status: t.status
        }, a = {
          operation: "",
          id: t.mucId.name,
          from: t.from.name
        }, t.isChatroom && (null === (r = null == t ? void 0 : t.eventInfo) || void 0 === r ? void 0 : r.ext) && (s = JSON.parse(t.eventInfo.ext))), ({
          45: function _() {
            var e, r, o;
            a.operation = "memberAttributesUpdate";
            var n = JSON.parse(null === (e = null == t ? void 0 : t.eventInfo) || void 0 === e ? void 0 : e.ext) || {};
            a.attributes = n.properties || {}, a.userId = n.username || "", p ? null === (r = c.eventHandler) || void 0 === r || r.dispatch("onMultiDeviceEvent", a) : null === (o = c.eventHandler) || void 0 === o || o.dispatch("onGroupEvent", a);
          },
          44: function _() {
            var e;
            a.operation = "removeChatRoomAttributes", a.attributes = s.result.successKeys, s.result.successKeys.length > 0 && (null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomEvent", a));
          },
          43: function _() {
            var e;
            a.operation = "updateChatRoomAttributes";
            var t = {};
            s.result.successKeys.forEach(function (e) {
              t[e] = s.properties[e];
            }), a.attributes = t, s.result.successKeys.length > 0 && (null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomEvent", a));
          },
          42: function _() {},
          41: function _() {},
          40: function _() {},
          39: function _() {},
          38: function _() {
            var e;
            i.operation = "chatThreadNameUpdate", null === (e = c.eventHandler) || void 0 === e || e.dispatch("onMultiDeviceEvent", i);
          },
          37: function _() {
            var e;
            n.operation = "userRemove", null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatThreadChange", n);
          },
          36: function _() {
            var e;
            i.operation = "chatThreadLeave", null === (e = c.eventHandler) || void 0 === e || e.dispatch("onMultiDeviceEvent", i);
          },
          35: function _() {
            var e;
            i.operation = "chatThreadJoin", null === (e = c.eventHandler) || void 0 === e || e.dispatch("onMultiDeviceEvent", i);
          },
          34: function _() {
            var e;
            i.operation = "chatThreadDestroy", null === (e = c.eventHandler) || void 0 === e || e.dispatch("onMultiDeviceEvent", i);
          },
          33: function _() {
            var e;
            i.operation = "chatThreadCreate", null === (e = c.eventHandler) || void 0 === e || e.dispatch("onMultiDeviceEvent", i);
          },
          32: function _() {
            var e, r, n, i;
            o.type = t.isChatroom ? "rmChatRoomMute" : "rmGroupMute", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "unmuteAllMembers", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          31: function _() {
            var e, r, n, i;
            o.type = t.isChatroom ? "muteChatRoom" : "muteGroup", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "muteAllMembers", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          30: function _() {
            var e, r, n, i;
            o.type = t.isChatroom ? "rmUserFromChatRoomWhiteList" : "rmUserFromGroupWhiteList", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "removeAllowlistMember", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          29: function _() {
            var e, r, n, i;
            o.type = t.isChatroom ? "addUserToChatRoomWhiteList" : "addUserToGroupWhiteList", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "addUserToAllowlist", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          28: function _() {
            var e, r, n, i;
            o.type = "deleteFile", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "deleteFile", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          27: function _() {
            var e, r, n, i;
            o.type = "uploadFile", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "uploadFile", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          26: function _() {
            var e, r, n, i;
            o.type = "deleteAnnouncement", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "deleteAnnouncement", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          25: function _() {
            var e, r, n, i;
            o.type = "updateAnnouncement", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "updateAnnouncement", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          24: function _() {
            var e, r, n, i;
            o.type = "removeMute", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "unmuteMember", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          23: function _() {
            var e, r, n, i;
            o.type = "addMute", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "muteMember", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          22: function _() {
            var e, r, n, i;
            o.type = "removeAdmin", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "removeAdmin", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          21: function _() {
            var e, r, n, i;
            o.type = "addAdmin", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "setAdmin", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          20: function _() {
            var e, r, n, i;
            o.type = "changeOwner", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "changeOwner", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          19: function _() {
            var e, r, n, i;
            o.type = "direct_joined", o.groupName = t.mucName, c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "directJoined", a.name = t.mucName, t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          18: function _() {
            var e, r, n, i;
            o.type = t.isChatroom ? "leaveChatRoom" : "leaveGroup", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "memberAbsence", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          17: function _() {
            var e, r, n, i;
            o.type = t.isChatroom ? "memberJoinChatRoomSuccess" : "memberJoinPublicGroupSuccess", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "memberPresence", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          16: function _() {
            var e, r;
            o.type = "unblock", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o);
          },
          15: function _() {
            var e, r;
            o.type = "block", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o);
          },
          14: function _() {
            var e,
              r,
              n,
              i,
              s,
              u = t.isChatroom;
            if (!u) {
              var l = JSON.parse((null === (e = null == t ? void 0 : t.eventInfo) || void 0 === e ? void 0 : e.ext) || "{}", function (e, t) {
                return "last_modified" === e ? Number(t) : Ne.includes(e) ? "true" === t || !0 === t : t;
              });
              a.detail = o.detail = {}, Object.keys(l).forEach(function (e) {
                var t = Me[e];
                if (t) {
                  var r = l[e];
                  a.detail && (a.detail[t] = r), o.detail && (o.detail[t] = r);
                }
              });
            }
            o.type = "update", c.onPresence && c.onPresence(o), u ? null === (r = c.eventHandler) || void 0 === r || r.dispatch("onChatroomChange", o) : null === (n = c.eventHandler) || void 0 === n || n.dispatch("onGroupChange", o), a.operation = "updateInfo", u ? null === (i = c.eventHandler) || void 0 === i || i.dispatch("onChatroomEvent", a) : null === (s = c.eventHandler) || void 0 === s || s.dispatch("onGroupEvent", a);
          },
          13: function _() {
            var e, r, n, i;
            o.type = "allow", o.reason = t.reason, c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "unblockMember", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          12: function _() {
            var e, r;
            o.type = "ban", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o);
          },
          11: function _() {
            var e, r;
            o.type = "getBlackList", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o);
          },
          10: function _() {
            var e, r, n, i;
            o.type = "removedFromGroup", o.kicked = o.to, c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "removeMember", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          9: function _() {
            var e, r, n, i;
            o.type = "invite_decline", o.kicked = o.to, c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "rejectInvite", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          8: function _() {
            var e, r, n, i;
            o.type = "invite_accept", o.kicked = o.to, c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "acceptInvite", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          7: function _() {
            var e, r, n, i;
            o.type = "invite", o.kicked = o.to, o.groupName = t.mucName, c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "inviteToJoin", a.name = t.mucName, t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          6: function _() {
            var e, r, n, i;
            o.type = "joinPublicGroupDeclined", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "joinPublicGroupDeclined", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : (a.userId = t.to.length ? t.to[0].name : "", null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a));
          },
          5: function _() {
            var e, r, n, i;
            o.type = "joinPublicGroupSuccess", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "acceptRequest", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          4: function _() {
            var e, r, n, i;
            o.type = "joinGroupNotifications", o.reason = t.reason, c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "requestToJoin", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          3: function _() {
            var e, r;
            o.type = "leave", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o);
          },
          2: function _() {
            var e, r;
            o.type = "join", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o);
          },
          1: function _() {
            var e, r, n, i;
            o.type = "deleteGroupChat", c.onPresence && c.onPresence(o), t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomChange", o) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupChange", o), a.operation = "destroy", t.isChatroom ? null === (n = c.eventHandler) || void 0 === n || n.dispatch("onChatroomEvent", a) : null === (i = c.eventHandler) || void 0 === i || i.dispatch("onGroupEvent", a);
          },
          0: function _() {
            var e, r;
            a.operation = "create", t.isChatroom ? null === (e = c.eventHandler) || void 0 === e || e.dispatch("onChatroomEvent", a) : null === (r = c.eventHandler) || void 0 === r || r.dispatch("onGroupEvent", a);
          }
        }[e] || function () {
          console.error("No match operation ".concat(e));
        })();
      }
      var Ue = function Ue(e) {
          var t = this.root.lookup("easemob.pb.MUCBody").decode(e.payload),
            r = t.operation;
          G.debug("onMucMessage", t), be.call(this, r, t);
        },
        we = {
          handleRosterMsg: function handleRosterMsg(e) {
            var t,
              r,
              o,
              n,
              i,
              a,
              s = this.root.lookup("easemob.pb.RosterBody").decode(e.payload),
              c = {
                type: "",
                to: s.to[0].name,
                from: s.from.name,
                status: s.reason
              };
            switch (s.operation) {
              case 2:
                c.type = "subscribe", this.onContactInvited && this.onContactInvited(c), null === (t = this.eventHandler) || void 0 === t || t.dispatch("onContactInvited", c);
                break;
              case 3:
                c.type = "unsubscribed", this.onContactDeleted && this.onContactDeleted(c), null === (r = this.eventHandler) || void 0 === r || r.dispatch("onContactDeleted", c);
                break;
              case 4:
                c.type = "subscribed", this.onContactAdded && this.onContactAdded(c), null === (o = this.eventHandler) || void 0 === o || o.dispatch("onContactAdded", c);
                break;
              case 5:
                c.type = "unsubscribed", this.onContactRefuse && this.onContactRefuse(c), null === (n = this.eventHandler) || void 0 === n || n.dispatch("onContactRefuse", c);
                break;
              case 6:
              case 7:
                break;
              case 8:
                c.type = "subscribed", this.onContactAgreed && this.onContactAgreed(c), null === (i = this.eventHandler) || void 0 === i || i.dispatch("onContactAgreed", c);
                break;
              case 9:
                c.type = "unsubscribed", this.onContactRefuse && this.onContactRefuse(c), null === (a = this.eventHandler) || void 0 === a || a.dispatch("onContactRefuse", c);
                break;
              default:
                G.error("handleRosterMsg:", s);
            }
            this.onPresence && c.type && this.onPresence(c);
          }
        },
        Pe = function Pe(e) {
          var t,
            r,
            o,
            n,
            i,
            a,
            s = this.root.lookup("easemob.pb.StatisticsBody").decode(e.payload);
          switch (s.operation) {
            case 0:
              this.onStatisticMessage && this.onStatisticMessage(s), null === (t = this.eventHandler) || void 0 === t || t.dispatch("onStatisticMessage", s);
              break;
            case 1:
              a = m.create({
                type: d.WEBIM_CONNCTION_USER_REMOVED,
                message: "user has been removed"
              }), this.logOut = !0, this.onError && this.onError(a), null === (r = this.eventHandler) || void 0 === r || r.dispatch("onError", a);
              break;
            case 2:
              a = m.create({
                type: d.WEBIM_CONNCTION_USER_LOGIN_ANOTHER_DEVICE,
                message: "the user is already logged on another device"
              }), this.logOut = !0, this.onError && this.onError(a), null === (o = this.eventHandler) || void 0 === o || o.dispatch("onError", a);
              break;
            case 3:
              a = m.create({
                type: d.WEBIM_CONNCTION_USER_KICKED_BY_CHANGE_PASSWORD,
                message: "the user was kicked by changing password"
              }), this.logOut = !0, this.onError && this.onError(a), null === (n = this.eventHandler) || void 0 === n || n.dispatch("onError", a);
              break;
            case 4:
              a = m.create({
                type: d.WEBIM_CONNCTION_USER_KICKED_BY_OTHER_DEVICE,
                message: "the user was kicked by other device"
              }), this.logOut = !0, this.onError && this.onError(a), null === (i = this.eventHandler) || void 0 === i || i.dispatch("onError", a);
              break;
            default:
              G.error("handleStatisticsMsg:", s);
          }
        };
      function ke(e) {
        var t,
          r = [],
          o = [],
          n = e.data;
        n && n.values && n.values.forEach(function (e) {
          Object.entries(e.status).forEach(function (e) {
            o.push({
              device: e[0],
              status: Number(e[1])
            });
          }), r.push({
            userId: e.uid,
            lastTime: Number(e.last_time),
            expire: Number(e.expiry),
            ext: e.ext,
            statusDetails: o
          });
        }), this.onPresenceStatusChange && this.onPresenceStatusChange(r), null === (t = this.eventHandler) || void 0 === t || t.dispatch("onPresenceStatusChange", r);
      }
      function Le(e) {
        var t = this;
        e.data.forEach(function (e) {
          var r,
            o = {
              from: e.from,
              to: e.to,
              chatType: "chat" === e.channel_type ? "singleChat" : "groupChat",
              messageId: e.messageId,
              reactions: e.reactions,
              ts: e.ts
            };
          null === (r = t.eventHandler) || void 0 === r || r.dispatch("onReactionChange", o);
        });
      }
      function De(e) {
        var t, r, o, n;
        if (e.data) {
          var i = e.data,
            a = {
              id: i.id || "",
              name: i.name || "",
              parentId: i.muc_parent_id || "",
              messageId: i.msg_parent_id || "",
              timestamp: i.timestamp || 0,
              operator: i.from || "",
              operation: ""
            };
          switch (i.operation) {
            case "create":
              a.operation = "create", a.createTimestamp = a.timestamp, a.messageCount = 0, null === (t = this.eventHandler) || void 0 === t || t.dispatch("onChatThreadChange", a);
              break;
            case "update_msg":
              a.operation = "update", a.messageCount = i.message_count, i.last_message && "{}" !== JSON.stringify(i.last_message) ? a.lastMessage = re(i.last_message) : "{}" === JSON.stringify(i.last_message) && (a.lastMessage = {}), null === (r = this.eventHandler) || void 0 === r || r.dispatch("onChatThreadChange", a);
              break;
            case "update":
              a.operation = "update", a.messageCount = i.message_count, null === (o = this.eventHandler) || void 0 === o || o.dispatch("onChatThreadChange", a);
              break;
            case "delete":
              a.operation = "destroy", null === (n = this.eventHandler) || void 0 === n || n.dispatch("onChatThreadChange", a);
          }
        }
      }
      function Ge(e) {
        var t,
          r = e.data;
        if (r.resource !== this.clientResource) {
          var o = {
            operation: "deleteRoaming",
            conversationId: r.to,
            chatType: "chat" === r.chatType ? "singleChat" : "groupChat",
            resource: r.resource
          };
          null === (t = this.eventHandler) || void 0 === t || t.dispatch("onMultiDeviceEvent", o);
        }
      }
      function xe(e) {
        var t,
          r = e.data,
          o = {
            operation: "del" === r.op ? "deleteConversation" : "top" === r.op ? "pinnedConversation" : "unpinnedConversation",
            conversationId: r.id,
            conversationType: "chat" === r.type ? "singleChat" : "groupChat",
            timestamp: r.ts
          };
        this.clientResource !== r.res && (null === (t = this.eventHandler) || void 0 === t || t.dispatch("onMultiDeviceEvent", o));
      }
      var Be,
        je = function je(e) {
          var t = $.parseNotify(e.payload);
          switch (t.type) {
            case "presence":
              ke.call(this, t);
              break;
            case "reaction":
              Le.call(this, t);
              break;
            case "thread":
              De.call(this, t);
              break;
            case "roaming_delete":
              Ge.call(this, t);
              break;
            case "conv":
              xe.call(this, t);
              break;
            default:
              G.error("unexpected notify type: ".concat(t.type));
          }
        },
        He = 1,
        _Fe = function Fe() {
          return _Fe = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _Fe.apply(this, arguments);
        },
        We = function We(e, t, r, o) {
          return new (r || (r = Promise))(function (n, i) {
            function a(e) {
              try {
                c(o.next(e));
              } catch (e) {
                i(e);
              }
            }
            function s(e) {
              try {
                c(o.throw(e));
              } catch (e) {
                i(e);
              }
            }
            function c(e) {
              var t;
              e.done ? n(e.value) : (t = e.value, t instanceof r ? t : new r(function (e) {
                e(t);
              })).then(a, s);
            }
            c((o = o.apply(e, t || [])).next());
          });
        },
        Ke = function Ke(e, t) {
          var r,
            o,
            n,
            i,
            a = {
              label: 0,
              sent: function sent() {
                if (1 & n[0]) throw n[1];
                return n[1];
              },
              trys: [],
              ops: []
            };
          return i = {
            next: s(0),
            throw: s(1),
            return: s(2)
          }, "function" == typeof Symbol && (i[Symbol.iterator] = function () {
            return this;
          }), i;
          function s(i) {
            return function (s) {
              return function (i) {
                if (r) throw new TypeError("Generator is already executing.");
                for (; a;) {
                  try {
                    if (r = 1, o && (n = 2 & i[0] ? o.return : i[0] ? o.throw || ((n = o.return) && n.call(o), 0) : o.next) && !(n = n.call(o, i[1])).done) return n;
                    switch (o = 0, n && (i = [2 & i[0], n.value]), i[0]) {
                      case 0:
                      case 1:
                        n = i;
                        break;
                      case 4:
                        return a.label++, {
                          value: i[1],
                          done: !1
                        };
                      case 5:
                        a.label++, o = i[1], i = [0];
                        continue;
                      case 7:
                        i = a.ops.pop(), a.trys.pop();
                        continue;
                      default:
                        if (!((n = (n = a.trys).length > 0 && n[n.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
                          a = 0;
                          continue;
                        }
                        if (3 === i[0] && (!n || i[1] > n[0] && i[1] < n[3])) {
                          a.label = i[1];
                          break;
                        }
                        if (6 === i[0] && a.label < n[1]) {
                          a.label = n[1], n = i;
                          break;
                        }
                        if (n && a.label < n[2]) {
                          a.label = n[2], a.ops.push(i);
                          break;
                        }
                        n[2] && a.ops.pop(), a.trys.pop();
                        continue;
                    }
                    i = t.call(e, a);
                  } catch (e) {
                    i = [6, e], o = 0;
                  } finally {
                    r = n = 0;
                  }
                }
                if (5 & i[0]) throw i[1];
                return {
                  value: i[0] ? i[1] : void 0,
                  done: !0
                };
              }([i, s]);
            };
          }
        },
        qe = function qe(e, t, r) {
          if (r || 2 === arguments.length) for (var o, n = 0, i = t.length; n < i; n++) {
            !o && n in t || (o || (o = Array.prototype.slice.call(t, 0, n)), o[n] = t[n]);
          }
          return e.concat(o || Array.prototype.slice.call(t));
        };
      !function (e) {
        e[e.NORMAL = 0] = "NORMAL", e[e.SINGLECHAT = 1] = "SINGLECHAT", e[e.GROUPCHAT = 2] = "GROUPCHAT", e[e.CHATROOM = 3] = "CHATROOM", e[e.READ_ACK = 4] = "READ_ACK", e[e.DELIVER_ACK = 5] = "DELIVER_ACK", e[e.RECALL = 6] = "RECALL", e[e.CHANNEL_ACK = 7] = "CHANNEL_ACK", e[e.EDIT = 8] = "EDIT";
      }(Be || (Be = {}));
      var ze = $.getEnvInfo();
      function Ve() {
        var e = "webim",
          t = "",
          r = "",
          o = [],
          n = new Date().valueOf();
        "webim" === this.deviceId ? (r = "random_" + n.toString(), e = this.deviceId + "_" + r, t = this.deviceId) : e = t = r = "webim_" + this.deviceId, this.context.jid && (this.context.jid.clientResource = e);
        var i = this.root.lookup("easemob.pb.Provision"),
          a = i.decode(o);
        a.compressType = this.compressType, a.encryptType = this.encryptType, a.osType = this.osType, a.version = this.version, a.deviceName = t, a.resource = e, a.deviceUuid = r, a.authToken = '{"token":"$t$' + this.token + '"}', a.actionVersion = "v2.0", a = i.encode(a).finish();
        var s = this.root.lookup("easemob.pb.MSync"),
          c = s.decode(o);
        return c.version = this.version, c.guid = this.context.jid, c.auth = "$t$" + this.token, c.command = 3, c.deviceId = t, c.serviceId = this.dataReport.getServiceId(), c.encryptType = this.encryptType, c.payload = a, s.encode(c).finish();
      }
      function Je(e, t) {
        var r = this,
          o = $.getEnvInfo();
        if ("web" === o.platform || "zfb" === o.platform || "dd" === o.platform) {
          for (var n = "", i = 0; i < e.length; i++) {
            n += String.fromCharCode(e[i]);
          }
          return n = ee().btoa(n), "web" === o.platform ? n : {
            data: n,
            isBuffer: !1,
            complete: function complete() {},
            fail: function fail(e) {
              "sendSocketMessage:fail taskID not exist" !== e.errMsg && "SocketTast.send:fail SocketTask.readyState is not OPEN" !== e.errMsg || (G.debug("send message fail and reconnect"), r.reconnecting || r.reconnect()), t && r._msgHash && r._msgHash[t] && r._msgHash[t].fail({
                id: t
              });
            }
          };
        }
        var a = e;
        return {
          data: a.buffer.slice(a.byteOffset, a.byteOffset + a.byteLength),
          fail: function fail(e) {
            "sendSocketMessage:fail taskID not exist" !== e.errMsg && "SocketTast.send:fail SocketTask.readyState is not OPEN" !== e.errMsg || r.reconnecting || r.reconnect(), t && r._msgHash && r._msgHash[t] && r._msgHash[t].fail({
              id: t
            });
          }
        };
      }
      function Xe(e, t) {
        switch (e.ns) {
          case 0:
            Pe.call(this, e);
            break;
          case 1:
            Ae.call(this, e, t);
            break;
          case 2:
            Ue.call(this, e);
            break;
          case 3:
            we.handleRosterMsg.call(this, e);
            break;
          case 4:
            this.registerConfrIQHandler && this.registerConfrIQHandler(e, t, this);
            break;
          case 5:
            je.call(this, e);
            break;
          default:
            G.error("distributeMeta", e);
        }
      }
      function Ye(e, t) {
        for (var r = function r(_r2) {
            var n = new (f())(e[_r2].id.low, e[_r2].id.high, e[_r2].id.unsigned).toString();
            if (o._load_msg_cache.some(function (e) {
              return e.msgId === n;
            })) return "continue";
            var i = e[_r2].from.name,
              a = e[_r2].to ? e[_r2].to.name : "",
              s = !!e[_r2].to && -1 !== e[_r2].to.domain.indexOf("conference");
            o._load_msg_cache.length <= o.max_cache_length || o._load_msg_cache.shift(), o._load_msg_cache.push({
              msgId: n,
              from: i,
              to: a,
              isGroup: s
            }), Xe.call(o, e[_r2], t);
          }, o = this, n = 0; n < e.length; n++) {
          r(n);
        }
      }
      function Qe(e) {
        var t = this.root.lookup("easemob.pb.CommUnreadDL");
        t = t.decode(e.payload);
        var r = new (f())(t.timestamp.low, t.timestamp.high, t.timestamp.unsigned).toString();
        if (this.expirationTime && this.compareTokenExpireTime(Number(r), this.expirationTime), 0 === t.unread.length) st.call(this);else for (var o = 0; o < t.unread.length; o++) {
          G.debug("pull unread message", t.unread), et.call(this, t.unread[o].queue);
        }
        st.call(this);
      }
      function $e() {
        var e = [],
          t = this.root.lookup("easemob.pb.StatisticsBody"),
          r = t.decode(e);
        r.operation = 0, r = t.encode(r).finish();
        var o = this.root.lookup("easemob.pb.Meta").decode(e);
        o.id = new Date().valueOf(), o.ns = 0, o.payload = r;
        var n = this.root.lookup("easemob.pb.CommSyncUL"),
          i = n.decode(e);
        i.meta = o, i = n.encode(i).finish();
        var a = this.root.lookup("easemob.pb.MSync"),
          s = a.decode(e);
        return s.version = this.version, s.encryptType = [0], s.command = 0, s.payload = i, a.encode(s).finish();
      }
      function Ze(e) {
        var t = [],
          r = this.root.lookup("easemob.pb.CommSyncUL"),
          o = r.decode(t);
        o.queue = e, o = r.encode(o).finish();
        var n = this.root.lookup("easemob.pb.MSync"),
          i = n.decode(t);
        return i.version = this.version, i.encryptType = this.encryptType, i.command = 0, i.payload = o, n.encode(i).finish();
      }
      function et(e) {
        G.debug("sendBackqueue");
        var t = Ze.call(this, e);
        St.call(this, t);
      }
      function rt(e, t) {
        var r = [],
          o = this.root.lookup("easemob.pb.CommSyncUL"),
          n = o.decode(r);
        n.queue = t, n.key = new (f())(e.low, e.high, e.unsigned).toString(), n = o.encode(n).finish();
        var i = this.root.lookup("easemob.pb.MSync"),
          a = i.decode(r);
        return a.version = this.version, a.encryptType = this.encryptType, a.command = 0, a.payload = n, i.encode(a).finish();
      }
      function ot() {
        var e;
        this.times = 1, this.autoReconnectNumTotal = 0, this.onOpened && this.onOpened(), null === (e = this.eventHandler) || void 0 === e || e.dispatch("onConnected"), at.call(this), ut.call(this), ct.call(this), st.call(this);
      }
      function nt(e, t) {
        G.debug("sendLastSession");
        var r = rt.call(this, e, t);
        St.call(this, r);
      }
      function it(e) {
        var t,
          r,
          o,
          n,
          i,
          a,
          s = this,
          c = this.root.lookup("easemob.pb.Provision").decode(e.payload);
        if (this.context.jid && (this.context.jid.clientResource = c.resource), this.clientResource = c.resource, 0 === c.status.errorCode) {
          if (c.authToken) {
            var u = JSON.parse(c.authToken).expires_in;
            if (!this.tokenExpiredTimer && !this.tokenWillExpireTimer) {
              var l = Date.now();
              this.expirationTime = u;
              var p = this.expirationTime - l;
              this.expiresIn = p < 0 ? 0 : p, this.tokenExpireTimeCountDown(this.expiresIn);
            }
          }
          this.reconnecting = !1, this.logOut = !1, "zfb" !== ze.platform && "dd" !== ze.platform || (this.sock.readyState = 1), this._localCache ? (null === (t = this._localCache) || void 0 === t ? void 0 : t.getInstance()) ? ot.call(this) : this._localCache && new this._localCache({
            user: this.user,
            dbName: "cache_".concat(Math.abs(ae(this.appKey)), "_").concat(this.user),
            version: He,
            onInit: function onInit() {
              return We(s, void 0, void 0, function () {
                return Ke(this, function (e) {
                  return G.debug("localCache init success"), ot.call(this), [2];
                });
              });
            }
          }) : ot.call(this);
        } else {
          var h = void 0,
            f = c.status.reason;
          switch (f) {
            case "Sorry, the app day live count limit":
              h = m.create({
                type: d.MAX_LIMIT,
                message: "Sorry, the daily active user limit for this app has been reached"
              }), null === (r = this.eventHandler) || void 0 === r || r.dispatch("onError", h);
              break;
            case "Sorry, the app online count limit":
              h = m.create({
                type: d.MAX_LIMIT,
                message: "Sorry, the maximum number limit of online users for this app has been reached"
              }), null === (o = this.eventHandler) || void 0 === o || o.dispatch("onError", h);
              break;
            case "Sorry, the app month live count limit":
              h = m.create({
                type: d.MAX_LIMIT,
                message: "Sorry, the monthly active user limit for this app has been reached"
              }), null === (n = this.eventHandler) || void 0 === n || n.dispatch("onError", h);
              break;
            case "Sorry, who are you?":
              h = m.create({
                type: d.WEBIM_CONNCTION_AUTH_ERROR,
                message: "Auth failed"
              }), null === (i = this.eventHandler) || void 0 === i || i.dispatch("onError", h);
              break;
            default:
              h = m.create({
                type: d.SERVER_UNKNOWN_ERROR,
                message: f
              }), null === (a = this.eventHandler) || void 0 === a || a.dispatch("onError", h);
          }
        }
      }
      function at() {
        var e, t;
        if ((null === (e = this.unMSyncSendMsgMap) || void 0 === e ? void 0 : e.size) > 0) {
          for (var r = Array.from(this.unMSyncSendMsgMap.keys()), o = 0; o < r.length; o++) {
            var n = this.unMSyncSendMsgMap.get(r[o]);
            St.call(this, n, r[o]);
          }
          null === (t = this.unMSyncSendMsgMap) || void 0 === t || t.clear();
        }
      }
      function st() {
        var e = $e.call(this);
        St.call(this, e);
      }
      function ct() {
        var e = dt.call(this);
        St.call(this, e);
      }
      function ut() {
        var e = this;
        lt.call(this), this.heartBeatID = setInterval(function () {
          ct.call(e);
        }, this.heartBeatWait);
      }
      function lt() {
        clearInterval(this.heartBeatID);
      }
      function dt() {
        var e = this.root.lookup("easemob.pb.MSync"),
          t = e.decode([]);
        return t.version = this.version, t.encryptType = this.encryptType, t.command = 1, e.encode(t).finish();
      }
      function pt(e, t) {
        return e.some(function (e) {
          return e.name === t.name;
        });
      }
      function ht(e) {
        var t = this,
          r = this.root.lookup("easemob.pb.CommNotice"),
          o = r.decode(e.payload),
          n = pt(this._queues, o.queue);
        G.debug("receive notice", r, this._queues), n || this.clientResource === o.queue.clientResource && o.queue.name === this.context.userId || (this.qTimer && clearTimeout(this.qTimer), this.qTimer = setTimeout(function () {
          var e = o.queue;
          pt(t._queues, e) && (et.call(t, e), G.debug("⬇q:", e));
        }, 1e4), this._queues.push(o.queue), 1 === this._queues.length && et.call(this, o.queue));
      }
      function ft(e) {
        if ("string" == typeof e) {
          var t = JSON.parse(e);
          if (Array.isArray(t)) {
            var r = t[0],
              o = t[1];
            this.closeInfo = {
              code: r,
              reason: o
            };
          }
        }
      }
      function mt(e) {
        return We(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c;
          return Ke(this, function (u) {
            if (t = $.getEnvInfo(), r = this.root.lookup("easemob.pb.MSync"), "miniCore" === this.name) {
              try {
                e.data instanceof ArrayBuffer || (G.debug("received message: ".concat(e.data)), ft.call(this, e.data)), n = new Uint8Array(e.data), o = r.decode(n);
              } catch (e) {
                throw new Error("decode message fail.");
              }
              return [2, o];
            }
            if ("web" === t.platform || "zfb" === t.platform || "dd" === t.platform) {
              for ('[401,"normal closed"]' === e.data && (G.debug("received message: ".concat(e.data)), ft.call(this, e.data)), i = ee().atob(e.data), a = [], s = 0, c = i.length; s < c; ++s) {
                a.push(i.charCodeAt(s));
              }
              return [2, r.decode(a)];
            }
            try {
              e.data instanceof ArrayBuffer || (G.debug("received message: ".concat(e.data)), ft.call(this, e.data)), o = r.decode(e.data);
            } catch (e) {
              throw new Error("decode message fail.");
            }
            return [2, o];
          });
        });
      }
      function gt(e) {
        var t = this;
        e.then(function (e) {
          if (e) switch (e.command) {
            case 0:
              Et.call(t, e);
              break;
            case 1:
              Qe.call(t, e);
              break;
            case 2:
              ht.call(t, e);
              break;
            case 3:
              it.call(t, e);
              break;
            default:
              G.error("unexpected msync command: ".concat(e.command));
          } else G.error("unexpected msync result: ".concat(e));
        });
      }
      function Et(e) {
        var t, r, o, n, i, a, s, c, u, l, p, h, g, E, y, T, _, R, O, S, C, A, N, M, b, U, w, P, k, L, D, G, x, B, j, H, F, W, K, q, z;
        return We(this, void 0, void 0, function () {
          var V,
            J,
            X,
            Y,
            Q,
            Z,
            ee,
            te,
            re,
            ne,
            ie,
            ae,
            se,
            ce,
            ue,
            le,
            de,
            pe,
            he,
            fe,
            me,
            ge,
            Ee,
            ye,
            Te,
            ve,
            _e,
            Re,
            Oe,
            Ie = this;
          return Ke(this, function (Se) {
            switch (Se.label) {
              case 0:
                if (V = (V = this.root.lookup("easemob.pb.CommSyncDL")).decode(e.payload), J = new (f())(V.serverId.low, V.serverId.high, V.serverId.unsigned).toString(), X = new (f())(V.metaId.low, V.metaId.high, V.metaId.unsigned).toString(), !(Number(X) > 0)) return [3, 10];
                if (!V.status) return [3, 9];
                if (0 !== V.status.errorCode) return [3, 8];
                if (null == (Y = this._msgHash[X]) ? void 0 : Y.isHandleChatroom) {
                  try {
                    Q = "join" === (null === (t = this._msgHash[X]) || void 0 === t ? void 0 : t.operation), (null === (r = this._msgHash[X]) || void 0 === r ? void 0 : r.resolve) instanceof Function && Q && this._msgHash[X].resolve({
                      type: 0,
                      data: {
                        action: "apply",
                        id: this._msgHash[X].roomId,
                        result: !0,
                        user: this.context.userId
                      }
                    }), (null === (o = this._msgHash[X]) || void 0 === o ? void 0 : o.success) instanceof Function && Q && this._msgHash[X].success({
                      type: 0,
                      data: {
                        action: "apply",
                        id: this._msgHash[X].roomId,
                        result: !0,
                        user: this.context.userId
                      }
                    }), (null === (n = this._msgHash[X]) || void 0 === n ? void 0 : n.resolve) instanceof Function && !Q && this._msgHash[X].resolve({
                      type: 0,
                      data: {
                        result: !0
                      }
                    }), (null === (i = this._msgHash[X]) || void 0 === i ? void 0 : i.success) instanceof Function && !Q && this._msgHash[X].success({
                      type: 0,
                      data: {
                        result: !0
                      }
                    });
                  } catch (e) {
                    _e = m.create({
                      type: d.WEBIM_CONNCTION_CALLBACK_INNER_ERROR,
                      message: "when executing success function error",
                      data: e
                    }), this.onError && this.onError(_e), null === (a = this.eventHandler) || void 0 === a || a.dispatch("onError", _e);
                  }
                  delete this._msgHash[X];
                }
                if (!Y || Y.isHandleChatroom) return [3, 7];
                if (Z = null, ee = "", te = 0, 0 !== V.metas.length) try {
                  (re = $.parseNotify(V.metas[0].payload)).edit_msg && (ne = re.edit_msg, ie = ne.count, ae = ne.operator, se = ne.edit_time, ce = ne.sender, ue = ne.send_time, Z = {
                    operationTime: se,
                    operatorId: ae,
                    operationCount: ie
                  }, ee = ce, te = Number(ue));
                } catch (e) {
                  _e = m.create({
                    type: d.WEBIM_LOAD_MSG_ERROR,
                    message: "decode message error",
                    data: e
                  }), this.onError && this.onError(_e), null === (s = this.eventHandler) || void 0 === s || s.dispatch("onError", _e);
                }
                I.has(X) && (I.get(X).rpt({
                  isEndApi: !0,
                  data: {
                    isSuccess: 1,
                    requestMethod: "WEBSOCKET",
                    requestUrl: this.url,
                    code: v.success,
                    msgId: J
                  }
                }), I.delete(X)), Se.label = 1;
              case 1:
                return Se.trys.push([1, 5,, 6]), le = {
                  localMsgId: X,
                  serverMsgId: J
                }, Z && (this._msgHash[X].modifiedInfo = Z, de = this._msgHash[X], pe = de.editMessageId, Te = de.type, he = de.chatType, fe = de.msg, me = de.to, ge = de.translations, Ee = {
                  id: pe,
                  type: Te,
                  chatType: he,
                  msg: fe,
                  modifiedInfo: Z,
                  to: me,
                  from: ee,
                  time: Number(te)
                }, ge && (Ee.translations = ge), le.message = Ee, null === (l = null === (u = null === (c = this._localCache) || void 0 === c ? void 0 : c.getInstance()) || void 0 === u ? void 0 : u.getMessageByServerMsgId(pe)) || void 0 === l || l.then(function (e) {
                  var t, r;
                  e && "txt" === e.type && (null === (r = null === (t = Ie._localCache) || void 0 === t ? void 0 : t.getInstance()) || void 0 === r || r.putMessageToDB(_Fe(_Fe({}, e), {
                    msg: Ee.msg,
                    modifiedInfo: Ee.modifiedInfo,
                    translations: Ee.translations
                  })));
                })), [4, null === (h = null === (p = this._localCache) || void 0 === p ? void 0 : p.getInstance()) || void 0 === h ? void 0 : h.updateLocalMessage(X, {
                  serverMsgId: J,
                  status: oe.SUCCESS
                })];
              case 2:
                return Se.sent(), (null === (g = this._msgHash[X]) || void 0 === g ? void 0 : g.success) instanceof Function ? [4, this._msgHash[X].success(X, J)] : [3, 4];
              case 3:
                Se.sent(), Se.label = 4;
              case 4:
                return (null === (E = this._msgHash[X]) || void 0 === E ? void 0 : E.resolve) instanceof Function && this._msgHash[X].resolve(le), [3, 6];
              case 5:
                return ye = Se.sent(), _e = m.create({
                  type: d.WEBIM_CONNCTION_CALLBACK_INNER_ERROR,
                  message: "when executing success function error",
                  data: ye
                }), this.onError && this.onError(_e), null === (y = this.eventHandler) || void 0 === y || y.dispatch("onError", _e), [3, 6];
              case 6:
                this.onReceivedMessage && this.onReceivedMessage({
                  id: X,
                  mid: J,
                  to: this._msgHash[X].to,
                  time: 0
                }), null === (T = this.eventHandler) || void 0 === T || T.dispatch("onReceivedMessage", {
                  id: X,
                  mid: J,
                  to: this._msgHash[X].to
                }), delete this._msgHash[X], Se.label = 7;
              case 7:
                return [3, 9];
              case 8:
                if (15 === V.status.errorCode) (null === (_ = this._msgHash[X]) || void 0 === _ ? void 0 : _.fail) instanceof Function && this._msgHash[X].fail({
                  type: d.SERVICE_NOT_ALLOW_MESSAGING_MUTE,
                  reason: "you were muted"
                }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject({
                  type: d.SERVICE_NOT_ALLOW_MESSAGING_MUTE,
                  reason: "you were muted"
                }), null === (O = null === (R = this._localCache) || void 0 === R ? void 0 : R.getInstance()) || void 0 === O || O.updateLocalMessage(X, {
                  serverMsgId: J,
                  status: oe.FAIL
                });else if (1 === V.status.errorCode) {
                  switch (Te = void 0, V.status.reason) {
                    case "blocked":
                      Te = d.PERMISSION_DENIED;
                      break;
                    case "group not found":
                      Te = d.GROUP_NOT_EXIST;
                      break;
                    case "not in group or chatroom":
                      Te = d.GROUP_NOT_JOINED;
                      break;
                    case "exceed recall time limit":
                      Te = d.MESSAGE_RECALL_TIME_LIMIT;
                      break;
                    case "message recall disabled":
                      Te = d.SERVICE_NOT_ENABLED;
                      break;
                    case "not in group or chatroom white list":
                      Te = d.SERVICE_NOT_ALLOW_MESSAGING;
                      break;
                    case "nonroster":
                      Te = d.USER_NOT_FRIEND, V.status.reason = "not contact";
                      break;
                    case "group is disabled":
                      Te = d.GROUP_IS_DISABLED, V.status.reason = "group is disabled";
                      break;
                    case "limit directed users":
                      Te = d.MAX_LIMIT;
                      break;
                    case "Sorry, edit limit reached":
                      Te = d.MAX_LIMIT, V.status.reason = "Modify message limit reached";
                      break;
                    case "Sorry, message does not exist":
                      Te = d.MODIFY_MESSAGE_NOT_EXIST, V.status.reason = "The message does not exist.";
                      break;
                    case "Sorry, You do not have permission":
                      Te = d.PERMISSION_DENIED, V.status.reason = "You do not have the modified permission.";
                      break;
                    case "Sorry, format is incorrect":
                      Te = d.MODIFY_MESSAGE_FORMAT_ERROR, V.status.reason = "The modify messaged format error.";
                      break;
                    case "Sorry, edit is not available":
                      Te = d.SERVICE_NOT_ENABLED, V.status.reason = "The message modify function is not activated.";
                      break;
                    case "Sorry, edit fail":
                      Te = d.MODIFY_MESSAGE_FAILED, V.status.reason = "Modify message failed.";
                      break;
                    default:
                      V.status.reason.includes("grpID") && V.status.reason.includes("does not exist!") ? (Te = d.CHATROOM_NOT_EXIST, V.status.reason = "The chat room dose not exist.") : V.status.reason.includes("username") && V.status.reason.includes("doesn't exist!") ? Te = d.USER_NOT_FOUND : "group member list is full!" === V.status.reason ? Te = d.CHATROOM_MEMBERS_FULL : V.status.reason.includes("can not join this group") && V.status.reason.includes("is in the blacklist") ? (Te = d.PERMISSION_DENIED, V.status.reason = "permission denied") : Te = "can not operate this group, reason: group is disabled" === V.status.reason ? d.GROUP_IS_DISABLED : V.status.reason.includes("moderation") ? d.MESSAGE_MODERATION_BLOCKED : d.SERVER_UNKNOWN_ERROR;
                  }
                  this._msgHash[X] && ((null === (S = this._msgHash[X]) || void 0 === S ? void 0 : S.isHandleChatroom) ? (ve = m.create({
                    type: Te,
                    message: V.status.reason || "",
                    data: ""
                  }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), this._msgHash[X].error instanceof Function && this._msgHash[X].error(ve)) : (ve = m.create({
                    type: Te,
                    message: V.status.reason || "",
                    data: {
                      id: X,
                      mid: J
                    }
                  }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), this._msgHash[X].fail instanceof Function && this._msgHash[X].fail({
                    type: Te,
                    reason: V.status.reason ? V.status.reason : "",
                    data: {
                      id: X,
                      mid: J
                    }
                  }), null === (A = null === (C = this._localCache) || void 0 === C ? void 0 : C.getInstance()) || void 0 === A || A.updateLocalMessage(X, {
                    serverMsgId: J,
                    status: oe.FAIL
                  })), delete this._msgHash[X]);
                } else if (7 === V.status.errorCode) "sensitive words" === V.status.reason && this._msgHash[X] ? (ve = m.create({
                  type: d.MESSAGE_INCLUDE_ILLEGAL_CONTENT,
                  message: "sensitive words",
                  data: {
                    id: X,
                    mid: J
                  }
                }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), this._msgHash[X].fail instanceof Function && this._msgHash[X].fail({
                  type: d.MESSAGE_INCLUDE_ILLEGAL_CONTENT,
                  data: {
                    id: X,
                    mid: J,
                    reason: "sensitive words"
                  }
                }), null === (M = null === (N = this._localCache) || void 0 === N ? void 0 : N.getInstance()) || void 0 === M || M.updateLocalMessage(X, {
                  serverMsgId: J,
                  status: oe.FAIL
                })) : "blocked by mod_antispam" === V.status.reason && this._msgHash[X] ? (ve = m.create({
                  type: d.MESSAGE_INCLUDE_ILLEGAL_CONTENT,
                  message: "blocked by mod_antispam",
                  data: {
                    id: X,
                    mid: J
                  }
                }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), this._msgHash[X].fail instanceof Function && this._msgHash[X].fail({
                  type: d.MESSAGE_INCLUDE_ILLEGAL_CONTENT,
                  data: {
                    id: X,
                    mid: J,
                    reason: "blocked by mod_antispam"
                  }
                }), null === (U = null === (b = this._localCache) || void 0 === b ? void 0 : b.getInstance()) || void 0 === U || U.updateLocalMessage(X, {
                  serverMsgId: J,
                  status: oe.FAIL
                })) : "user is mute" === V.status.reason && this._msgHash[X] ? (ve = m.create({
                  type: d.USER_MUTED_BY_ADMIN,
                  message: "user is mute",
                  data: {
                    id: X,
                    mid: J
                  }
                }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), this._msgHash[X].fail instanceof Function && this._msgHash[X].fail(ve), null === (P = null === (w = this._localCache) || void 0 === w ? void 0 : w.getInstance()) || void 0 === P || P.updateLocalMessage(X, {
                  serverMsgId: J,
                  status: oe.FAIL
                })) : "traffic limit" === V.status.reason && this._msgHash[X] ? (ve = m.create({
                  type: d.MESSAGE_CURRENT_LIMITING,
                  message: "traffic limit",
                  data: {
                    id: X,
                    mid: J
                  }
                }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), this._msgHash[X].fail instanceof Function && this._msgHash[X].fail(ve), null === (L = null === (k = this._localCache) || void 0 === k ? void 0 : k.getInstance()) || void 0 === L || L.updateLocalMessage(X, {
                  serverMsgId: J,
                  status: oe.FAIL
                })) : "Sorry, data is too large" === V.status.reason && this._msgHash[X] && (ve = m.create({
                  type: d.MESSAGE_SIZE_LIMIT,
                  message: "Sorry, data is too large",
                  data: {
                    id: X,
                    mid: J
                  }
                }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), this._msgHash[X].fail instanceof Function && this._msgHash[X].fail(ve), null === (G = null === (D = this._localCache) || void 0 === D ? void 0 : D.getInstance()) || void 0 === G || G.updateLocalMessage(X, {
                  serverMsgId: J,
                  status: oe.FAIL
                }));else if (19 === V.status.errorCode) this._msgHash[X] && (I.has(X) && (I.get(X).rpt({
                  isEndApi: !0,
                  data: {
                    isSuccess: 0,
                    requestMethod: "WEBSOCKET",
                    requestUrl: this.url,
                    code: d.MESSAGE_EXTERNAL_LOGIC_BLOCKED,
                    codeDesc: V.status.reason || "",
                    msgId: J
                  }
                }), I.delete(X)), ve = m.create({
                  type: d.MESSAGE_EXTERNAL_LOGIC_BLOCKED,
                  message: V.status.reason || "",
                  data: {
                    id: X,
                    mid: J
                  }
                }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), this._msgHash[X].fail instanceof Function && this._msgHash[X].fail({
                  type: d.MESSAGE_EXTERNAL_LOGIC_BLOCKED,
                  data: {
                    id: X,
                    mid: J,
                    reason: V.status.reason
                  }
                }), null === (B = null === (x = this._localCache) || void 0 === x ? void 0 : x.getInstance()) || void 0 === B || B.updateLocalMessage(X, {
                  serverMsgId: J,
                  status: oe.FAIL
                }));else if (this._msgHash[X]) {
                  I.has(X) && (I.get(X).rpt({
                    isEndApi: !0,
                    data: {
                      isSuccess: 0,
                      requestMethod: "WEBSOCKET",
                      requestUrl: this.url,
                      code: d.WEBIM_LOAD_MSG_ERROR,
                      codeDesc: (null === (j = V.status) || void 0 === j ? void 0 : j.reason) || "",
                      msgId: J
                    }
                  }), I.delete(X));
                  try {
                    ve = m.create({
                      type: d.WEBIM_LOAD_MSG_ERROR,
                      message: (null === (H = V.status) || void 0 === H ? void 0 : H.reason) || "",
                      data: {
                        id: X,
                        mid: J,
                        reason: V.status && V.status.reason
                      }
                    }), this._msgHash[X].reject instanceof Function && this._msgHash[X].reject(ve), null === (W = null === (F = this._localCache) || void 0 === F ? void 0 : F.getInstance()) || void 0 === W || W.updateLocalMessage(X, {
                      serverMsgId: J,
                      status: oe.FAIL
                    }), this._msgHash[X].fail instanceof Function && this._msgHash[X].fail({
                      type: d.WEBIM_LOAD_MSG_ERROR,
                      data: {
                        errorCode: V.status && V.status.errorCode,
                        reason: V.status && V.status.reason
                      }
                    });
                  } catch (e) {
                    _e = m.create({
                      type: d.WEBIM_CONNCTION_CALLBACK_INNER_ERROR,
                      message: "when executing fail function error",
                      data: e
                    }), this.onError && this.onError(_e), null === (K = this.eventHandler) || void 0 === K || K.dispatch("onError", _e);
                  }
                  delete this._msgHash[X];
                } else I.has(X) && (I.get(X).rpt({
                  isEndApi: !0,
                  data: {
                    isSuccess: 0,
                    requestMethod: "WEBSOCKET",
                    requestUrl: this.url,
                    code: d.WEBIM_CONNCTION_CALLBACK_INNER_ERROR,
                    codeDesc: "on message error",
                    msgId: J
                  }
                }), I.delete(X)), _e = m.create({
                  type: d.WEBIM_CONNCTION_CALLBACK_INNER_ERROR,
                  message: "on message error"
                }), this.onError && this.onError(_e), null === (q = this.eventHandler) || void 0 === q || q.dispatch("onError", _e);
                Se.label = 9;
              case 9:
                return [2];
              case 10:
                if (0 !== V.metas.length) try {
                  Ye.call(this, V.metas, V.status);
                } catch (e) {
                  _e = m.create({
                    type: d.WEBIM_LOAD_MSG_ERROR,
                    message: "decode message error",
                    data: e
                  }), this.onError && this.onError(_e), null === (z = this.eventHandler) || void 0 === z || z.dispatch("onError", _e);
                } finally {
                  V.isLast ? (Re = -1, this._queues.some(function (e, t) {
                    return e.name === V.name && (Re = t, !0);
                  }) && Re > 0 && this._queues.splice(Re, 1), this._queues.length > 0 && (et.call(this, this._queues[0]), this.qTimer && clearTimeout(this.qTimer))) : nt.call(this, V.nextKey, V.queue);
                } else V.isLast && (Oe = -1, this._queues.some(function (e, t) {
                  return e.name === V.queue.name && (Oe = t, !0);
                }) && this._queues.splice(Oe, 1), this._queues.length > 0 && (et.call(this, this._queues[0]), this.qTimer && clearTimeout(this.qTimer)));
                return [2];
            }
          });
        });
      }
      function yt(e) {
        var t = [],
          r = this.root.lookup("easemob.pb.KeyValue"),
          o = [];
        for (var n in e) {
          var i = r.decode(t);
          i.key = n, "object" == _typeof(e[n]) ? (i.type = 8, i.stringValue = JSON.stringify(e[n])) : "string" == typeof e[n] ? (i.type = 7, i.stringValue = e[n]) : "boolean" == typeof e[n] ? (i.type = 1, i.varintValue = !0 === e[n] ? 1 : 0) : Number.isInteger(e[n]) ? (i.type = 2, i.varintValue = e[n]) : (i.type = 6, i.doubleValue = e[n]), o.push(i);
        }
        return o;
      }
      function Tt(e) {
        var t,
          r,
          o,
          n = [];
        if (this.root) {
          var i,
            a = this.root.lookup("easemob.pb.MessageBody.Content").decode(n);
          switch (i = !e.group && "groupchat" !== (null === (t = null == e ? void 0 : e.chatType) || void 0 === t ? void 0 : t.toLowerCase()) || e.roomType ? e.group && e.roomType || "chatroom" === (null === (r = null == e ? void 0 : e.chatType) || void 0 === r ? void 0 : r.toLowerCase()) ? "chatRoom" : "singleChat" : "groupChat", e.type) {
            case "txt":
              a.type = 0, a.text = e.msg;
              break;
            case "img":
              a.type = 1, e.body ? (a.displayName = e.body.filename, a.remotePath = e.body.url, a.secretKey = e.body.secret, a.fileLength = e.body.file_length, a.size = e.body.size, a.thumbnailDisplayName = e.body.filename) : e.file ? (a.displayName = e.file.filename, a.remotePath = e.file.url, a.secretKey = e.file.secret, a.fileLength = e.file.file_length, a.size = e.file.size, a.thumbnailDisplayName = e.file.filename) : (a.displayName = e.filename, a.remotePath = e.url, a.secretKey = e.secret, a.fileLength = e.file_length, a.size = e.size, a.thumbnailDisplayName = e.filename), e.isBuildCombinedMsg && (a.size = {
                height: e.height,
                width: e.width
              });
              break;
            case "video":
              a.type = 2, e.body ? (a.displayName = e.body.filename, a.remotePath = e.body.url, a.secretKey = e.body.secret, a.fileLength = e.body.file_length, a.duration = e.body.length, a.thumbnailDisplayName = e.body.filename) : e.isBuildCombinedMsg && (a.displayName = e.filename, a.remotePath = e.url, a.secretKey = e.secret, a.fileLength = e.file_length, a.duration = e.length, a.thumbnailDisplayName = e.filename);
              break;
            case "loc":
              a.type = 3, a.latitude = e.lat, a.longitude = e.lng, a.address = e.addr, a.buildingName = e.buildingName, a.latitude = e.lat;
              break;
            case "audio":
              a.type = 4, e.body ? (a.displayName = e.body.filename, a.remotePath = e.body.url, a.secretKey = e.body.secret, a.fileLength = e.body.file_length, a.duration = e.body.length, a.thumbnailDisplayName = e.body.filename) : e.isBuildCombinedMsg && (a.displayName = e.filename, a.remotePath = e.url, a.secretKey = e.secret, a.fileLength = e.file_length, a.duration = e.length, a.thumbnailDisplayName = e.filename);
              break;
            case "file":
              a.type = 5, e.body ? (a.displayName = e.body.filename, a.remotePath = e.body.url, a.secretKey = e.body.secret, a.fileLength = e.body.file_length, a.thumbnailDisplayName = e.body.filename) : e.isBuildCombinedMsg && (a.displayName = e.filename, a.remotePath = e.url, a.secretKey = e.secret, a.fileLength = e.file_length, a.thumbnailDisplayName = e.filename);
              break;
            case "cmd":
              a.type = 6, a.action = e.action;
              break;
            case "custom":
              a.type = 7, a.customEvent = e.customEvent, a.customExts = yt.call(this, e.customExts);
              break;
            case "combine":
              a.type = 0, a.subType = 0, a.text = e.compatibleText, a.displayName = e.filename, a.remotePath = e.url, a.secretKey = e.secret, a.fileLength = e.file_length, a.title = e.title, a.summary = e.summary, a.combineLevel = e.combineLevel;
          }
          var s = [];
          e.ext && (s = yt.call(this, e.ext));
          var c = this.root.lookup("easemob.pb.MessageBody"),
            u = c.decode(n),
            l = e.from || this.context.jid.name;
          u.from = {
            name: e.isBuildCombinedMsg ? l : this.context.jid.name
          }, u.to = {
            name: e.to
          }, "channel" === e.type ? u.type = Be.CHANNEL_ACK : "recall" === e.type ? (u.type = Be.RECALL, u.ackMessageId = e.ackId) : "delivery" === e.type ? (u.type = Be.DELIVER_ACK, u.ackMessageId = e.ackId) : "read" === e.type ? (u.type = Be.READ_ACK, u.ackMessageId = e.ackId, "groupChat" === i && (u.msgConfig = {
            allowGroupAck: !0
          }, u.ackContent = e.ackContent)) : "chatRoom" === i ? u.type = Be.CHATROOM : "groupChat" === i ? (u.type = Be.GROUPCHAT, e.msgConfig && (u.msgConfig = {
            allowGroupAck: !0
          })) : "singleChat" === i && (u.type = Be.SINGLECHAT), e.editMessageId && (u.type = Be.EDIT, u.editMessageId = e.editMessageId), u.contents = [a], u.ext = s;
          var p = function (e) {
            var t = {};
            return "translations" in e && (t.translations = e.translations), "isChatThread" in e && e.isChatThread && (t.thread = {}), Object.keys(t).length > 0 ? JSON.stringify(t) : "";
          }(e);
          p && (u.meta = p), u = c.encode(u).finish();
          var h = this.root.lookup("easemob.pb.Meta"),
            m = h.decode(n);
          m.id = e.id;
          var g = "easemob.com";
          if ("chatRoom" !== i && "groupChat" !== i || (g = "conference.easemob.com"), m.to = {
            appKey: this.appKey,
            name: e.to,
            domain: g
          }, "chatRoom" === i && (m.ext = yt.call(this, function (e) {
            return {
              chatroom_msg_tag: "high" === e.priority ? 0 : "low" === e.priority ? 2 : 1
            };
          }(e))), m.ns = 1, m.payload = u, m.routetype = e.deliverOnlineOnly ? 1 : 0, "singleChat" !== i && Array.isArray(e.receiverList) && (null === (o = e.receiverList) || void 0 === o ? void 0 : o.length) > 0 && (m.directedUsers = e.receiverList, m.routetype = 2, G.debug("receiverList:", e.receiverList, "thirdMessage", m)), e.isBuildCombinedMsg) return m.timestamp = f().fromValue(e.time), h.encode(m).finish();
          var E = this.root.lookup("easemob.pb.CommSyncUL"),
            y = E.decode(n);
          y.meta = m, y = E.encode(y).finish();
          var T = this.root.lookup("easemob.pb.MSync"),
            v = T.decode(n);
          return v.version = this.version, v.encryptType = this.encryptType, v.command = 0, v.payload = y, T.encode(v).finish();
        }
        e.fail && e.fail({
          type: d.WEBIM_CONNCTION_CLIENT_OFFLINE,
          message: "Not logged in"
        });
      }
      function vt(e) {
        var t,
          r,
          o = this,
          n = _Fe({}, e);
        if (e.file) return n.accessToken = this.token, n.appKey = this.appKey, n.apiUrl = this.apiUrl, n.body && n.body.url ? Tt.call(this, n) : new Promise(function (t, r) {
          var i = n.onFileUploadComplete;
          n.onFileUploadComplete = function (t) {
            var r, a, s, c;
            if (t.entities[0]["file-metadata"]) {
              var u = t.entities[0]["file-metadata"]["content-length"];
              n.file_length = u, n.filetype = t.entities[0]["file-metadata"]["content-type"], u > 204800 && (n.thumbnail = !0);
            }
            n.body = {
              type: n.type || "file",
              secret: t.entities[0]["share-secret"],
              filename: n.file.filename || n.filename,
              url: (o.isHttpDNS ? o.apiUrl + t.uri.substr(t.uri.indexOf("/", 9)) : t.uri) + "/" + t.entities[0].uuid,
              length: n.length || 0,
              filetype: n.filetype || n.file.filetype,
              file_length: (null === (a = null === (r = n.file) || void 0 === r ? void 0 : r.data) || void 0 === a ? void 0 : a.size) || 0,
              size: {
                width: n.width || 0,
                height: n.height || 0
              }
            }, n.file.url = t.uri, e.secret = t.entities[0]["share-secret"];
            var l = (o.isHttpDNS ? o.apiUrl + t.uri.substr(t.uri.indexOf("/", 9)) : t.uri) + "/" + t.entities[0].uuid;
            e.url = l, t.url = l, "img" === n.type && (e.thumb = "".concat(l, "?thumbnail=true"), t.thumb = "".concat(l, "?thumbnail=true")), i instanceof Function && i(t, n.id);
            var d = Tt.call(o, n);
            I.size <= S && I.set(n.id, {
              rpt: o.dataReport.geOperateFun({
                operationName: E.SEND_MSG
              })
            }), null === (c = null === (s = o._localCache) || void 0 === s ? void 0 : s.getInstance()) || void 0 === c || c.storeMessage(e, oe.INPROGRESS), St.call(o, d);
          }, $.uploadFile.call(o, n, E.UPLOAD_MSG_ATTACH);
        });
        if ("combine" === e.type) {
          n.accessToken = this.token, n.appKey = this.appKey, n.apiUrl = this.apiUrl;
          var i = n.onFileUploadComplete,
            a = n.onFileUploadError;
          return new Promise(function (t, r) {
            var s, c, u, l;
            if ((null === (s = e.messageList) || void 0 === s ? void 0 : s.length) > 300 || 0 === (null === (c = e.messageList) || void 0 === c ? void 0 : c.length)) return o._msgHash[n.id].reject({
              type: d.MAX_LIMIT,
              message: "The number of combined messages exceeded the limit."
            });
            var p = qe([], e.messageList, !0),
              h = 0;
            if (p.forEach(function (e) {
              (null == e ? void 0 : e.combineLevel) > h && (h = null == e ? void 0 : e.combineLevel);
            }), n.combineLevel = h + 1, n.combineLevel > 10) return o._msgHash[n.id].reject({
              type: d.MAX_LIMIT,
              message: "The level of the merged message exceeded the limit."
            });
            var f = _t.call(o, p),
              m = function m(t, r) {
                var a,
                  s,
                  c,
                  u,
                  l,
                  d,
                  p = (o.isHttpDNS ? o.apiUrl + t.uri.substr(t.uri.indexOf("/", 9)) : t.uri) + "/" + t.entities[0].uuid,
                  h = null === (a = t.entities[0]) || void 0 === a ? void 0 : a["share-secret"],
                  f = p + "?em-redirect=true";
                h && (f = "".concat(f, "&share-secret=").concat(h)), i instanceof Function && i({
                  url: f,
                  secret: h
                }), e.url = f, e.secret = h, n.url = p, n.secret = t.entities[0]["share-secret"], n.filename = (null === (s = n.file) || void 0 === s ? void 0 : s.filename) || (null == r ? void 0 : r.fileName), n.file_length = (null === (u = null === (c = n.file) || void 0 === c ? void 0 : c.data) || void 0 === u ? void 0 : u.size) || (null == r ? void 0 : r.fileLength) || 0, null === (d = null === (l = o._localCache) || void 0 === l ? void 0 : l.getInstance()) || void 0 === d || d.storeMessage(e, oe.INPROGRESS);
                var m = Tt.call(o, n);
                St.call(o, m);
              },
              g = $.getEnvInfo();
            if ("web" !== g.platform && "node" !== g.platform && "quick_app" !== g.platform && (null === (l = null === (u = g.global) || void 0 === u ? void 0 : u.canIUse) || void 0 === l ? void 0 : l.call(u, "getFileSystemManager"))) {
              var y = g.global.getFileSystemManager(),
                T = o.apiUrl + "/" + o.orgName + "/" + o.appName + "/chatfiles";
              y.writeFile({
                filePath: "".concat(g.global.env.USER_DATA_PATH, "/combine"),
                data: f.buffer,
                encoding: "binary",
                success: function success(e) {
                  g.global.uploadFile({
                    url: T,
                    filePath: "".concat(g.global.env.USER_DATA_PATH, "/combine"),
                    name: "file",
                    header: {
                      "Content-Type": "multipart/form-data",
                      Authorization: "Bearer " + n.accessToken
                    },
                    success: function success(e) {
                      if (200 === e.statusCode) {
                        G.debug("upload success", e);
                        var t = JSON.parse(e.data);
                        m(t, {
                          fileName: "combine",
                          fileLength: f.length
                        });
                      } else G.debug("upload fail"), n.onFileUploadError instanceof Function && n.onFileUploadError(e), this._msgHash[n.id].reject({
                        type: d.WEBIM_UPLOADFILE_ERROR,
                        message: "Failed to upload the merge message.Please try again",
                        data: e
                      });
                    },
                    fail: function fail(t) {
                      G.debug("upload fail"), n.onFileUploadError instanceof Function && n.onFileUploadError(e), this._msgHash[n.id].reject({
                        type: d.WEBIM_UPLOADFILE_ERROR,
                        message: "Failed to upload the merge message.Please try again",
                        data: t
                      });
                    }
                  });
                },
                fail: function fail(e) {
                  G.debug("write file fail", e), this._msgHash[n.id].reject({
                    type: d.WEBIM_UPLOADFILE_ERROR,
                    message: "Failed to upload the merge message.Please try again",
                    data: e
                  });
                }
              });
            } else {
              var v = new File([f], "combine", {
                  type: "application/octet-stream"
                }),
                _ = {
                  url: URL.createObjectURL(v),
                  filename: n.id,
                  data: v
                };
              n.file = _, n.onFileUploadComplete = function (e) {
                m(e);
              }, n.onFileUploadError = function (e) {
                a instanceof Function && a(e), o._msgHash[n.id].reject({
                  type: d.WEBIM_UPLOADFILE_ERROR,
                  message: "Failed to upload the merge message.Please try again",
                  data: e
                });
              }, $.uploadFile.call(o, n, E.UPLOAD_MSG_ATTACH);
            }
          });
        }
        "img" === e.type && (n.body || (n.body = _Fe(_Fe({}, n), {
          size: {
            width: n.width || 0,
            height: n.height || 0
          }
        }))), null === (r = null === (t = this._localCache) || void 0 === t ? void 0 : t.getInstance()) || void 0 === r || r.storeMessage(e, oe.INPROGRESS);
        var s = Tt.call(this, n);
        St.call(this, s);
      }
      function _t(e) {
        for (var t = Uint8Array.from("cm", function (e) {
            return e.charCodeAt(0);
          }), r = 0; r < e.length; r++) {
          for (var o = e[r], n = _Fe(_Fe({}, o), {
              isBuildCombinedMsg: !0
            }), i = this.mSync.encodeChatMsg.call(this, n), a = i.length, s = new Uint8Array(4), c = 0; c < 4; c++) {
            s[c] = a >> 8 * (3 - c) & 255;
          }
          G.debug("message length:", s);
          var u = new Uint8Array(t.length + s.length + i.length);
          u.set(t), u.set(s, t.length), u.set(i, t.length + s.length), t = u;
        }
        var l = new Uint8Array(t.length + 1),
          d = 0;
        for (r = 2; r < t.length; r++) {
          r % 2 == 1 && (d ^= t[r]);
        }
        return l.set(t), G.debug("checkResult:", d), l[t.length] = d, l;
      }
      function Rt(e, t, r) {
        var o = [],
          n = this.root.lookup("easemob.pb.MUCBody"),
          i = n.decode(o);
        i.mucId = {
          appKey: this.appKey,
          name: e,
          domain: "conference.easemob.com"
        }, i.operation = "join" === r ? 2 : 3, i.from = {
          name: this.context.userId
        }, i.isChatroom = !0, i = n.encode(i).finish();
        var a = this.root.lookup("easemob.pb.Meta").decode(o);
        a.id = t, a.from = {
          appKey: this.appKey,
          name: this.context.userId,
          domain: "easemob.com",
          client_resource: this.context.jid.clientResource
        }, a.to = {
          domain: "easemob.com"
        }, a.ns = 2, a.payload = i;
        var s = this.root.lookup("easemob.pb.CommSyncUL"),
          c = s.decode(o);
        c.meta = a, c = s.encode(c).finish();
        var u = this.root.lookup("easemob.pb.MSync"),
          l = u.decode(o);
        return l.version = this.version, l.encryptType = this.encryptType, l.command = 0, l.payload = c, u.encode(l).finish();
      }
      function Ot(e, t) {
        var r = $.getUniqueId(),
          o = Rt.call(this, e.roomId, r, t);
        return St.call(this, _Fe(_Fe({}, e), {
          isHandleChatroom: !0,
          joinMsg: o,
          id: r,
          operation: t
        }), r);
      }
      function It(e) {
        var t = this;
        return new Promise(function (r, o) {
          var n, i, a, s, c, u;
          if (t.logOut) return o({
            type: d.WEBIM_CONNECTION_CLOSED,
            message: "not login"
          });
          if (!e.id || "string" != typeof e.id || "" === e.id) return o({
            type: d.MESSAGE_PARAMETER_ERROR,
            message: 'Missing required parameter: "id"'
          });
          if (!e.to || "string" != typeof e.to || "" === e.to) return o({
            type: d.MESSAGE_PARAMETER_ERROR,
            message: 'Missing required parameter: "to"'
          });
          var l = "file" === e.type || "img" === e.type || "audio" === e.type || "video" === e.type,
            p = "delivery" === e.type || "read" === e.type || "channel" === e.type,
            h = "cmd" === e.type,
            f = "recall" === e.type,
            m = null == e ? void 0 : e.editMessageId,
            g = !(p || f || h || m);
          if (e.id) {
            if (!l && !p || l && t.useOwnUploadFun) {
              var y = "recall" === e.type ? E.SEND_RECALL_MSG : E.SEND_MSG;
              m && (y = E.MODIFY_MESSAGE), I.size <= S && I.set(e.id, {
                rpt: t.dataReport.geOperateFun({
                  operationName: y
                })
              });
            }
            g && (null === (i = null === (n = t._localCache) || void 0 === n ? void 0 : n.getInstance()) || void 0 === i || i.storeMessage(e, oe.CREATE)), t._msgHash[e.id] = _Fe(_Fe({}, e), {
              resolve: r,
              reject: o
            });
          }
          if (l || "combine" === e.type) return vt.call(t, e);
          if ("txt" === e.type && (null === (a = e.msgConfig) || void 0 === a ? void 0 : a.languages) && Array.isArray(null === (s = e.msgConfig) || void 0 === s ? void 0 : s.languages) && e.msgConfig.languages.length > 0) {
            var T = t.translateMessage || t.translation.translateMessage;
            if (!T) throw new Error("there is no method to translate message");
            T.call(t, {
              text: e.msg,
              languages: e.msgConfig.languages
            }).then(function (r) {
              var o,
                n,
                i,
                a = null === (o = r.data[0]) || void 0 === o ? void 0 : o.translations;
              a = a.map(function (e) {
                return {
                  code: e.to,
                  text: e.text
                };
              }), e.translations = a, t._msgHash[e.id].translations = a, null === (i = null === (n = t._localCache) || void 0 === n ? void 0 : n.getInstance()) || void 0 === i || i.storeMessage(e, oe.INPROGRESS);
              var s = Tt.call(t, e);
              St.call(t, s, e.id);
            }).catch(function (e) {
              o(e);
            });
          } else {
            g && (null === (u = null === (c = t._localCache) || void 0 === c ? void 0 : c.getInstance()) || void 0 === u || u.storeMessage(e, oe.INPROGRESS));
            var v = Tt.call(t, e);
            St.call(t, v, e.id);
          }
        });
      }
      function St(e, t) {
        var r,
          o,
          n = this;
        if (e.isHandleChatroom) {
          if (!this.isOpened()) {
            var i = {
              data: "",
              type: d.WEBIM_CONNCTION_DISCONNECTED,
              message: "websocket has been disconnected"
            };
            return Promise.reject(i);
          }
          return new Promise(function (r, o) {
            var i;
            n._msgHash[e.id] = _Fe(_Fe({}, e), {
              resolve: r,
              reject: o
            }), i = "miniCore" === n.name ? e.joinMsg : Je.call(n, e.joinMsg, t), n.sock.send(i);
          });
        }
        if (!this.isOpened()) return null === (r = this.unMSyncSendMsgMap) || void 0 === r || r.set(t, e), !this.logOut && this.autoReconnectNumTotal < this.autoReconnectNumMax && (this.autoReconnectNumTotal <= this.socketHost.length && this.isHttpDNS || !this.isHttpDNS) && (G.debug("need to reconnect", this.autoReconnectNumTotal, this.autoReconnectNumMax), this.offLineSendConnecting = !0, this.reconnecting || this.reconnect()), void (this.onError && this.onError({
          type: d.WEBIM_CONNCTION_DISCONNECTED,
          message: "websocket has been disconnected"
        }));
        o = "miniCore" === this.name ? e : Je.call(this, e, t), this.sock.send(o);
      }
      var Ct = function Ct(e, t) {
          return e.send = It, e.sendMsg = It, G.debug("init Msync by ".concat(e.name)), {
            generateProvision: Ve.bind(e),
            base64transform: Je.bind(e),
            distributeMeta: Xe.bind(e),
            decodeMeta: Ye.bind(e),
            decodeUnreadDL: Qe.bind(e),
            _rebuild: $e.bind(e),
            _lastsession: rt.bind(e),
            receiveProvision: it.bind(e),
            isInQueue: pt.bind(e),
            decodeNotice: ht.bind(e),
            decodeMSync: mt.bind(e),
            distributeMSync: gt.bind(e),
            encodeChatMsg: Tt.bind(e),
            upLoadFile: vt.bind(e),
            send: It.bind(e),
            stopHeartBeat: lt.bind(e),
            handleChatRoom: Ot.bind(e)
          };
        },
        At = function () {
          function e(e, t, r) {
            this.handlerData = {}, this.handlerData = {}, e.addEventHandler = this.addEventHandler.bind(this), e.removeEventHandler = this.removeEventHandler.bind(this);
          }
          return e.prototype.addEventHandler = function (e, t) {
            this.handlerData[e] = t;
          }, e.prototype.removeEventHandler = function (e) {
            delete this.handlerData[e];
          }, e.prototype.dispatch = function (e, t) {
            for (var r in G.debug("dispatch event: " + e, t || ""), this.handlerData) {
              var o = this.handlerData[r][e];
              o && o(t);
            }
          }, e;
        }(),
        Nt = function Nt() {};
      function Mt(e) {
        this.onOpened = e.onOpened || Nt, this.onPresence = e.onPresence || Nt, this.onTextMessage = e.onTextMessage || Nt, this.onPictureMessage = e.onPictureMessage || Nt, this.onAudioMessage = e.onAudioMessage || Nt, this.onVideoMessage = e.onVideoMessage || Nt, this.onFileMessage = e.onFileMessage || Nt, this.onLocationMessage = e.onLocationMessage || Nt, this.onCmdMessage = e.onCmdMessage || Nt, this.onCustomMessage = e.onCustomMessage || Nt, this.onReceivedMessage = e.onReceivedMessage || Nt, this.onDeliveredMessage = e.onDeliveredMessage || Nt, this.onReadMessage = e.onReadMessage || Nt, this.onRecallMessage = e.onRecallMessage || Nt, this.onChannelMessage = e.onChannelMessage || Nt, this.onError = e.onError || Nt, this.onOffline = e.onOffline || Nt, this.onOnline = e.onOnline || Nt, this.onStatisticMessage = e.onStatisticMessage || Nt, this.onContactInvited = e.onContactInvited || Nt, this.onContactAgreed = e.onContactAgreed || Nt, this.onContactRefuse = e.onContactRefuse || Nt, this.onContactDeleted = e.onContactDeleted || Nt, this.onContactAdded = e.onContactAdded || Nt, this.onTokenWillExpire = e.onTokenWillExpire || Nt, this.onTokenExpired = e.onTokenExpired || Nt, this.onClosed = e.onClosed || Nt, this.onPresenceStatusChange = e.onPresenceStatusChange || Nt;
      }
      var bt = {
          biz: "",
          debug: !1,
          token: ""
        },
        Ut = "https://data-reporting.agora.io/report",
        wt = "https://data-reporting.sh.agoralab.co/report",
        Pt = function Pt(e) {
          var t = Number(g[e]);
          return t === g.USER_LOGIN ? "MANUALLOGIN" : t === g.MSYNC_SENDMESSAGE ? "SENDMESSAGE" : t > g.UNKNOWOPERATION && t < g.REST_OPERATE ? "REST" : t > g.REST_OPERATE && t < g.MSYNC_OPERATE ? "MESSAGE" : t > g.MSYNC_OPERATE && t < g.ROSTER_OPERATE ? "ROSTER" : t > g.ROSTER_OPERATE && t < g.USER_OPERATE ? "USER" : t > g.USER_OPERATE && t < g.GROUP_OPERATE ? "GROUP" : t > g.GROUP_OPERATE && t < g.CHATROOM_OPERATE ? "CHATROOM" : "OPERATION";
        },
        kt = function kt() {
          return new Date().getTime();
        },
        Lt = function Lt(e) {
          return [q.BAIDU, q.WX, q.DD, q.ZFB, q.TT, q.QUICK_APP, q.UNI].includes(e.platform);
        },
        Dt = function Dt() {
          return e = 1, t = 99999, e = Math.ceil(e), t = Math.floor(t), Math.floor(Math.random() * (t - e)) + e;
          var e, t;
        },
        Gt = {},
        xt = 1e3,
        Bt = function () {
          function e(e) {
            this.eventQueue = [], this.stock = xt, this.config = e, this.governor();
          }
          return e.prototype.add = function (e) {
            this.stock <= 0 ? console.warn("Event Report limit ".concat(xt, " per minute")) : (this.eventQueue.push(e), this.consume(), this.stock -= 1);
          }, e.prototype.consume = function () {
            var e = this;
            0 !== this.eventQueue.length && (this.timer && this.eventQueue.length <= 10 && clearTimeout(this.timer), this.timer = setTimeout(function () {
              var t,
                r = e.eventQueue.splice(0, 10),
                o = r.filter(function (e) {
                  return e.appId === r[0].appId;
                }),
                n = r.filter(function (e) {
                  return e.appId !== r[0].appId;
                });
              (t = e.eventQueue).unshift.apply(t, n), e.batchSend(o);
            }, 1e3));
          }, e.prototype.governor = function () {
            var e = this,
              t = setInterval(function () {
                e.stock = xt;
              }, 6e4);
            "undefined" != typeof addEventListener && addEventListener("beforeunload", function () {
              clearInterval(t);
            });
          }, e.prototype.batchSend = function (e) {
            var t, r;
            if (void 0 === e && (e = []), 0 !== e.length) try {
              var o = e.map(function (e) {
                e.biz, e.appId;
                var t = e.eventId,
                  r = function (e, t) {
                    var r = {};
                    for (var o in e) {
                      Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (r[o] = e[o]);
                    }
                    if (null != e && "function" == typeof Object.getOwnPropertySymbols) {
                      var n = 0;
                      for (o = Object.getOwnPropertySymbols(e); n < o.length; n++) {
                        t.indexOf(o[n]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[n]) && (r[o[n]] = e[o[n]]);
                      }
                    }
                    return r;
                  }(e, ["biz", "appId", "eventId"]);
                return {
                  eventId: Number(t),
                  body: r
                };
              });
              !function (e, t) {
                try {
                  var r = t.biz,
                    o = t.appId,
                    n = t.data,
                    i = t.debug,
                    a = t.onSuccess;
                  if (!r) throw new Error("biz is not defined");
                  Gt.global || (Gt = $.getEnvInfo());
                  var s = Gt;
                  if (Lt(s)) {
                    var c = {
                        url: i ? wt : Ut,
                        data: n,
                        method: "POST",
                        success: function success() {
                          null == a || a();
                        },
                        fail: function fail() {},
                        complete: function complete() {}
                      },
                      u = {
                        token: e,
                        appid: null != o ? o : "",
                        sendts: "".concat(Math.floor(new Date().getTime() / 1e3)),
                        biz: r,
                        debug: "".concat(i)
                      };
                    if ("zfb" === s.platform || "dd" === s.platform ? c.headers = u : c.header = u, "dd" === s.platform) return s.global.httpRequest(c);
                    s.global.request(c);
                  } else {
                    var l = new XMLHttpRequest();
                    l.onreadystatechange = function () {
                      2 === l.readyState && (null == a || a());
                    }, l.open("POST", i ? wt : Ut), l.setRequestHeader("Content-Type", "application/json"), l.setRequestHeader("token", e), l.setRequestHeader("appid", null != o ? o : ""), l.setRequestHeader("sendts", "".concat(Math.floor(new Date().getTime() / 1e3))), l.setRequestHeader("biz", r), l.setRequestHeader("debug", "".concat(i)), l.send(JSON.stringify(n));
                  }
                } catch (e) {
                  console.error(e);
                }
              }(this.config.token, {
                biz: null === (t = e[0]) || void 0 === t ? void 0 : t.biz,
                appId: null === (r = e[0]) || void 0 === r ? void 0 : r.appId,
                data: o,
                debug: this.config.debug,
                onSuccess: this.consume.bind(this)
              });
            } catch (e) {
              console.error(e);
            }
          }, e;
        }(),
        _jt = function jt() {
          return _jt = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _jt.apply(this, arguments);
        },
        Ht = new (function () {
          function e(e) {
            this.inited = !1, this.appId = "", this.biz = "", this.eventQueue = {}, this.config = bt, e && this.init(e);
          }
          return e.prototype.init = function (e) {
            var t;
            if (void 0 === e && (e = {}), !e.biz || !e.token) throw new Error("Event Report: biz or token is not defined");
            try {
              this.appId = null !== (t = e.appId) && void 0 !== t ? t : "", this.biz = e.biz, this.config = _jt(_jt({}, bt), e), this.eventQueue = new Bt(this.config), this.log(e), this.inited = !0;
            } catch (e) {
              console.error(e);
            }
          }, e.prototype.send = function (e, t, r) {
            var o;
            if (void 0 === t && (t = {}), this.inited) {
              var n = _jt(_jt({}, t), {
                eventId: Number(e),
                biz: this.biz,
                appId: null !== (o = null == r ? void 0 : r.appId) && void 0 !== o ? o : this.appId
              });
              this.eventQueue.add(n), this.log(n);
            } else console.error("Event Report: init is not called");
          }, e.prototype.log = function (e) {
            try {
              if (this.config.debug) {
                var t = e.payload,
                  r = function (e, t) {
                    var r = {};
                    for (var o in e) {
                      Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (r[o] = e[o]);
                    }
                    if (null != e && "function" == typeof Object.getOwnPropertySymbols) {
                      var n = 0;
                      for (o = Object.getOwnPropertySymbols(e); n < o.length; n++) {
                        t.indexOf(o[n]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[n]) && (r[o[n]] = e[o[n]]);
                      }
                    }
                    return r;
                  }(e, ["payload"]);
                console.log("%c Event Report: ".concat(this.config.biz, " "), "background: #8A97FC; color: #fff"), console.table(r), t && (console.info("payload:"), console.table(t));
              }
            } catch (e) {
              console.error(e);
            }
          }, e;
        }())(),
        _Ft = function Ft() {
          return _Ft = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _Ft.apply(this, arguments);
        },
        Wt = {
          requestName: "",
          subrequestid: "1",
          requestMethod: "GET",
          requestUrl: "",
          requestElapse: 0,
          code: 0,
          codeDesc: "",
          isLastApi: 0,
          isSuccess: 1
        },
        Kt = function () {
          function e(e) {
            this.platform = $.getEnvInfo(), this.isReportDt = e.isReport || !1, this.isCollectDt = !0, Lt(this.platform) && !this.isReportDt && (this.isCollectDt = !1), this.eventQueue = [], this.accessChannel = "direct", this.options = function (e, t) {
              t.platform || (t = $.getEnvInfo());
              var r = e.org,
                o = e.appkey,
                n = e.deviceId,
                i = e.sdkVersion,
                a = (null === navigator || void 0 === navigator ? void 0 : navigator.userAgent) || "".concat(t.platform, "_mini_program");
              return {
                org: r,
                appkey: o,
                deviceId: n,
                sdkServiceId: "sid_".concat($.getUniqueId(), "_").concat(Dt()),
                did: a,
                sdkVersion: i,
                os: 7,
                sdkProduct: _.web
              };
            }(e, this.platform), this.sid = this.options.sdkServiceId, this.init(e);
          }
          return e.getInstance = function () {
            return e.instance;
          }, e.prototype.getServiceId = function () {
            return this.sid || "sid_0";
          }, e.prototype.setIsReportDt = function (e) {
            this.isReportDt = e, e && this.rptEventQueue();
          }, e.prototype.setIsCollectDt = function (e) {
            this.isCollectDt = e, e || (this.eventQueue = []);
          }, e.prototype.rptEventQueue = function () {
            var e = this;
            this.eventQueue.length && this.eventQueue.forEach(function (t, r) {
              Ht.send(t.eventId, t.dt), r >= e.eventQueue.length - 1 && (e.eventQueue = []);
            });
          }, e.prototype.init = function (t) {
            e.instance || (e.instance = this, Ht.init({
              biz: "im",
              token: "32f24ab2ddb74f508aa9286c356cec84",
              appId: t.appkey,
              debug: !1
            }), this.reportInit());
          }, e.prototype.reportInit = function () {
            if (this.isCollectDt) {
              var e = this.options,
                t = e.did,
                r = e.os,
                o = e.sdkVersion,
                n = e.deviceId;
              this.reportData(9674, {
                did: t,
                os: r,
                sdkVersion: o,
                deviceId: n
              });
            }
          }, e.prototype.geOperateFun = function (e) {
            var t = this;
            if (!this.isCollectDt) return function () {};
            var r = 1,
              o = 0,
              n = "",
              i = kt(),
              a = e.uid,
              s = e.operationName;
            a && (this.uid = a);
            var c = {
              uid: this.uid,
              operationId: "opr_".concat($.getUniqueId(), "_").concat(Dt()),
              requestid: "req_".concat($.getUniqueId(), "_").concat(Dt()),
              operationName: s
            };
            return function (e) {
              var a, u, l, d;
              if (e.data.isSuccess ? (o = 0, n = "") : (0 === e.data.code && (e.data.code = A), o = null !== (a = e.data.code) && void 0 !== a ? a : o, n = null !== (u = e.data.codeDesc) && void 0 !== u ? u : n), (null === (l = e.data) || void 0 === l ? void 0 : l.accessChannel) && (t.accessChannel = null === (d = e.data) || void 0 === d ? void 0 : d.accessChannel), e.isRetry ? (r++, e.data.subrequestid = "".concat(r)) : (c.requestid = "req_".concat($.getUniqueId(), "_").concat(Dt()), r = 1), e.data.isLastApi) {
                var p = kt();
                e.data.requestElapse = p - i, e.data.requestMethod = "", e.data.subrequestid = "0", e.data.code = 200 === o ? 0 : o, e.data.codeDesc = n;
              } else e.data.requestName || (e.data.requestName = s);
              e.data.requestElapse || (e.data.requestElapse = kt() - i), t.reportData.call(t, C, _Ft(_Ft(_Ft(_Ft({}, Wt), c), e.data), {
                accessChannel: t.accessChannel,
                operationType: Pt(s)
              })), e.isEndApi && t.reportData.call(t, C, _Ft(_Ft(_Ft({}, c), Wt), {
                isSuccess: e.data.isSuccess,
                isLastApi: 1,
                subrequestid: "0",
                requestMethod: "",
                code: 200 === o ? 0 : o,
                codeDesc: n,
                requestElapse: e.data.requestElapse,
                accessChannel: t.accessChannel,
                operationType: Pt(s)
              }));
            };
          }, e.prototype.reportData = function (e, t) {
            return r = this, o = void 0, i = function i() {
              var r, o, n, i, a, s, c, u;
              return function (e, t) {
                var r,
                  o,
                  n,
                  i,
                  a = {
                    label: 0,
                    sent: function sent() {
                      if (1 & n[0]) throw n[1];
                      return n[1];
                    },
                    trys: [],
                    ops: []
                  };
                return i = {
                  next: s(0),
                  throw: s(1),
                  return: s(2)
                }, "function" == typeof Symbol && (i[Symbol.iterator] = function () {
                  return this;
                }), i;
                function s(i) {
                  return function (s) {
                    return function (i) {
                      if (r) throw new TypeError("Generator is already executing.");
                      for (; a;) {
                        try {
                          if (r = 1, o && (n = 2 & i[0] ? o.return : i[0] ? o.throw || ((n = o.return) && n.call(o), 0) : o.next) && !(n = n.call(o, i[1])).done) return n;
                          switch (o = 0, n && (i = [2 & i[0], n.value]), i[0]) {
                            case 0:
                            case 1:
                              n = i;
                              break;
                            case 4:
                              return a.label++, {
                                value: i[1],
                                done: !1
                              };
                            case 5:
                              a.label++, o = i[1], i = [0];
                              continue;
                            case 7:
                              i = a.ops.pop(), a.trys.pop();
                              continue;
                            default:
                              if (!((n = (n = a.trys).length > 0 && n[n.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
                                a = 0;
                                continue;
                              }
                              if (3 === i[0] && (!n || i[1] > n[0] && i[1] < n[3])) {
                                a.label = i[1];
                                break;
                              }
                              if (6 === i[0] && a.label < n[1]) {
                                a.label = n[1], n = i;
                                break;
                              }
                              if (n && a.label < n[2]) {
                                a.label = n[2], a.ops.push(i);
                                break;
                              }
                              n[2] && a.ops.pop(), a.trys.pop();
                              continue;
                          }
                          i = t.call(e, a);
                        } catch (e) {
                          i = [6, e], o = 0;
                        } finally {
                          r = n = 0;
                        }
                      }
                      if (5 & i[0]) throw i[1];
                      return {
                        value: i[0] ? i[1] : void 0,
                        done: !0
                      };
                    }([i, s]);
                  };
                }
              }(this, function (l) {
                switch (l.label) {
                  case 0:
                    return l.trys.push([0, 3,, 4]), r = kt(), o = 0, e !== C ? [3, 2] : [4, (d = this.platform, new Promise(function (e) {
                      var t;
                      d.platform || (d = $.getEnvInfo());
                      var r = "";
                      if (d.platform === q.WEB) {
                        var o = navigator.connection;
                        (null == o ? void 0 : o.type) ? (null == o || o.type, r = T.WIFI) : (null == o ? void 0 : o.effectiveType) && (r = T[o.effectiveType.toLocaleUpperCase()]), e(r);
                      } else d.platform === q.NODE ? (r = T.UNKNOWN, e(r)) : null === (t = d.global) || void 0 === t || t.getNetworkType({
                        success: function success(t) {
                          r = T[t.networkType.toLocaleUpperCase()], e(r);
                        }
                      });
                    }))];
                  case 1:
                    o = l.sent(), l.label = 2;
                  case 2:
                    return n = this.options, i = n.appkey, a = n.sdkServiceId, s = n.sdkProduct, c = _Ft({
                      lts: r,
                      net: o,
                      appkey: i,
                      sdkServiceId: a,
                      sdkProduct: s
                    }, t), this.isReportDt ? Ht.send(e, c) : this.isCollectDt && this.eventQueue.push({
                      eventId: e,
                      dt: c
                    }), [3, 4];
                  case 3:
                    return u = l.sent(), console.warn(u), [3, 4];
                  case 4:
                    return [2];
                }
                var d;
              });
            }, new ((n = void 0) || (n = Promise))(function (e, t) {
              function a(e) {
                try {
                  c(i.next(e));
                } catch (e) {
                  t(e);
                }
              }
              function s(e) {
                try {
                  c(i.throw(e));
                } catch (e) {
                  t(e);
                }
              }
              function c(t) {
                var r;
                t.done ? e(t.value) : (r = t.value, r instanceof n ? r : new n(function (e) {
                  e(r);
                })).then(a, s);
              }
              c((i = i.apply(r, o || [])).next());
            });
            var r, o, n, i;
          }, e;
        }(),
        qt = Kt;
      function zt() {
        var e = this.context.appName,
          t = this.context.orgName;
        return !(!e || !t) || (this.onError && this.onError({
          type: d.WEBIM_CONNCTION_AUTH_ERROR,
          message: "appName or orgName is illegal"
        }), !1);
      }
      function Vt() {
        var e;
        if (!this.context.accessToken) {
          var t = m.create({
            type: d.WEBIM_CONNCTION_TOKEN_NOT_ASSIGN_ERROR,
            message: "token not assign error"
          });
          return this.onError && this.onError(t), null === (e = this.eventHandler) || void 0 === e || e.dispatch("onError", t), !1;
        }
        return !0;
      }
      function Jt() {
        return Vt.call(this) && zt.call(this);
      }
      function Xt(e) {
        var t = e.data,
          r = e.type;
        return {
          data: {
            status: Object.keys(t.errorKeys).length > 0 ? "fail" : "success",
            errorKeys: t.errorKeys,
            successKeys: t.successKeys
          },
          type: r
        };
      }
      function Yt(e) {
        var t = e.data,
          r = void 0;
        return Object.keys(t.errorKeys).length > 0 && Object.keys(t.errorKeys).forEach(function (e) {
          var o = t.errorKeys[e];
          r = o.includes("is not part of you") ? m.create({
            type: d.NO_PERMISSION,
            message: o
          }) : o.includes("size of metadata for this single chatroom exceeds the user defined limit") || o.includes("total size of chatroom metadata for this app exceeds the user defined limit") || o.includes("is exceeding maximum limit") ? m.create({
            type: d.MAX_LIMIT,
            message: o
          }) : o.includes("is not Legal") ? m.create({
            type: d.REQUEST_PARAMETER_ERROR,
            message: o
          }) : o.includes("Failed to update userMetadata. Concurrent updates not allowed") ? m.create({
            type: d.OPERATION_NOT_ALLOWED,
            message: o
          }) : m.create({
            type: d.WEBIM_CONNCTION_AJAX_ERROR,
            message: o
          });
        }), r;
      }
      var _Qt = function Qt() {
          return _Qt = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _Qt.apply(this, arguments);
        },
        $t = function $t(e, t, r, o) {
          return new (r || (r = Promise))(function (n, i) {
            function a(e) {
              try {
                c(o.next(e));
              } catch (e) {
                i(e);
              }
            }
            function s(e) {
              try {
                c(o.throw(e));
              } catch (e) {
                i(e);
              }
            }
            function c(e) {
              var t;
              e.done ? n(e.value) : (t = e.value, t instanceof r ? t : new r(function (e) {
                e(t);
              })).then(a, s);
            }
            c((o = o.apply(e, t || [])).next());
          });
        },
        Zt = function Zt(e, t) {
          var r,
            o,
            n,
            i,
            a = {
              label: 0,
              sent: function sent() {
                if (1 & n[0]) throw n[1];
                return n[1];
              },
              trys: [],
              ops: []
            };
          return i = {
            next: s(0),
            throw: s(1),
            return: s(2)
          }, "function" == typeof Symbol && (i[Symbol.iterator] = function () {
            return this;
          }), i;
          function s(i) {
            return function (s) {
              return function (i) {
                if (r) throw new TypeError("Generator is already executing.");
                for (; a;) {
                  try {
                    if (r = 1, o && (n = 2 & i[0] ? o.return : i[0] ? o.throw || ((n = o.return) && n.call(o), 0) : o.next) && !(n = n.call(o, i[1])).done) return n;
                    switch (o = 0, n && (i = [2 & i[0], n.value]), i[0]) {
                      case 0:
                      case 1:
                        n = i;
                        break;
                      case 4:
                        return a.label++, {
                          value: i[1],
                          done: !1
                        };
                      case 5:
                        a.label++, o = i[1], i = [0];
                        continue;
                      case 7:
                        i = a.ops.pop(), a.trys.pop();
                        continue;
                      default:
                        if (!((n = (n = a.trys).length > 0 && n[n.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
                          a = 0;
                          continue;
                        }
                        if (3 === i[0] && (!n || i[1] > n[0] && i[1] < n[3])) {
                          a.label = i[1];
                          break;
                        }
                        if (6 === i[0] && a.label < n[1]) {
                          a.label = n[1], n = i;
                          break;
                        }
                        if (n && a.label < n[2]) {
                          a.label = n[2], a.ops.push(i);
                          break;
                        }
                        n[2] && a.ops.pop(), a.trys.pop();
                        continue;
                    }
                    i = t.call(e, a);
                  } catch (e) {
                    i = [6, e], o = 0;
                  } finally {
                    r = n = 0;
                  }
                }
                if (5 & i[0]) throw i[1];
                return {
                  value: i[0] ? i[1] : void 0,
                  done: !0
                };
              }([i, s]);
            };
          }
        },
        er = {
          chat: "singleChat",
          chatroom: "chatRoom",
          groupchat: "groupChat",
          singleChat: "singleChat",
          chatRoom: "chatRoom",
          groupChat: "groupChat"
        };
      function tr(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: this.apiUrl + "/" + o + "/" + n + "/users/" + this.user + "/blocks/users",
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i
            },
            success: function success(t) {
              var r = {};
              t.data.forEach(function (e) {
                r[e] = {
                  name: e
                };
              }), "function" == typeof (null == e ? void 0 : e.success) && e.success(t);
            },
            error: function error(t) {
              "function" == typeof (null == e ? void 0 : e.error) && e.error(t);
            }
          };
        return G.debug("Call getBlocklist"), j.call(this, a, E.GET_BLACK_LIST);
      }
      var rr = tr,
        or = nr;
      function nr(e) {
        var t = this;
        if (!Jt.call(this)) {
          var r = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(r);
        }
        var o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = {
            url: this.apiUrl + "/" + n + "/" + i + "/users/" + this.user + "/contacts/users",
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + a
            },
            success: function success(r) {
              var o = [];
              r.data.forEach(function (e) {
                o.push({
                  name: e,
                  subscription: "both",
                  jid: t.context.jid
                });
              }), "function" == typeof (null == e ? void 0 : e.success) && e.success(o);
            },
            error: function error(t) {
              "function" == typeof (null == e ? void 0 : e.error) && e.error(t);
            }
          };
        return G.debug("Call getContacts"), j.call(this, s, E.GET_CONTACTS);
      }
      function ir(e) {
        if ("string" != typeof e.deviceId || "" === e.deviceId) throw Error('Invalid parameter: "deviceId"');
        if ("string" != typeof e.deviceToken || "" === e.deviceToken) throw Error('Invalid parameter: "deviceToken"');
        if ("string" != typeof e.notifierName || "" === e.notifierName) throw Error('Invalid parameter: "notifierName"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(this.user),
            type: "PUT",
            data: JSON.stringify({
              device_id: e.deviceId,
              device_token: e.deviceToken,
              notifier_name: e.notifierName
            }),
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call uploadPushToken", e), j.call(this, a, E.UPLOAD_PUSH_TOKEN);
      }
      var ar = ir;
      function sr(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(this.user, "/user_channels"),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e && (null == e ? void 0 : e.success),
            error: e && (null == e ? void 0 : e.error)
          };
        return G.debug("Call getSessionList"), j.call(this, a, E.GET_SESSION_LIST);
      }
      function cr(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = !!(e && "number" == typeof e.pageNum && "number" == typeof e.pageSize && e.pageNum > 0 && e.pageSize > 0),
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(this.user, "/user_channels").concat(a ? "/page" : ""),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e && (null == e ? void 0 : e.success),
            error: e && (null == e ? void 0 : e.error)
          };
        return a && (s.data = {
          pageNum: e.pageNum,
          pageSize: e.pageSize
        }), G.debug("Call getConversationlist"), j.call(this, s, E.GET_SESSION_LIST).then(function (e) {
          return function (e) {
            var t = e.data.channel_infos;
            return null == t || t.forEach(function (e) {
              e.meta && "{}" !== JSON.stringify(e.meta) ? (e.meta.payload = JSON.parse(e.meta.payload), e.lastMessage = re(e.meta)) : e.lastMessage = e.meta, delete e.meta;
            }), e;
          }(e);
        });
      }
      function ur(e) {
        if (e && "string" != typeof e.channel) throw Error("Invalid parameter channel: ".concat(e.channel));
        if (e && "singleChat" !== e.chatType && "groupChat" !== e.chatType) throw Error("Invalid parameter chatType: ".concat(e.chatType));
        if (e && "boolean" != typeof e.deleteRoam) throw Error("Invalid parameter deleteRoam: ".concat(e.deleteRoam));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r,
          o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = o.jid;
        r = "singleChat" === e.chatType ? "chat" : "groupChat";
        var c = {
          url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/user/").concat(this.user, "/user_channel?resource=").concat(s.clientResource),
          dataType: "json",
          type: "DELETE",
          data: JSON.stringify({
            channel: e.channel,
            type: r,
            delete_roam: e.deleteRoam
          }),
          headers: {
            Authorization: "Bearer " + a,
            "Content-Type": "application/json"
          },
          success: e.success,
          error: e.error
        };
        return G.debug("Call deleteSession", e), j.call(this, c, E.DELETE_SESSION);
      }
      var lr = ur;
      function dr(e, t) {
        if (!Jt.call(this)) {
          var r = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(r);
        }
        var o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = ["nickname", "avatarurl", "mail", "phone", "gender", "sign", "birth", "ext"],
          c = {};
        if ("undefined" != typeof wx || "undefined" != typeof qq) {
          if ("string" == typeof e && void 0 !== t) {
            if (!s.includes(e)) throw new Error("illegal key, only these keys: nickname, avatarurl, mail, phone, gender, sign, birth, ext are allowed");
            c[e] = t;
          } else {
            if ("[object Object]" !== Object.prototype.toString.call(e)) throw new Error("illegal params");
            s.forEach(function (t) {
              s.includes(t) && void 0 !== e[t] && (c[t] = e[t]);
            });
          }
        } else if ("string" == typeof e) {
          if (!s.includes(e)) throw new Error("illegal key, only these keys: nickname, avatarurl, mail, phone, gender, sign, birth, ext are allowed");
          c = e + "=" + t;
        } else {
          if ("[object Object]" !== Object.prototype.toString.call(e)) throw new Error("illegal params");
          var u = [];
          s.forEach(function (t) {
            if (s.includes(t) && void 0 !== e[t]) {
              var r = encodeURIComponent(t),
                o = encodeURIComponent(e[t]);
              u.push(r + "=" + o);
            }
          }), c = u.join("&");
        }
        var l = {
          url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/metadata/user/").concat(this.user),
          type: "PUT",
          data: c,
          dataType: "json",
          headers: {
            Authorization: "Bearer " + a,
            "Content-Type": "application/x-www-form-urlencoded"
          }
        };
        return G.debug("Call updateOwnUserInfo", e), j.call(this, l, E.UPDATE_USER_INFO);
      }
      var pr = dr;
      function hr(e, t) {
        if (!Jt.call(this)) {
          var r = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(r);
        }
        var o,
          n = this.context,
          i = n.orgName,
          a = n.appName,
          s = n.accessToken,
          c = [];
        if ("string" == typeof e) c = [e];else {
          if ("[object Array]" !== Object.prototype.toString.call(e)) throw new Error("illegal params");
          c = e;
        }
        o = "string" == typeof t ? [t] : t && "[object Array]" === Object.prototype.toString.call(t) ? t : ["nickname", "avatarurl", "mail", "phone", "gender", "sign", "birth", "ext"];
        var u = {
          url: "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/metadata/user/get"),
          type: "POST",
          data: JSON.stringify({
            targets: c,
            properties: o
          }),
          dataType: "json",
          headers: {
            Authorization: "Bearer " + s,
            "Content-Type": "application/json"
          }
        };
        return G.debug("Call fetchUserInfoById", e), j.call(this, u, E.GET_USER_INFO);
      }
      function fr(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(this.user),
            type: "PUT",
            dataType: "json",
            data: JSON.stringify({
              nickname: e
            }),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call updateCurrentUserNick", e), j.call(this, a);
      }
      function mr(e) {
        if ("string" != typeof e || "" === e) throw Error('Invalid parameter: "token"');
        var t = this.context,
          r = t.orgName,
          o = t.appName,
          n = {
            url: "".concat(this.apiUrl, "/").concat(r, "/").concat(o, "/sdk/users/").concat(this.user, "/token/expires"),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + e,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call getTokenExpireTimestamp", e), j.call(this, n, E.SDK_INTERNAL);
      }
      function gr(e) {
        var t = this;
        return new Promise(function (r, o) {
          if (!e.queue) throw Error('Invalid parameter: "specified"');
          if (!Jt.call(t)) {
            var n = m.create({
              type: d.REST_PARAMS_STATUS,
              message: "appkey or token error"
            });
            return Promise.reject(n);
          }
          (function e(t) {
            var n = this,
              i = t.count || 20;
            Er.call(this, {
              count: i,
              isGroup: !!t.isGroup,
              queue: t.queue,
              start: t.start,
              format: t.format,
              success: function success(o) {
                if (o.msgs.length >= i || o.is_last) {
                  var a = o.msgs.splice(0, i).reverse();
                  t.success && t.success(a), r(a);
                } else e.call(n, _Qt(_Qt({}, t), {
                  start: null
                }));
              },
              fail: function fail(e) {
                o(e), t.fail && t.fail(e);
              }
            });
          }).call(t, e), G.debug("Call fetchHistoryMessages", e);
        });
      }
      function Er(e) {
        var t = this,
          r = e.queue,
          o = this.mr_cache[r] || (this.mr_cache[r] = {
            msgs: []
          }),
          n = this.context.userId,
          i = e.start || -1,
          a = e.count || 20;
        if (o.msgs.length >= a || o.is_last) "function" == typeof e.success && e.success(o);else {
          o && o.next_key && (i = o.next_key), e.start && (i = e.start);
          var s = {
              queue: r + (e.isGroup ? "@conference.easemob.com" : "@easemob.com"),
              start: i,
              end: -1
            },
            c = this.context,
            u = c.orgName,
            l = c.appName,
            p = {
              url: "".concat(this.apiUrl, "/").concat(u, "/").concat(l, "/users/").concat(n, "/messageroaming"),
              dataType: "json",
              type: "POST",
              headers: {
                Authorization: "Bearer " + this.token,
                "Content-Type": "application/json"
              },
              data: JSON.stringify(s),
              success: function success(r) {
                return $t(t, void 0, void 0, function () {
                  var t,
                    n,
                    i,
                    a,
                    s,
                    c,
                    u = this;
                  return Zt(this, function (l) {
                    switch (l.label) {
                      case 0:
                        if (t = null == r ? void 0 : r.data, !r.data.msgs) return "function" == typeof e.success && e.success(o), o.is_last = !0, o.next_key = "", [2];
                        n = t.msgs, i = n.length, o.is_last = t.is_last, o.next_key = t.next_key, a = function a(t) {
                          return $t(u, void 0, void 0, function () {
                            var r, o, n, i, a;
                            return Zt(this, function (s) {
                              switch (s.label) {
                                case 0:
                                  for (r = [], t = ee().atob(t), o = 0, n = t.length; o < n; ++o) {
                                    r.push(t.charCodeAt(o));
                                  }
                                  return i = (i = this.context.root.lookup("easemob.pb.Meta")).decode(r), a = {
                                    errorCode: 0,
                                    reason: ""
                                  }, 1 !== i.ns ? [3, 2] : [4, Ae.call(this, i, a, !0, e.format)];
                                case 1:
                                  return [2, s.sent()];
                                case 2:
                                  return [2];
                              }
                            });
                          });
                        }, s = 0, l.label = 1;
                      case 1:
                        return s < i ? [4, a(n[s].msg)] : [3, 4];
                      case 2:
                        (c = l.sent()) && o.msgs.push(c), l.label = 3;
                      case 3:
                        return s++, [3, 1];
                      case 4:
                        return "function" == typeof e.success && e.success(o), [2];
                    }
                  });
                });
              },
              error: function error(e) {
                if (e.error && e.error_description) {
                  var r = m.create({
                    type: d.WEBIM_CONNCTION_AJAX_ERROR,
                    message: "fetch history messages error",
                    data: e
                  });
                  t.onError && t.onError(r);
                }
              }
            };
          j.call(this, p, E.GET_HISTORY_MSG).catch(function (t) {
            "function" == typeof e.fail && e.fail(t);
          });
        }
      }
      function yr(e) {
        var t = this;
        return new Promise(function (r, o) {
          var n = e.targetId,
            i = e.cursor,
            a = void 0 === i ? -1 : i,
            s = e.pageSize,
            c = void 0 === s ? 20 : s,
            u = e.chatType,
            l = e.searchDirection,
            p = e.searchOptions,
            h = void 0 === p ? {} : p,
            f = h.msgTypes,
            g = void 0 === f ? [] : f,
            E = h.startTime,
            y = void 0 === E ? null : E,
            T = h.endTime,
            v = void 0 === T ? null : T,
            _ = h.from,
            R = void 0 === _ ? null : _;
          if ("string" != typeof n || "" === n) throw Error('"Invalid parameter": "targetId"');
          if (R && "string" != typeof R) throw Error('"Invalid parameter": "searchOptions.from"');
          if (g && !Array.isArray(g)) throw Error('"Invalid parameter": "searchOptions.msgTypes"');
          if (y && "number" != typeof y) throw Error('"Invalid parameter": "searchOptions.startTime"');
          if (v && "number" != typeof y) throw Error('"Invalid parameter": "searchOptions.endTime"');
          if (!Jt.call(t)) {
            var O = m.create({
              type: d.REST_PARAMS_STATUS,
              message: "appkey or token error"
            });
            return o(O);
          }
          var I = t.context,
            S = I.orgName,
            C = I.appName,
            A = I.userId,
            N = "groupChat" === e.chatType ? "@conference.easemob.com" : "@easemob.com",
            M = {
              queue: "".concat(n).concat(N),
              start: a,
              pull_number: c,
              is_positive: "down" === l,
              msgType: g.join(",") || "",
              end: -1,
              startTime: y,
              endTime: v,
              userId: "singleChat" === u ? null : R
            },
            b = {
              url: "".concat(t.apiUrl, "/").concat(S, "/").concat(C, "/users/").concat(A, "/messageroaming"),
              dataType: "json",
              type: "POST",
              headers: {
                Authorization: "Bearer " + t.token,
                "Content-Type": "application/json"
              },
              data: JSON.stringify(M),
              success: function success(o) {
                return $t(t, void 0, void 0, function () {
                  var t,
                    n,
                    i,
                    a,
                    s,
                    c,
                    u,
                    l,
                    d = this;
                  return Zt(this, function (p) {
                    switch (p.label) {
                      case 0:
                        t = null == o ? void 0 : o.data, n = t.msgs || [], i = function i(e) {
                          return $t(d, void 0, void 0, function () {
                            var t, r, o, n, i;
                            return Zt(this, function (a) {
                              switch (a.label) {
                                case 0:
                                  for (t = [], e = ee().atob(e), r = 0, o = e.length; r < o; ++r) {
                                    t.push(e.charCodeAt(r));
                                  }
                                  return n = (n = this.context.root.lookup("easemob.pb.Meta")).decode(t), i = {
                                    errorCode: 0,
                                    reason: ""
                                  }, 1 !== n.ns ? [3, 2] : [4, Ae.call(this, n, i, !0, !0)];
                                case 1:
                                  return [2, a.sent()];
                                case 2:
                                  return [2];
                              }
                            });
                          });
                        }, a = [], s = 0, p.label = 1;
                      case 1:
                        return s < n.length ? [4, i(n[s].msg)] : [3, 4];
                      case 2:
                        (c = p.sent()) && a.push(c), p.label = 3;
                      case 3:
                        return s++, [3, 1];
                      case 4:
                        return t.msgs = a, u = {
                          cursor: t.next_key,
                          messages: a,
                          isLast: t.is_last
                        }, null === (l = e.success) || void 0 === l || l.call(e, u), r(u), [2];
                    }
                  });
                });
              },
              error: e.fail
            };
          j.call(t, b).catch(function (e) {
            o(e);
          }), G.debug("Call getHistoryMessages", e);
        });
      }
      function Tr(e, t) {
        return $t(this, void 0, void 0, function () {
          var r, o, n, i, a, s, c;
          return Zt(this, function (u) {
            switch (u.label) {
              case 0:
                if (!Jt.call(this)) return r = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(r)];
                if ("string" != typeof e || "" === e) throw Error('"Invalid parameter": "to"');
                return G.debug("Call addContact", e, t), o = this.context, n = o.orgName, i = o.appName, a = o.accessToken, s = o.jid, c = {
                  url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(this.user, "/contacts/apply?resource=").concat(s.clientResource),
                  type: "POST",
                  dataType: "json",
                  data: JSON.stringify({
                    usernames: [e],
                    reason: t
                  }),
                  headers: {
                    Authorization: "Bearer " + a,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, c, E.ROSTER_ADD)];
              case 1:
                return u.sent(), [2];
            }
          });
        });
      }
      var vr = _r;
      function _r(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s;
          return Zt(this, function (c) {
            switch (c.label) {
              case 0:
                if (!Jt.call(this)) return t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)];
                if ("string" != typeof e || "" === e) throw Error('"Invalid parameter": "to"');
                return G.debug("Call deleteContact", e), r = this.context, o = r.orgName, n = r.appName, i = r.accessToken, a = r.jid, s = {
                  url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(this.user, "/contacts/users/").concat(e, "?resource=").concat(a.clientResource),
                  type: "DELETE",
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + i,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, s, E.ROSTER_REMOVE)];
              case 1:
                return c.sent(), [2];
            }
          });
        });
      }
      function Rr(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s;
          return Zt(this, function (c) {
            switch (c.label) {
              case 0:
                if (!Jt.call(this)) return t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)];
                if ("string" != typeof e || "" === e) throw Error('"Invalid parameter": "to"');
                return G.debug("Call acceptInvitation", e), r = this.context, o = r.orgName, n = r.appName, i = r.accessToken, a = r.jid, s = {
                  url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(this.user, "/contacts/accept/users/").concat(e, "?resource=").concat(a.clientResource),
                  type: "POST",
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + i,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, s, E.ROSTER_ACCEPT)];
              case 1:
                return c.sent(), [2];
            }
          });
        });
      }
      var Or = Rr;
      function Ir(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s;
          return Zt(this, function (c) {
            switch (c.label) {
              case 0:
                if (!Jt.call(this)) return t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)];
                if ("string" != typeof e || "" === e) throw Error('"Invalid parameter": "to"');
                return G.debug("Call declineInvitation", e), r = this.context, o = r.orgName, n = r.appName, i = r.accessToken, a = r.jid, s = {
                  url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(this.user, "/contacts/decline/users/").concat(e, "?resource=").concat(a.clientResource),
                  type: "POST",
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + i,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, s, E.ROSTER_DECLINE)];
              case 1:
                return c.sent(), [2];
            }
          });
        });
      }
      var Sr = Ir;
      function Cr(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c, u;
          return Zt(this, function (l) {
            switch (l.label) {
              case 0:
                if (!Jt.call(this)) return t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)];
                if (r = e.name, o = [], "string" == typeof r) {
                  if ("" === r) throw Error('"Invalid parameter": "name"');
                  o = [r];
                } else {
                  if (!Array.isArray(r)) throw Error('"Invalid parameter": "name"');
                  o = r;
                }
                return G.debug("Call addToBlockList", e), n = this.context, i = n.orgName, a = n.appName, s = n.accessToken, c = n.jid, u = {
                  url: "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/sdk/user/").concat(this.user, "/blocks?resource=").concat(c.clientResource),
                  type: "POST",
                  dataType: "json",
                  data: JSON.stringify({
                    usernames: o
                  }),
                  headers: {
                    Authorization: "Bearer " + s,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, u, E.ROSTER_BAN).then(function (e) {
                  return {
                    type: e.type,
                    data: {
                      userIds: (null == e ? void 0 : e.data) || []
                    }
                  };
                })];
              case 1:
                return [2, l.sent()];
            }
          });
        });
      }
      var Ar = Cr,
        Nr = Cr;
      function Mr(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c, u;
          return Zt(this, function (l) {
            switch (l.label) {
              case 0:
                if (!Jt.call(this)) return t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)];
                if (r = e.name, o = [], "string" == typeof r) {
                  if ("" === r) throw Error('"Invalid parameter": "name"');
                  o = [r];
                } else {
                  if (!Array.isArray(r)) throw Error('"Invalid parameter": "name"');
                  o = r;
                }
                return G.debug("Call removeFromBlockList", e), n = this.context, i = n.orgName, a = n.appName, s = n.accessToken, c = n.jid, u = {
                  url: "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/sdk/user/").concat(this.user, "/blocks?resource=").concat(c.clientResource),
                  type: "DELETE",
                  dataType: "json",
                  data: JSON.stringify({
                    usernames: o
                  }),
                  headers: {
                    Authorization: "Bearer " + s,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, u, E.ROSTER_ALLOW)];
              case 1:
                return l.sent(), [2];
            }
          });
        });
      }
      var br = Mr,
        Ur = Mr;
      function wr(e) {
        var t = this,
          r = this.getUniqueId(),
          o = {
            id: r,
            to: e.to
          };
        this._msgHash[r] = _Qt({}, o);
        var n = "";
        void 0 !== e.chatType ? n = e.chatType : void 0 !== e.type && (n = "chat" === e.type ? "singleChat" : e.type);
        var i = {
          id: r,
          type: "recall",
          chatType: n,
          ackId: e.mid,
          to: e.to,
          isChatThread: e.isChatThread || !1,
          success: function success(r) {
            return $t(t, void 0, void 0, function () {
              var t, o, i, a, s, c, u, l, d;
              return Zt(this, function (p) {
                switch (p.label) {
                  case 0:
                    return p.trys.push([0, 5,, 6]), "singleChat" !== n && "groupChat" !== n ? [3, 4] : [4, null === (i = null === (o = this._localCache) || void 0 === o ? void 0 : o.getInstance()) || void 0 === i ? void 0 : i.removeMsgByServerMsgId(e.mid)];
                  case 1:
                    return p.sent(), [4, null === (s = null === (a = this._localCache) || void 0 === a ? void 0 : a.getInstance()) || void 0 === s ? void 0 : s.getConversationLastMessage(e.to, n)];
                  case 2:
                    return t = p.sent(), [4, null === (u = null === (c = this._localCache) || void 0 === c ? void 0 : c.getInstance()) || void 0 === u ? void 0 : u.updateLocalConversation(ne({
                      conversationId: e.to,
                      conversationType: n
                    }), {
                      lastMessageId: null == t ? void 0 : t.serverMsgId
                    })];
                  case 3:
                    p.sent(), p.label = 4;
                  case 4:
                    return null === (l = null == e ? void 0 : e.success) || void 0 === l || l.call(e, r), [3, 6];
                  case 5:
                    return p.sent(), null === (d = null == e ? void 0 : e.success) || void 0 === d || d.call(e, r), [3, 6];
                  case 6:
                    return [2];
                }
              });
            });
          },
          fail: e.fail
        };
        return G.debug("Call recallMessage", e), this.mSync.send(i, this);
      }
      function Pr(e) {
        var t = e || {},
          r = t.messageId,
          o = t.modifiedMessage;
        if (G.debug("Call modifyMessage", r, o), "" === r) throw Error('Invalid parameter: "messageId"');
        if ("txt" !== o.type) throw Error('Invalid parameter: "modifiedMessage.type"');
        return this.mSync.send(_Qt({
          editMessageId: r
        }, o));
      }
      function kr(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c, u;
          return Zt(this, function (l) {
            switch (l.label) {
              case 0:
                if ("string" != typeof e.messageId || !e.messageId) throw Error("Invalid parameter messageId: ".concat(e.messageId));
                if ("string" != typeof e.reaction || !e.reaction) throw Error("Invalid parameter reaction: ".concat(e.reaction));
                return Jt.call(this) ? (r = this.context, o = r.orgName, n = r.appName, i = r.accessToken, a = e.reaction, s = e.messageId, c = {
                  msgId: s,
                  message: a
                }, u = {
                  url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/reaction/user/").concat(this.user),
                  type: "POST",
                  data: JSON.stringify(c),
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + i,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, u)]) : (t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)]);
              case 1:
                return l.sent(), [2];
            }
          });
        });
      }
      function Lr(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c;
          return Zt(this, function (u) {
            switch (u.label) {
              case 0:
                if ("string" != typeof e.reaction || !e.reaction) throw Error("Invalid parameter reactionId: ".concat(e.reaction));
                return Jt.call(this) ? (r = this.context, o = r.orgName, n = r.appName, i = r.accessToken, a = e.messageId, s = e.reaction, c = {
                  url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/reaction/user/").concat(this.user, "?msgId=").concat(a, "&message=").concat(s),
                  type: "DELETE",
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + i,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, c)]) : (t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)]);
              case 1:
                return u.sent(), [2];
            }
          });
        });
      }
      function Dr(e) {
        if ("string" != typeof e.chatType || !e.chatType) throw Error("Invalid parameter chatType: ".concat(e.chatType));
        if (!e.messageId) throw Error("Invalid parameter messageId: ".concat(e.messageId));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.chatType,
          s = e.messageId,
          c = {
            msgIdList: "string" == typeof s ? [s] : s,
            msgType: "singleChat" === a ? "chat" : "groupchat",
            groupId: e.groupId || null
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/reaction/user/").concat(this.user),
            type: "GET",
            data: c,
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, u).then(function (e) {
          var t = e.data;
          return null == t || t.forEach(function (e) {
            null == e || e.reactionList.forEach(function (e) {
              e.isAddedBySelf = e.state, delete e.state, delete e.reactionId;
            });
          }), e;
        });
      }
      var Gr = Dr;
      function xr(e) {
        if ("string" != typeof e.reaction || !e.reaction) throw Error("Invalid parameter reaction: ".concat(e.reaction));
        if ("string" != typeof e.messageId || !e.messageId) throw Error("Invalid parameter messageId: ".concat(e.messageId));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.cursor,
          s = e.pageSize,
          c = {
            msgId: e.messageId,
            message: e.reaction,
            currentPage: a || null,
            pageSize: s || 20
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/reaction/user/").concat(this.user, "/detail"),
            type: "GET",
            data: c,
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, u).then(function (e) {
          return e.data.isAddedBySelf = e.data.state, delete e.data.state, delete e.data.reactionId, e;
        });
      }
      function Br(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c, u, l, p;
          return Zt(this, function (h) {
            switch (h.label) {
              case 0:
                if ("string" != typeof e.reportType || !e.reportType) throw Error("Invalid parameter reportType: ".concat(e.reportType));
                if ("string" != typeof e.messageId || !e.messageId) throw Error("Invalid parameter messageId: ".concat(e.messageId));
                if ("string" != typeof e.reportReason || !e.reportReason) throw Error("Invalid parameter messageId: ".concat(e.reportReason));
                return Jt.call(this) ? (r = this.context, o = r.orgName, n = r.appName, i = r.accessToken, a = e.reportType, s = e.reportReason, c = e.messageId, u = {
                  username: this.user,
                  reportType: a,
                  reportReason: s
                }, l = "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/user/").concat(this.user, "/moderation/report/message/").concat(c), p = {
                  url: l,
                  type: "POST",
                  data: JSON.stringify(u),
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + i,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, p)]) : (t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)]);
              case 1:
                return h.sent(), [2];
            }
          });
        });
      }
      function jr(e) {
        var t;
        return $t(this, void 0, void 0, function () {
          var r, o, n, i, a, s, c, u, l;
          return Zt(this, function (p) {
            switch (p.label) {
              case 0:
                if ("string" != typeof e.targetId || "" === e.targetId) throw Error('"Invalid parameter targetId": ' + e.targetId);
                if (!["singleChat", "groupChat"].includes(e.chatType)) throw Error('"Invalid parameter chatType": ' + e.chatType);
                if (e.beforeTimeStamp && ("number" != typeof e.beforeTimeStamp || e.beforeTimeStamp < 0 || (null === (t = e.beforeTimeStamp) || void 0 === t ? void 0 : t.toString().length) > 18)) throw Error('"Invalid parameter beforeTimeStamp": ' + e.beforeTimeStamp);
                if (e.messageIds && !(Array.isArray(e.messageIds) && e.messageIds.length > 0 && e.messageIds.length <= 20)) throw Error('"Invalid parameter messageIds": ' + e.messageIds);
                if (!e.messageIds && !e.beforeTimeStamp) throw Error("messageIds or beforeTimeStamp field is required.");
                return Jt.call(this) ? (o = this.context, n = o.orgName, i = o.appName, a = o.userId, s = "singleChat" === e.chatType ? "userId" : "groupId", c = "singleChat" === e.chatType ? "chat" : "group", u = e.messageIds ? "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/sdk/message/roaming/").concat(c, "/user/").concat(a, "?").concat(s, "=").concat(e.targetId, "&msgIdList=").concat(e.messageIds, "&resource=").concat(this.clientResource) : "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/sdk/message/roaming/").concat(c, "/user/").concat(a, "/time?").concat(s, "=").concat(e.targetId, "&delTime=").concat(e.beforeTimeStamp, "&&resource=").concat(this.clientResource), l = {
                  url: u,
                  dataType: "json",
                  type: "DELETE",
                  headers: {
                    Authorization: "Bearer " + this.token,
                    "Content-Type": "application/json"
                  }
                }, G.debug("Call removeHistoryMessages", e), [4, j.call(this, l)]) : (r = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(r)]);
              case 1:
                return p.sent(), [2];
            }
          });
        });
      }
      function Hr(e) {
        var t = this;
        if (!Jt.call(this)) {
          var r = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(r);
        }
        if ((null == e ? void 0 : e.pageSize) && "number" != typeof e.pageSize) throw Error("Invalid parameter pageSize: ".concat(e.pageSize));
        if ((null == e ? void 0 : e.cursor) && "string" != typeof e.cursor) throw Error("Invalid parameter cursor: ".concat(e.cursor));
        var o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = {
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/sdk/user/").concat(this.user, "/user_channels/list?"),
            type: "GET",
            dataType: "json",
            data: {
              limit: (null == e ? void 0 : e.pageSize) || 20,
              cursor: (null == e ? void 0 : e.cursor) || ""
            },
            headers: {
              Authorization: "Bearer " + a,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call getServerConversations", e), new Promise(function (e, r) {
          j.call(t, s, E.GET_SESSION_LIST).then(function (r) {
            return $t(t, void 0, void 0, function () {
              var t,
                o = this;
              return Zt(this, function (n) {
                switch (n.label) {
                  case 0:
                    return t = Fr(r), this._localCache ? [4, Promise.all(t.data.conversations.map(function (e) {
                      return $t(o, void 0, void 0, function () {
                        var t,
                          r,
                          o = this;
                        return Zt(this, function (n) {
                          return null === (r = null === (t = this._localCache) || void 0 === t ? void 0 : t.getInstance()) || void 0 === r || r.storeMessage(e.lastMessage, oe.SUCCESS, !0).then(function () {
                            var t, r;
                            null === (r = null === (t = o._localCache) || void 0 === t ? void 0 : t.getInstance()) || void 0 === r || r.updateLocalConversation(ne({
                              conversationId: e.conversationId,
                              conversationType: e.conversationType
                            }), {
                              unReadCount: e.unReadCount
                            });
                          }), [2];
                        });
                      });
                    }))] : [3, 2];
                  case 1:
                    return n.sent(), e(t), [2];
                  case 2:
                    return e(t), [2];
                }
              });
            });
          }).catch(function (e) {
            r(e);
          });
        });
      }
      function Fr(e) {
        var t = e.data,
          r = t.cursor,
          o = t.channel_infos,
          n = [];
        null == o || o.forEach(function (e) {
          var t = null;
          (null == e ? void 0 : e.meta) && "{}" !== JSON.stringify(e.meta) && (e.meta.payload = JSON.parse(e.meta.payload), "delivery" !== (t = re(e.meta)).type && "read" !== t.type && "channel" !== t.type && (t.chatType = er[t.chatType]));
          var r = {
            conversationId: e.session_to,
            conversationType: "chat" === e.session_type ? "singleChat" : "groupChat",
            isPinned: e.is_top,
            pinnedTime: e.is_top ? e.update_top_status_time : 0,
            unReadCount: e.unread_num,
            lastMessage: t
          };
          n.push(r);
        });
        var i = {
          conversations: n,
          cursor: r || ""
        };
        return {
          type: e.type,
          data: i
        };
      }
      function Wr(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        if ((null == e ? void 0 : e.pageSize) && "number" != typeof e.pageSize) throw Error("Invalid parameter pageSize: ".concat(e.pageSize));
        if ((null == e ? void 0 : e.cursor) && "string" != typeof e.cursor) throw Error("Invalid parameter cursor: ".concat(e.cursor));
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/sdk/user/").concat(this.user, "/user_channels/list?"),
            type: "GET",
            dataType: "json",
            data: {
              limit: (null == e ? void 0 : e.pageSize) || 20,
              cursor: (null == e ? void 0 : e.cursor) || "",
              is_top: !0
            },
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call getServerConversations", e), j.call(this, a, E.GET_SESSION_LIST).then(function (e) {
          return Fr(e);
        });
      }
      function Kr(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c, u, l, p, h, f, g;
          return Zt(this, function (y) {
            if (!Jt.call(this)) return t = m.create({
              type: d.REST_PARAMS_STATUS,
              message: "appkey or token error"
            }), [2, Promise.reject(t)];
            if (r = e.conversationId, o = e.conversationType, n = e.isPinned, i = "singleChat" === o ? "chat" : "groupChat", "string" != typeof r || "" === r) throw Error("Invalid parameter conversationId: ".concat(r));
            if (!["singleChat", "groupChat"].includes(o)) throw Error("Invalid parameter conversationType: ".concat(o));
            if ("boolean" != typeof n) throw Error("Invalid parameter isPinned: ".concat(n));
            return a = this.context, s = a.orgName, c = a.appName, u = a.accessToken, l = a.jid, p = {
              type: i,
              to: r
            }, h = n ? "" : "type=".concat(i, "&to=").concat(r, "&"), f = "".concat(this.apiUrl, "/").concat(s, "/").concat(c, "/sdk/user/").concat(this.user, "/user_channel/top?").concat(h, "resource=").concat(l.clientResource), g = {
              url: f,
              type: n ? "POST" : "DELETE",
              dataType: "json",
              headers: {
                Authorization: "Bearer " + u,
                "Content-Type": "application/json"
              }
            }, n && (g.data = JSON.stringify(p)), G.debug("Call pinConversation", e), [2, j.call(this, g, E.PIN_CONVERSATION).then(function (e) {
              var t = e.type,
                r = e.data;
              return {
                type: t,
                data: {
                  isPinned: r.is_top || !1,
                  pinnedTime: r.is_top ? r.update_top_status_time : 0
                }
              };
            })];
          });
        });
      }
      function qr(e) {
        return $t(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c, u, l;
          return Zt(this, function (p) {
            switch (p.label) {
              case 0:
                if (t = e.userId, r = e.remark, !Jt.call(this)) return o = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(o)];
                if ("string" != typeof t || "" === t) throw Error('Invalid parameter: "userId"');
                if ("string" != typeof r) throw Error('Invalid parameter: "remark"');
                return G.debug("Call setContactRemark", e), n = this.context, i = n.orgName, a = n.appName, s = n.accessToken, c = n.jid, u = "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/users/").concat(this.context.userId, "/contacts/users/").concat(t, "?resource=").concat(c.clientResource), l = {
                  url: u,
                  type: "PUT",
                  data: JSON.stringify({
                    remark: r
                  }),
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + s,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, l, E.ROSTER_SET_CONTACT_REMARK)];
              case 1:
                return p.sent(), [2];
            }
          });
        });
      }
      function zr() {
        if (!Jt.call(this)) {
          var e = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(e);
        }
        var t = this.context,
          r = t.orgName,
          o = t.appName,
          n = t.accessToken,
          i = {
            url: "".concat(this.apiUrl, "/").concat(r, "/").concat(o, "/users/").concat(this.user, "/contacts/users?needReturnRemark=true"),
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + n
            }
          };
        return G.debug("Call getAllContacts"), j.call(this, i, E.ROSTER_GET_ALL_CONTACTS_REMARKS).then(function (e) {
          var t = ((null == e ? void 0 : e.entities) || []).map(function (e) {
            return {
              userId: e.username,
              remark: e.remark
            };
          });
          return {
            type: e.type,
            data: t
          };
        });
      }
      function Vr(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        G.debug("Call getContactsWithCursor", e);
        var r = e || {},
          o = r.pageSize,
          n = void 0 === o ? 20 : o,
          i = r.cursor,
          a = void 0 === i ? "" : i;
        if (n && "number" != typeof n) throw Error("Invalid parameter pageSize: ".concat(e.pageSize));
        var s = this.context,
          c = s.orgName,
          u = s.appName,
          l = s.accessToken,
          p = {
            url: "".concat(this.apiUrl, "/").concat(c, "/").concat(u, "/users/").concat(this.user, "/contacts?needReturnRemark=true&limit=").concat(n, "&cursor=").concat(a),
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + l
            }
          };
        return j.call(this, p, E.ROSTER_GET_ALL_CONTACTS_REMARKS_FROM_SERVER_BY_PAGE).then(function (e) {
          var t,
            r,
            o = (null === (t = null == e ? void 0 : e.data) || void 0 === t ? void 0 : t.contacts) || [],
            n = (null === (r = null == e ? void 0 : e.data) || void 0 === r ? void 0 : r.cursor) || "",
            i = o.map(function (e) {
              return {
                userId: e.username,
                remark: e.remark
              };
            });
          return {
            type: e.type,
            data: {
              cursor: n,
              contacts: i
            }
          };
        });
      }
      var Jr = function Jr(e, t, r, o) {
          return new (r || (r = Promise))(function (n, i) {
            function a(e) {
              try {
                c(o.next(e));
              } catch (e) {
                i(e);
              }
            }
            function s(e) {
              try {
                c(o.throw(e));
              } catch (e) {
                i(e);
              }
            }
            function c(e) {
              var t;
              e.done ? n(e.value) : (t = e.value, t instanceof r ? t : new r(function (e) {
                e(t);
              })).then(a, s);
            }
            c((o = o.apply(e, t || [])).next());
          });
        },
        Xr = function Xr(e, t) {
          var r,
            o,
            n,
            i,
            a = {
              label: 0,
              sent: function sent() {
                if (1 & n[0]) throw n[1];
                return n[1];
              },
              trys: [],
              ops: []
            };
          return i = {
            next: s(0),
            throw: s(1),
            return: s(2)
          }, "function" == typeof Symbol && (i[Symbol.iterator] = function () {
            return this;
          }), i;
          function s(i) {
            return function (s) {
              return function (i) {
                if (r) throw new TypeError("Generator is already executing.");
                for (; a;) {
                  try {
                    if (r = 1, o && (n = 2 & i[0] ? o.return : i[0] ? o.throw || ((n = o.return) && n.call(o), 0) : o.next) && !(n = n.call(o, i[1])).done) return n;
                    switch (o = 0, n && (i = [2 & i[0], n.value]), i[0]) {
                      case 0:
                      case 1:
                        n = i;
                        break;
                      case 4:
                        return a.label++, {
                          value: i[1],
                          done: !1
                        };
                      case 5:
                        a.label++, o = i[1], i = [0];
                        continue;
                      case 7:
                        i = a.ops.pop(), a.trys.pop();
                        continue;
                      default:
                        if (!((n = (n = a.trys).length > 0 && n[n.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
                          a = 0;
                          continue;
                        }
                        if (3 === i[0] && (!n || i[1] > n[0] && i[1] < n[3])) {
                          a.label = i[1];
                          break;
                        }
                        if (6 === i[0] && a.label < n[1]) {
                          a.label = n[1], n = i;
                          break;
                        }
                        if (n && a.label < n[2]) {
                          a.label = n[2], a.ops.push(i);
                          break;
                        }
                        n[2] && a.ops.pop(), a.trys.pop();
                        continue;
                    }
                    i = t.call(e, a);
                  } catch (e) {
                    i = [6, e], o = 0;
                  } finally {
                    r = n = 0;
                  }
                }
                if (5 & i[0]) throw i[1];
                return {
                  value: i[0] ? i[1] : void 0,
                  done: !0
                };
              }([i, s]);
            };
          }
        };
      function Yr(e) {
        if (!e || !e.data) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups?resource=").concat(a.clientResource),
            dataType: "json",
            type: "POST",
            data: JSON.stringify({
              owner: this.user,
              groupname: e.data.groupname,
              desc: e.data.desc,
              members: e.data.members,
              public: e.data.public,
              approval: e.data.approval,
              allowinvites: e.data.allowinvites,
              invite_need_confirm: e.data.inviteNeedConfirm,
              maxusers: e.data.maxusers,
              custom: e.data.ext
            }),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: function success(t) {
              e.success && e.success(t);
            },
            error: e.error
          };
        return G.debug("Call createGroup:", e), j.call(this, s, E.CREATE_GROUP);
      }
      var Qr = Yr;
      function $r(e) {
        var t;
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var r = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(r);
        }
        var o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = o.jid,
          c = {
            entities: [(t = {}, t["notification_ignore_" + e.groupId] = !0, t)]
          },
          u = {
            type: "PUT",
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(this.user, "?resource=").concat(s.clientResource),
            data: JSON.stringify(c),
            dataType: "json",
            headers: {
              Authorization: "Bearer " + a,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call blockGroupMessages", e), j.call(this, u, E.BLOCK_GROUP);
      }
      var Zr = $r;
      function eo(e) {
        if ("number" != typeof e.limit) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            limit: e.limit,
            cursor: e.cursor
          };
        e.cursor || delete a.cursor;
        var s = {
          url: this.apiUrl + "/" + o + "/" + n + "/publicchatgroups",
          type: "GET",
          dataType: "json",
          data: a,
          headers: {
            Authorization: "Bearer " + i,
            "Content-Type": "application/json"
          },
          success: e.success,
          error: e.error
        };
        return G.debug("Call listGroups", e), j.call(this, s, E.LIST_GROUP);
      }
      var to = eo;
      function ro(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: this.apiUrl + "/" + o + "/" + n + "/users/" + this.user + "/joined_chatgroups",
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e && (null == e ? void 0 : e.success),
            error: e && (null == e ? void 0 : e.error)
          };
        return G.debug("Call getJoinedGroups", e), j.call(this, a, E.GET_USER_GROUP);
      }
      function oo(e) {
        if ("number" != typeof e.pageNum || "number" != typeof e.pageSize) throw Error('Invalid parameter: "pageNum or pageSize"');
        if (e.pageNum < 0 || e.pageSize < 0) throw Error('"pageNum" should >= 0 and "pageSize" should >= 0');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.needAffiliations || e.needRole ? "/chatgroups/user/".concat(this.user, "?pagenum=").concat(e.pageNum, "&pagesize=").concat(e.pageSize, "&needAffiliations=").concat(e.needAffiliations, "&needRole=").concat(e.needRole) : "/users/".concat(this.user, "/joined_chatgroups?pagenum=").concat(e.pageNum, "&pagesize=").concat(e.pageSize),
          s = {
            url: this.apiUrl + "/" + o + "/" + n + a,
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e && (null == e ? void 0 : e.success),
            error: e && (null == e ? void 0 : e.error)
          };
        return G.debug("Call getGroup", e), j.call(this, s, E.GET_USER_GROUP).then(function (e) {
          var t = e.uri,
            r = e.entities,
            o = [];
          return t.includes("joined_chatgroups") || (r.forEach(function (e) {
            var t = {
              affiliationsCount: e.affiliations_count,
              groupName: e.name,
              groupId: e.groupId,
              role: e.permission,
              disabled: e.disabled,
              approval: e.membersonly,
              allowInvites: e.allowinvites,
              description: e.description,
              maxUsers: e.maxusers,
              public: e.public
            };
            o.push(t);
          }), e.entities = o), e;
        });
      }
      function no(e) {
        if ("string" != typeof e.groupId || "string" != typeof e.newOwner) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = {
            newowner: e.newOwner
          },
          o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = o.jid,
          c = {
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/chatgroups/").concat(e.groupId, "?resource=").concat(s.clientResource),
            type: "PUT",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + a,
              "Content-Type": "application/json"
            },
            data: JSON.stringify(r),
            success: e.success,
            error: e.error
          };
        return G.debug("Call changeOwner", e), j.call(this, c, E.CHANGE_OWNER);
      }
      var io = no;
      function ao(e) {
        if ("string" != typeof e.groupId && !Array.isArray(e.groupId)) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatgroups/" + e.groupId + "?joined_time=true",
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getGroupInfo", e), j.call(this, a, E.GET_GROUP_INFO);
      }
      function so(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            groupname: e.groupName,
            description: e.description,
            custom: e.ext
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "?resource=").concat(a.clientResource),
            type: "PUT",
            data: JSON.stringify(c),
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call modifyGroup", e), j.call(this, u, E.MODIFY_GROUP);
      }
      function co(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (isNaN(e.pageNum) || e.pageNum <= 0) throw Error('The parameter "pageNum" should be a positive number');
        if (isNaN(e.pageSize) || e.pageSize <= 0) throw Error('The parameter "pageSize" should be a positive number');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = {
            pagenum: e.pageNum,
            pagesize: e.pageSize
          },
          o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = {
            url: this.apiUrl + "/" + n + "/" + i + "/chatgroups/" + e.groupId + "/users",
            dataType: "json",
            type: "GET",
            data: r,
            headers: {
              Authorization: "Bearer " + a,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call listGroupMember", e), j.call(this, s, E.LIST_GROUP_MEMBER);
      }
      var uo = co;
      function lo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.groupId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatgroups/" + a + "/admin",
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getGroupAdmin", e), j.call(this, s, E.GET_GROUP_ADMIN);
      }
      function po(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            newadmin: e.username
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/admin?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(c),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call setGroupAdmin", e), j.call(this, u, E.SET_GROUP_ADMIN);
      }
      var ho = po;
      function fo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/admin/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call removeAdmin", e), j.call(this, u, E.REMOVE_GROUP_ADMIN);
      }
      var mo = fo;
      function go(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "?version=v3&resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call destroyGroup", e), j.call(this, c, E.DISSOLVE_GROUP);
      }
      var Eo = go;
      function yo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/quit?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call quitGroup", e), j.call(this, c, E.QUIT_GROUP);
      }
      var To = yo;
      function vo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Array.isArray(e.users)) throw Error('Invalid parameter: "users"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = e.groupId,
          o = {
            usernames: e.users
          },
          n = this.context,
          i = n.orgName,
          a = n.appName,
          s = n.accessToken,
          c = n.jid,
          u = {
            url: "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/chatgroups/").concat(r, "/invite?resource=").concat(c.clientResource),
            type: "POST",
            data: JSON.stringify(o),
            dataType: "json",
            headers: {
              Authorization: "Bearer " + s,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call inviteUsersToGroup", e), j.call(this, u, E.INVITE_TO_GROUP);
      }
      var _o = vo;
      function Ro(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(e.groupId, "/apply?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify({
              message: e.message || ""
            }),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call joinGroup", e), j.call(this, s, E.JOIN_GROUP);
      }
      function Oo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.applicant || "" === e.applicant) throw Error('Invalid parameter: "applicant"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            applicant: e.applicant,
            verifyResult: !0,
            reason: "no clue"
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/apply_verify?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(c),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call agreeJoinGroup", e), j.call(this, u, E.AGREE_JOIN_GROUP);
      }
      var Io = Oo;
      function So(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.applicant || "" === e.applicant) throw Error('Invalid parameter: "applicant"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            applicant: e.applicant,
            verifyResult: !1,
            reason: e.reason || ""
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/apply_verify?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(c),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call rejectGroupJoinRequest", e), j.call(this, u, E.REJECT_JOIN_GROUP);
      }
      var Co = So;
      function Ao(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.invitee || "" === e.invitee) throw Error('Invalid parameter: "invitee"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            invitee: e.invitee,
            verifyResult: !0
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/invite_verify?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(c),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call acceptGroupInvite", e), j.call(this, u, E.AGREE_INVITE_GROUP);
      }
      var No = Ao;
      function Mo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.invitee || "" === e.invitee) throw Error('Invalid parameter: "invitee"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            invitee: e.invitee,
            verifyResult: !1
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/invite_verify?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(c),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call rejectGroupInvite", e), j.call(this, u, E.REJECT_INVITE_GROUP);
      }
      var bo = Mo;
      function Uo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = e.groupId,
          o = e.username,
          n = this.context,
          i = n.orgName,
          a = n.appName,
          s = n.accessToken,
          c = n.jid,
          u = {
            url: "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/chatgroups/").concat(r, "/users/").concat(o, "?resource=").concat(c.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + s,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call removeGroupMember", e), j.call(this, u, E.REMOVE_GROUP_MEMBER);
      }
      var wo = Uo;
      function Po(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Array.isArray(e.users)) throw Error('Invalid parameter: "users"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = e.users.join(","),
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/users/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call removeGroupMembers", e), j.call(this, u, E.MULTI_REMOVE_GROUP_MEMBER);
      }
      var ko = Po;
      function Lo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!(Array.isArray(e.username) || "string" == typeof e.username && "" !== e.username)) throw Error('Invalid parameter: "username"');
        if ("number" != typeof e.muteDuration) throw Error('Invalid parameter: "muteDuration"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            usernames: "string" == typeof e.username ? [e.username] : e.username,
            mute_duration: e.muteDuration
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/mute?resource=").concat(a.clientResource),
            dataType: "json",
            type: "POST",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            data: JSON.stringify(c),
            success: e.success,
            error: e.error
          };
        return G.debug("Call muteGroupMember", e), j.call(this, u, E.MUTE_GROUP_MEMBER);
      }
      var Do = Lo;
      function Go(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!(Array.isArray(e.username) || "string" == typeof e.username && "" !== e.username)) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/mute/").concat(c, "?resource=").concat(a.clientResource),
            dataType: "json",
            type: "DELETE",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call unmuteGroupMember", e), j.call(this, u, E.UNMUTE_GROUP_MEMBER);
      }
      var xo = Go;
      function Bo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.groupId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatgroups/" + a + "/mute",
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getGroupMuteList", e), j.call(this, s, E.GET_GROUP_MUTE_LIST);
      }
      var jo = Bo,
        Ho = Bo;
      function Fo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/blocks/users/").concat(c, "?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call blockGroupMember", e), j.call(this, u, E.BLOCK_GROUP_MEMBER);
      }
      var Wo = Fo;
      function Ko(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Array.isArray(e.usernames)) throw Error('Invalid parameter: "usernames"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            usernames: e.usernames
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/blocks/users?resource=").concat(a.clientResource),
            data: JSON.stringify(c),
            type: "POST",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call blockGroupMembers", e), j.call(this, u, E.BLOCK_GROUP_MEMBERS);
      }
      var qo = Ko;
      function zo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/blocks/users/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call unblockGroupMember", e), j.call(this, u, E.UNBLOCK_GROUP_MEMBER);
      }
      var Vo = zo;
      function Jo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Array.isArray(e.usernames)) throw Error('Invalid parameter: "usernames"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = e.usernames.join(","),
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/blocks/users/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call unblockGroupMembers", e), j.call(this, u, E.UNBLOCK_GROUP_MEMBERS);
      }
      var Xo = Jo;
      function Yo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.groupId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatgroups/" + a + "/blocks/users",
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getGroupBlacklist", e), j.call(this, s, E.GET_GROUP_BLACK_LIST);
      }
      var Qo = Yo,
        $o = Yo;
      function Zo(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/ban?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call disableSendGroupMsg", e), j.call(this, c, E.DISABLED_SEND_GROUP_MSG);
      }
      function en(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/ban?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call enableSendGroupMsg", e), j.call(this, c, E.ENABLE_SEND_GROUP_MSG);
      }
      function tn(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Array.isArray(e.users)) throw Error('Invalid parameter: "users"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            usernames: e.users
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/white/users?resource=").concat(a.clientResource),
            type: "POST",
            data: JSON.stringify(c),
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call addUsersToGroupWhitelist", e), j.call(this, u, E.ADD_USERS_TO_GROUP_WHITE);
      }
      var rn = tn;
      function on(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.userName || "" === e.userName) throw Error('Invalid parameter: "userName"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/white/users/").concat(e.userName, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call removeGroupAllowlistMember", e), j.call(this, c, E.REMOVE_GROUP_WHITE_MEMBER);
      }
      var nn = on,
        an = on;
      function sn(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.groupId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatgroups/" + a + "/white/users",
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getGroupAllowlist", e), j.call(this, s, E.GET_GROUP_WHITE_LIST);
      }
      var cn = sn;
      function un(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.userName || "" === e.userName) throw Error('Invalid parameter: "userName"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.groupId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatgroups/" + a + "/white/users/" + e.userName,
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call isInGroupAllowlist", e), j.call(this, s, E.IS_IN_GROUP_WHITE_LIST);
      }
      var ln = un,
        dn = un;
      function pn(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.userId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/sdk/group/" + e.groupId + "/mute/" + a,
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i
            }
          };
        return G.debug("Call isInGroupMutelist", e), j.call(this, s).then(function (e) {
          return e.data;
        });
      }
      function hn(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.msgId || "" === e.msgId) throw Error('Invalid parameter: "msgId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatgroups/" + e.groupId + "/acks/" + e.msgId,
            dataType: "json",
            type: "GET",
            data: {
              limit: 500,
              key: void 0
            },
            headers: {
              Authorization: "Bearer " + i
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getGroupMsgReadUser", e), j.call(this, a, E.GET_GROUP_MSG_READ_USER);
      }
      function fn(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.groupId,
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(a, "/announcement"),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call fetchGroupAnnouncement", e), j.call(this, s, E.GET_GROUP_ANN);
      }
      function mn(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.announcement) throw Error('Invalid parameter: "announcement"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = {
            announcement: e.announcement
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/announcement?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(c),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call updateGroupAnnouncement", e), j.call(this, u, E.UPDATE_GROUP_ANN);
      }
      function gn(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("object" != _typeof(e.file)) throw Error('Invalid parameter: "file"');
        if (Jt.call(this)) {
          var t = this.context,
            r = t.orgName,
            o = t.appName,
            n = t.accessToken,
            i = t.jid,
            a = e.groupId;
          X.call(this, {
            uploadUrl: "".concat(this.apiUrl, "/").concat(r, "/").concat(o, "/chatgroups/").concat(a, "/share_files?resource=").concat(i.clientResource),
            onFileUploadProgress: e.onFileUploadProgress,
            onFileUploadComplete: e.onFileUploadComplete,
            onFileUploadError: e.onFileUploadError,
            onFileUploadCanceled: e.onFileUploadCanceled,
            accessToken: n,
            apiUrl: this.apiUrl,
            file: e.file,
            appKey: this.context.appKey
          }, E.UPLOAD_GROUP_FILE), G.debug("Call uploadGroupSharedFile", e);
        }
      }
      function En(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.fileId || "" === e.fileId) throw Error('Invalid parameter: "file"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.groupId,
          c = e.fileId,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(s, "/share_files/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call deleteGroupSharedFile", e), j.call(this, u, E.DELETE_GROUP_FILE);
      }
      function yn(e) {
        if ("string" != typeof e.groupId || "" === e.groupId) throw Error('Invalid parameter: "groupId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.pageNum || 1,
          s = e.pageSize || 10,
          c = e.groupId,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatgroups/").concat(c, "/share_files?pagenum=").concat(a, "&pagesize=").concat(s),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getGroupSharedFilelist", e), j.call(this, u, E.GET_GROUP_FILE_LIST);
      }
      var Tn = yn;
      function vn(e) {
        var t = this.context,
          r = t.orgName,
          o = t.appName,
          n = t.accessToken,
          i = this.apiUrl,
          a = e.groupId,
          s = e.fileId;
        Y.call(this, {
          url: "".concat(i, "/").concat(r, "/").concat(o, "/chatgroups/").concat(a, "/share_files/").concat(s),
          onFileDownloadComplete: e.onFileDownloadComplete,
          onFileDownloadError: e.onFileDownloadError,
          accessToken: n,
          id: s,
          secret: e.secret
        }, E.DOWN_GROUP_FILE), G.debug("Call downloadGroupSharedFile", e);
      }
      function _n(e) {
        return Jr(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c, u, l, p;
          return Xr(this, function (h) {
            switch (h.label) {
              case 0:
                if (t = e.groupId, r = e.userId, o = e.memberAttributes, "string" != typeof t || "" === t) throw Error('Invalid parameter: "groupId"');
                if ("string" != typeof r || "" === r) throw Error('Invalid parameter: "userId"');
                if ("object" != _typeof(o)) throw Error('Invalid parameter: "memberAttributes"');
                return Jt.call(this) ? (i = this.context, a = i.orgName, s = i.appName, c = i.accessToken, u = i.jid, l = {
                  metaData: o
                }, p = {
                  url: "".concat(this.apiUrl, "/").concat(a, "/").concat(s, "/sdk/metadata/chatgroup/").concat(t, "/user/").concat(r, "?resource=").concat(u.clientResource),
                  type: "PUT",
                  dataType: "json",
                  data: JSON.stringify(l),
                  headers: {
                    Authorization: "Bearer " + c,
                    "Content-Type": "application/json"
                  }
                }, G.debug("Call setGroupMemberAttributes", e), [4, j.call(this, p, E.SET_GROUP_MEMBER_ATTRS)]) : (n = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(n)]);
              case 1:
                return h.sent(), [2];
            }
          });
        });
      }
      function Rn(e) {
        var t = e.groupId,
          r = e.userId;
        return On.call(this, {
          groupId: t,
          userIds: [r]
        }).then(function (e) {
          var t;
          return {
            type: e.type,
            data: null === (t = e.data) || void 0 === t ? void 0 : t[r]
          };
        });
      }
      function On(e) {
        var t = e.groupId,
          r = e.userIds,
          o = e.keys,
          n = void 0 === o ? [] : o;
        if ("string" != typeof t || "" === t) throw Error('Invalid parameter: "groupId"');
        if (!Array.isArray(r) || (null == r ? void 0 : r.length) <= 0) throw Error('Invalid parameter: "userIds"');
        if (!Array.isArray(n)) throw Error('Invalid parameter: "keys"');
        if (!Jt.call(this)) {
          var i = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(i);
        }
        var a = this.context,
          s = a.orgName,
          c = a.appName,
          u = a.accessToken,
          l = {
            targets: r,
            properties: n
          },
          p = {
            url: "".concat(this.apiUrl, "/").concat(s, "/").concat(c, "/sdk/metadata/chatgroup/").concat(t, "/get"),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(l),
            headers: {
              Authorization: "Bearer " + u,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call getGroupMembersAttributes", e), j.call(this, p, E.GET_GROUP_MEMBER_ATTR).then(function (e) {
          return {
            type: e.type,
            data: (null == e ? void 0 : e.data) || {}
          };
        });
      }
      function In(e) {
        var t = this;
        if ("number" != typeof e.pagenum || "number" != typeof e.pagesize) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var r = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(r);
        }
        var o = {
            pagenum: e.pagenum || 1,
            pagesize: e.pagesize || 20
          },
          n = this.context,
          i = n.orgName,
          a = n.appName,
          s = n.accessToken,
          c = {
            url: this.apiUrl + "/" + i + "/" + a + "/chatrooms",
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + s
            },
            data: o,
            success: function success(t) {
              "function" == typeof e.success && e.success(t);
            },
            error: function error(r) {
              r.error && r.error_description && t.onError && t.onError({
                type: d.WEBIM_CONNCTION_LOAD_CHATROOM_ERROR,
                message: r.error_description,
                data: r
              }), "function" == typeof e.error && e.error(r);
            }
          };
        return G.debug("Call getChatRooms", e), j.call(this, c, E.GET_CHATROOM_LIST);
      }
      function Sn(e) {
        if ("string" != typeof e.name) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = {
            name: e.name,
            description: e.description,
            maxusers: e.maxusers,
            owner: this.user,
            members: e.members
          },
          o = this.context,
          n = o.orgName,
          i = o.appName,
          a = (o.accessToken, o.jid),
          s = {
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/chatrooms?resource=").concat(a.clientResource),
            dataType: "json",
            type: "POST",
            data: JSON.stringify(r),
            headers: {
              Authorization: "Bearer " + e.token || false,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call createChatRoom", e), j.call(this, s, E.CREATE_CHATROOM);
      }
      function Cn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = (r.accessToken, r.jid),
          a = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(e.chatRoomId, "?resource=").concat(i.clientResource),
            dataType: "json",
            type: "DELETE",
            headers: {
              Authorization: "Bearer " + e.token || false
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call destroyChatRoom", e), j.call(this, a, E.DESTROY_CHATROOM);
      }
      function An(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatrooms/" + e.chatRoomId,
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getChatRoomDetails", e), j.call(this, a, E.GET_CHATROOM_DETAIL);
      }
      function Nn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = {
            groupname: e.chatRoomName,
            description: e.description,
            maxusers: e.maxusers
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "?resource=").concat(a.clientResource),
            type: "PUT",
            data: JSON.stringify(c),
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call modifyChatRoom", e), j.call(this, u, E.MODIFY_CHATROOM);
      }
      function Mn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId || "string" != typeof e.username) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/users/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call removeChatRoomMember", e), j.call(this, u, E.REMOVE_CHATROOM_MEMBER);
      }
      var bn = Mn;
      function Un(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId || !Array.isArray(e.users)) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = e.chatRoomId,
          o = e.users.join(","),
          n = this.context,
          i = n.orgName,
          a = n.appName,
          s = n.accessToken,
          c = n.jid,
          u = {
            url: "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/chatrooms/").concat(r, "/users/").concat(o, "?resource=").concat(c.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + s,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call removeChatRoomMembers", e), j.call(this, u, E.MULTI_REMOVE_CHATROOM_MEMBER);
      }
      var wn = Un;
      function Pn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId || !Array.isArray(e.users)) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = e.chatRoomId,
          o = {
            usernames: e.users
          },
          n = this.context,
          i = n.orgName,
          a = n.appName,
          s = n.accessToken,
          c = n.jid,
          u = {
            url: "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/chatrooms/").concat(r, "/users?resource=").concat(c.clientResource),
            type: "POST",
            data: JSON.stringify(o),
            dataType: "json",
            headers: {
              Authorization: "Bearer " + s,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call addUsersToChatRoom", e), j.call(this, u, E.ADD_USERS_TO_CHATROOM);
      }
      function kn(e) {
        if ("string" != typeof e.roomId || "" === e.roomId) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        return G.debug("Call joinChatRoom", e), this.mSync.handleChatRoom(e, "join");
      }
      function Ln(e) {
        if ("string" != typeof e.roomId || "" === e.roomId) throw Error("Invalid parameter");
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        return G.debug("Call leaveChatRoom", e), this.mSync.handleChatRoom(e, "leave");
      }
      var Dn = Ln;
      function Gn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (isNaN(e.pageNum) || e.pageNum <= 0) throw Error('The parameter "pageNum" should be a positive number');
        if (isNaN(e.pageSize) || e.pageSize <= 0) throw Error('The parameter "pageSize" should be a positive number');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = {
            pagenum: e.pageNum,
            pagesize: e.pageSize
          },
          o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = {
            url: this.apiUrl + "/" + n + "/" + i + "/chatrooms/" + e.chatRoomId + "/users",
            dataType: "json",
            type: "GET",
            data: r,
            headers: {
              Authorization: "Bearer " + a,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call listChatRoomMembers", e), j.call(this, s, E.LIST_CHATROOM_MEMBERS);
      }
      var xn = Gn;
      function Bn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.chatRoomId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatrooms/" + a + "/admin",
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getChatRoomAdmin", e), j.call(this, s, E.GET_CHATROOM_ADMIN);
      }
      function jn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = {
            newadmin: e.username
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/admin?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(c),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call setChatRoomAdmin", e), j.call(this, u, E.SET_CHATROOM_ADMIN);
      }
      function Hn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/admin/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call removeChatRoomAdmin", e), j.call(this, u, E.REMOVE_CHATROOM_ADMIN);
      }
      function Fn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "groupId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if ("number" != typeof e.muteDuration) throw Error('Invalid parameter: "muteDuration"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = {
            usernames: [e.username],
            mute_duration: e.muteDuration
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/mute?resource=").concat(a.clientResource),
            dataType: "json",
            type: "POST",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            data: JSON.stringify(c),
            success: e.success,
            error: e.error
          };
        return G.debug("Call muteChatRoomMember", e), j.call(this, u, E.MUTE_CHATROOM_MEMBER);
      }
      function Wn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/mute/").concat(c, "?resource=").concat(a.clientResource),
            dataType: "json",
            type: "DELETE",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call unmuteChatRoomMember", e), j.call(this, u, E.REMOVE_MUTE_CHATROOM_MEMBER);
      }
      var Kn = Wn;
      function qn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.chatRoomId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatrooms/" + a + "/mute",
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getChatRoomMutelist", e), j.call(this, s, E.GET_MUTE_CHATROOM_MEMBERS);
      }
      var zn = qn,
        Vn = qn;
      function Jn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/blocks/users/").concat(c, "?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call blockChatRoomMember", e), j.call(this, u, E.SET_CHATROOM_MEMBER_TO_BLACK);
      }
      var Xn = Jn;
      function Yn(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Array.isArray(e.usernames)) throw Error('Invalid parameter: "usernames"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = {
            usernames: e.usernames
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/blocks/users?resource=").concat(a.clientResource),
            data: JSON.stringify(c),
            type: "POST",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Chat blockChatRoomMembers:", u), j.call(this, u, E.MULTI_SET_CHATROOM_MEMBER_TO_BLACK);
      }
      var Qn = Yn;
      function $n(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if ("string" != typeof e.username || "" === e.username) throw Error('Invalid parameter: "username"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = e.username,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/blocks/users/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call unblockChatRoomMember", e), j.call(this, u, E.REMOVE_CHATROOM_MEMBER_BLACK);
      }
      var Zn = $n;
      function ei(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Array.isArray(e.usernames)) throw Error('Invalid parameter: "usernames"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = e.usernames.join(","),
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/blocks/users/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call unblockChatRoomMembers", e), j.call(this, u, E.MULTI_REMOVE_CHATROOM_MEMBER_BLACK);
      }
      var ti = ei;
      function ri(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.chatRoomId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatrooms/" + a + "/blocks/users",
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getChatRoomBlocklist", e), j.call(this, s, E.GET_CHATROOM_BLOCK_MEMBERS);
      }
      var oi = ri,
        ni = ri;
      function ii(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/ban?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call disableSendChatRoomMsg", e), j.call(this, c, E.DISABLED_CHATROOM_SEND_MSG);
      }
      function ai(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/ban?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call enableSendChatRoomMsg", e), j.call(this, c, E.ENABLE_CHATROOM_SEND_MSG);
      }
      function si(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Array.isArray(e.users)) throw Error('Invalid parameter: "users"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = {
            usernames: e.users
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/white/users?resource=").concat(a.clientResource),
            type: "POST",
            data: JSON.stringify(c),
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call addUsersToChatRoomWhitelist", e), j.call(this, u, E.ADD_USERS_TO_CHATROOM);
      }
      var ci = si;
      function ui(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if ("string" != typeof e.userName || "" === e.userName) throw Error('Invalid parameter: "userName"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.chatRoomId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/white/users/").concat(e.userName, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call removeChatRoomAllowlistMember", e), j.call(this, c, E.REMOVE_CHATROOM_WHITE_USERS);
      }
      var li = ui,
        di = ui;
      function pi(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.chatRoomId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatrooms/" + a + "/white/users",
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getChatRoomAllowlist", e), j.call(this, s, E.GET_CHATROOM_WHITE_USERS);
      }
      var hi = pi;
      function fi(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if ("string" != typeof e.userName || "" === e.userName) throw Error('Invalid parameter: "userName"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.chatRoomId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/chatrooms/" + a + "/white/users/" + e.userName,
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call isInChatRoomAllowlist", e), j.call(this, s, E.CHECK_CHATROOM_WHITE_USER);
      }
      var mi = fi;
      function gi(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error('Invalid parameter: "chatRoomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.userId,
          s = {
            url: this.apiUrl + "/" + o + "/" + n + "/sdk/chatrooms/" + e.chatRoomId + "/mute/" + a,
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + i
            }
          };
        return G.debug("Call isInChatRoomMutelist", e), j.call(this, s).then(function (e) {
          return e.data;
        });
      }
      function Ei(e) {
        if ("string" != typeof e.roomId || "" === e.roomId) throw Error('Invalid parameter: "roomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.roomId,
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(a, "/announcement"),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call fetchChatRoomAnnouncement", e), j.call(this, s, E.GET_CHATROOM_ANN);
      }
      function yi(e) {
        if ("string" != typeof e.roomId || "" === e.roomId) throw Error('Invalid parameter: "roomId"');
        if ("string" != typeof e.announcement) throw Error('Invalid parameter: "announcement"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.roomId,
          c = {
            announcement: e.announcement
          },
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/announcement?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(c),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call updateChatRoomAnnouncement:", e), j.call(this, u, E.UPDATE_CHATROOM_ANN);
      }
      function Ti(e) {
        if ("string" != typeof e.roomId || "" === e.roomId) throw Error('Invalid parameter: "roomId"');
        if ("object" != _typeof(e.file)) throw Error('Invalid parameter: "file"');
        if (Jt.call(this)) {
          var t = this.context,
            r = t.orgName,
            o = t.appName,
            n = t.accessToken,
            i = t.jid,
            a = e.roomId;
          X.call(this, {
            uploadUrl: "".concat(this.apiUrl, "/").concat(r, "/").concat(o, "/chatrooms/").concat(a, "/share_files?resource=").concat(i.clientResource),
            onFileUploadProgress: e.onFileUploadProgress,
            onFileUploadComplete: e.onFileUploadComplete,
            onFileUploadError: e.onFileUploadError,
            onFileUploadCanceled: e.onFileUploadCanceled,
            accessToken: n,
            apiUrl: this.apiUrl,
            file: e.file,
            appKey: this.context.appKey
          }, E.UPLOAD_CHATROOM_FILE), G.debug("Call uploadChatRoomSharedFile", e);
        }
      }
      function vi(e) {
        if ("string" != typeof e.roomId || "" === e.roomId) throw Error('Invalid parameter: "roomId"');
        if ("string" != typeof e.fileId || "" === e.fileId) throw Error('Invalid parameter: "fileId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = e.roomId,
          c = e.fileId,
          u = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(s, "/share_files/").concat(c, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call deleteChatRoomSharedFile", e), j.call(this, u, E.DELETE_CHATROOM_FILE);
      }
      function _i(e) {
        if ("string" != typeof e.roomId || "" === e.roomId) throw Error('Invalid parameter: "roomId"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = e.roomId,
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/chatrooms/").concat(a, "/share_files"),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json",
              accept: "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call fetchChatRoomSharedFileList", e), j.call(this, s, E.GET_CHATROOM_FILES);
      }
      var Ri = _i;
      function Oi(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error("Invalid parameter chatRoomId: " + e.chatRoomId);
        if (e.attributeKeys && !Array.isArray(e.attributeKeys)) throw Error('"Invalid parameter attributeKeys": ' + e.attributeKeys);
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = (r.jid, e.chatRoomId),
          s = {
            keys: e.attributeKeys
          },
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/metadata/chatroom/").concat(a),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(s),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call getChatRoomAttributes:", e), j.call(this, c, E.GET_CHATROOM_ATTR).then(function (e) {
          return {
            data: e.data,
            type: e.type
          };
        });
      }
      function Ii(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error("Invalid parameter chatRoomId: " + e.chatRoomId);
        if ("object" != _typeof(e.attributes)) throw Error("Invalid parameter attributes: " + e.attributes);
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.userId,
          s = e.chatRoomId,
          c = e.attributes,
          u = e.autoDelete,
          l = void 0 === u || u,
          p = e.isForced ? "/forced" : "",
          h = {
            metaData: c,
            autoDelete: l ? "DELETE" : "NO_DELETE"
          },
          f = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/metadata/chatroom/").concat(s, "/user/").concat(a) + p,
            type: "PUT",
            dataType: "json",
            data: JSON.stringify(h),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call setChatRoomAttributes:", e), j.call(this, f, E.SET_CHATROOM_ATTR).then(function (e) {
          return Xt(e);
        });
      }
      function Si(e) {
        var t;
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error("Invalid parameter chatRoomId: " + e.chatRoomId);
        if ("string" != typeof e.attributeKey || "" === e.attributeKey) throw Error("Invalid parameter attributeKey: " + e.attributeKey);
        if ("string" != typeof e.attributeValue || "" === e.attributeValue) throw Error("Invalid parameter attributeValue: " + e.attributeValue);
        if (!Jt.call(this)) {
          var r = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(r);
        }
        var o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.accessToken,
          s = o.userId,
          c = e.chatRoomId,
          u = e.attributeKey,
          l = e.attributeValue,
          p = e.autoDelete,
          h = void 0 === p || p,
          f = e.isForced ? "/forced" : "",
          g = {
            metaData: (t = {}, t[u] = l, t),
            autoDelete: h ? "DELETE" : "NO_DELETE"
          },
          y = {
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/metadata/chatroom/").concat(c, "/user/").concat(s) + f,
            type: "PUT",
            dataType: "json",
            data: JSON.stringify(g),
            headers: {
              Authorization: "Bearer " + a,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call setChatRoomAttribute:", e), j.call(this, y, E.SET_CHATROOM_ATTR).then(function (e) {
          var t = Yt(e);
          if (t) throw t;
        });
      }
      function Ci(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error("Invalid parameter chatRoomId: " + e.chatRoomId);
        if (!Array.isArray(e.attributeKeys)) throw Error('"Invalid parameter attributes": ' + e.attributeKeys);
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.userId,
          s = e.chatRoomId,
          c = e.attributeKeys,
          u = e.isForced ? "/forced" : "",
          l = {
            keys: c
          },
          p = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/metadata/chatroom/").concat(s, "/user/").concat(a) + u,
            type: "DELETE",
            dataType: "json",
            data: JSON.stringify(l),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call removeChatRoomAttributes:", e), j.call(this, p, E.DELETE_CHATROOM_ATTR).then(function (e) {
          return Xt(e);
        });
      }
      function Ai(e) {
        if ("string" != typeof e.chatRoomId || "" === e.chatRoomId) throw Error("Invalid parameter chatRoomId: " + e.chatRoomId);
        if ("string" != typeof e.attributeKey || "" === e.attributeKey) throw Error('"Invalid parameter attributeKey": ' + e.attributeKey);
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.userId,
          s = e.chatRoomId,
          c = e.attributeKey,
          u = e.isForced ? "/forced" : "",
          l = {
            keys: [c]
          },
          p = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/metadata/chatroom/").concat(s, "/user/").concat(a) + u,
            type: "DELETE",
            dataType: "json",
            data: JSON.stringify(l),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return G.debug("Call removeChatRoomAttribute:", e), j.call(this, p, E.DELETE_CHATROOM_ATTR).then(function (e) {
          var t = Yt(e);
          if (t) throw t;
        });
      }
      var Ni = function Ni(e, t, r, o) {
          return new (r || (r = Promise))(function (n, i) {
            function a(e) {
              try {
                c(o.next(e));
              } catch (e) {
                i(e);
              }
            }
            function s(e) {
              try {
                c(o.throw(e));
              } catch (e) {
                i(e);
              }
            }
            function c(e) {
              var t;
              e.done ? n(e.value) : (t = e.value, t instanceof r ? t : new r(function (e) {
                e(t);
              })).then(a, s);
            }
            c((o = o.apply(e, t || [])).next());
          });
        },
        Mi = function Mi(e, t) {
          var r,
            o,
            n,
            i,
            a = {
              label: 0,
              sent: function sent() {
                if (1 & n[0]) throw n[1];
                return n[1];
              },
              trys: [],
              ops: []
            };
          return i = {
            next: s(0),
            throw: s(1),
            return: s(2)
          }, "function" == typeof Symbol && (i[Symbol.iterator] = function () {
            return this;
          }), i;
          function s(i) {
            return function (s) {
              return function (i) {
                if (r) throw new TypeError("Generator is already executing.");
                for (; a;) {
                  try {
                    if (r = 1, o && (n = 2 & i[0] ? o.return : i[0] ? o.throw || ((n = o.return) && n.call(o), 0) : o.next) && !(n = n.call(o, i[1])).done) return n;
                    switch (o = 0, n && (i = [2 & i[0], n.value]), i[0]) {
                      case 0:
                      case 1:
                        n = i;
                        break;
                      case 4:
                        return a.label++, {
                          value: i[1],
                          done: !1
                        };
                      case 5:
                        a.label++, o = i[1], i = [0];
                        continue;
                      case 7:
                        i = a.ops.pop(), a.trys.pop();
                        continue;
                      default:
                        if (!((n = (n = a.trys).length > 0 && n[n.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
                          a = 0;
                          continue;
                        }
                        if (3 === i[0] && (!n || i[1] > n[0] && i[1] < n[3])) {
                          a.label = i[1];
                          break;
                        }
                        if (6 === i[0] && a.label < n[1]) {
                          a.label = n[1], n = i;
                          break;
                        }
                        if (n && a.label < n[2]) {
                          a.label = n[2], a.ops.push(i);
                          break;
                        }
                        n[2] && a.ops.pop(), a.trys.pop();
                        continue;
                    }
                    i = t.call(e, a);
                  } catch (e) {
                    i = [6, e], o = 0;
                  } finally {
                    r = n = 0;
                  }
                }
                if (5 & i[0]) throw i[1];
                return {
                  value: i[0] ? i[1] : void 0,
                  done: !0
                };
              }([i, s]);
            };
          }
        };
      function bi(e) {
        return Ni(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s, c, u;
          return Mi(this, function (l) {
            switch (l.label) {
              case 0:
                if ("string" != typeof e.description) throw Error('Invalid parameter: "description"');
                return Jt.call(this) ? (r = this.context, o = r.accessToken, n = r.orgName, i = r.appName, a = r.userId, s = this.context.jid.clientResource, c = {
                  ext: e.description
                }, u = {
                  url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(a, "/presence/").concat(s, "/1"),
                  type: "POST",
                  dataType: "json",
                  data: JSON.stringify(c),
                  headers: {
                    Authorization: "Bearer " + o,
                    "Content-Type": "application/json"
                  },
                  success: e.success,
                  error: e.error
                }, G.debug("Call publishPresence:", e), [4, j.call(this, u)]) : (t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)]);
              case 1:
                return l.sent(), [2];
            }
          });
        });
      }
      function Ui(e) {
        if (!Array.isArray(e.usernames)) throw Error('Invalid parameter: "usernames"');
        if (!e.usernames.length) throw Error('"usernames" can not be empty');
        if ("number" != typeof e.expiry) throw Error('Invalid parameter: "expiry"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.userId,
          a = r.accessToken,
          s = {
            usernames: e.usernames
          },
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(i, "/presence/").concat(e.expiry),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(s),
            headers: {
              Authorization: "Bearer " + a,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call subscribePresence:", e), j.call(this, c).then(function (e) {
          return e.data = {
            result: null == e ? void 0 : e.result
          }, e;
        });
      }
      function wi(e) {
        return Ni(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s;
          return Mi(this, function (c) {
            switch (c.label) {
              case 0:
                if (!Array.isArray(e.usernames)) throw Error('Invalid parameter: "usernames"');
                if (!e.usernames.length) throw Error('"usernames" can not be empty');
                return Jt.call(this) ? (r = this.context, o = r.orgName, n = r.appName, i = r.userId, a = r.accessToken, s = {
                  url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(i, "/presence"),
                  type: "DELETE",
                  dataType: "json",
                  data: JSON.stringify(e.usernames),
                  headers: {
                    Authorization: "Bearer " + a,
                    "Content-Type": "application/json"
                  },
                  success: e.success,
                  error: e.error
                }, G.debug("Call unsubscribePresence:", e), [4, j.call(this, s)]) : (t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)]);
              case 1:
                return c.sent(), [2];
            }
          });
        });
      }
      function Pi(e) {
        if ("number" != typeof e.pageNum || "number" != typeof e.pageSize) throw Error('Invalid parameter: "pageNum or pageSize"');
        if (e.pageNum < 0 || e.pageSize < 0) throw Error('"pageNum" should >= 0 and "pageSize" should >= 0');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.userId,
          a = r.accessToken,
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(i, "/presence/sublist?pageNum=").concat(e.pageNum, "&pageSize=").concat(e.pageSize),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + a,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getSubscribedPresenceList:", e), j.call(this, s).then(function (e) {
          return e.data = {
            result: null == e ? void 0 : e.result
          }, e;
        });
      }
      var ki = Pi;
      function Li(e) {
        if (!Array.isArray(e.usernames)) throw Error('Invalid parameter: "usernames"');
        if (!e.usernames.length) throw Error('"usernames" can not be empty');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = {
            usernames: e.usernames
          },
          o = this.context,
          n = o.orgName,
          i = o.appName,
          a = o.userId,
          s = o.accessToken,
          c = {
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(a, "/presence"),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(r),
            headers: {
              Authorization: "Bearer " + s,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getPresenceStatus:", e), j.call(this, c).then(function (e) {
          return e.data = {
            result: null == e ? void 0 : e.result
          }, e;
        });
      }
      function Di(e) {
        if (!(e.options instanceof Object)) throw Error('Invalid parameter: "options"');
        var t = e.options.paramType;
        if ("number" != typeof t || t < 0 || t > 2) throw Error('Invalid parameter: "options of paramType"');
        if (0 === t) {
          if ("string" != typeof e.options.remindType) throw Error('Invalid parameter: "options of remindType"');
        } else if (1 === t) {
          if ("number" != typeof e.options.duration) throw Error('Invalid parameter: "options of duration"');
        } else if (2 === t) {
          var r = e.options,
            o = r.startTime,
            n = r.endTime;
          if (!(o instanceof Object && Object.keys(o).length)) throw Error('Invalid parameter: "options of startTime"');
          if (!o.hours || "number" != typeof o.hours || !o.minutes || "number" != typeof o.minutes) throw Error('Invalid parameter: "options of startTime of hours or minutes"');
          if (!(n instanceof Object && Object.keys(n).length)) throw Error('Invalid parameter: "options of endTime"');
          if (!n.hours || "number" != typeof n.hours || !n.minutes || "number" != typeof n.minutes) throw Error('Invalid parameter: "options of endTime of hours or minutes"');
        }
        if (!Jt.call(this)) {
          var i = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(i);
        }
        var a = this.context,
          s = a.accessToken,
          c = a.orgName,
          u = a.appName,
          l = a.userId,
          p = {};
        switch (t) {
          case 0:
            p = {
              type: e.options.remindType
            };
            break;
          case 1:
            p = {
              ignoreDuration: e.options.duration
            };
            break;
          case 2:
            var h = e.options;
            o = h.startTime, n = h.endTime, p = {
              ignoreInterval: "".concat(o.hours, ":").concat(o.minutes, "-").concat(n.hours, ":").concat(n.minutes)
            };
        }
        var f = {
          url: "".concat(this.apiUrl, "/").concat(c, "/").concat(u, "/users/").concat(l, "/notification/user/").concat(l),
          type: "PUT",
          dataType: "json",
          data: JSON.stringify(p),
          headers: {
            Authorization: "Bearer " + s,
            "Content-Type": "application/json"
          },
          success: e.success,
          error: e.error
        };
        return G.debug("Call setSilentModeForAll:", e), j.call(this, f);
      }
      function Gi(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.accessToken,
          n = r.orgName,
          i = r.appName,
          a = r.userId,
          s = {
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(a, "/notification/user/").concat(a),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + o,
              "Content-Type": "application/json"
            },
            success: null == e ? void 0 : e.success,
            error: null == e ? void 0 : e.error
          };
        return G.debug("Call getSilentModeForAll:", e), j.call(this, s);
      }
      function xi(e) {
        if ("string" != typeof e.conversationId || !e.conversationId) throw Error('Invalid parameter: "conversationId"');
        if ("string" != typeof e.type || !e.type) throw Error('Invalid parameter: "type"');
        if (!(e.options instanceof Object)) throw Error('Invalid parameter: "options"');
        var t = e.options.paramType;
        if ("number" != typeof t || t < 0 || t > 2) throw Error('Invalid parameter: "options of paramType"');
        if (0 === t) {
          if ("string" != typeof e.options.remindType) throw Error('Invalid parameter: "options of remindType"');
        } else if (1 === t) {
          if ("number" != typeof e.options.duration) throw Error('Invalid parameter: "options of duration"');
        } else if (2 === t) {
          var r = e.options,
            o = r.startTime,
            n = r.endTime;
          if (!(o instanceof Object && Object.keys(o).length)) throw Error('Invalid parameter: "options of startTime"');
          if (!o.hours || "number" != typeof o.hours || !o.minutes || "number" != typeof o.minutes) throw Error('Invalid parameter: "options of startTime of hours or minutes"');
          if (!(n instanceof Object && Object.keys(n).length)) throw Error('Invalid parameter: "options of endTime"');
          if (!n.hours || "number" != typeof n.hours || !n.minutes || "number" != typeof n.minutes) throw Error('Invalid parameter: "options of endTime of hours or minutes"');
        }
        if (!Jt.call(this)) {
          var i = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(i);
        }
        var a = this.context,
          s = a.accessToken,
          c = a.orgName,
          u = a.appName,
          l = a.userId,
          p = "chatgroup",
          h = {};
        switch (t) {
          case 0:
            h = {
              type: e.options.remindType
            };
            break;
          case 1:
            h = {
              ignoreDuration: e.options.duration
            };
            break;
          case 2:
            var f = e.options;
            o = f.startTime, n = f.endTime, h = {
              ignoreInterval: "".concat(o.hours, ":").concat(o.minutes, "-").concat(n.hours, ":").concat(n.minutes)
            };
        }
        "singleChat" === e.type && (p = "user");
        var g = {
          url: "".concat(this.apiUrl, "/").concat(c, "/").concat(u, "/users/").concat(l, "/notification/").concat(p, "/").concat(e.conversationId),
          type: "PUT",
          dataType: "json",
          data: JSON.stringify(h),
          headers: {
            Authorization: "Bearer " + s,
            "Content-Type": "application/json"
          },
          success: e.success,
          error: e.error
        };
        return G.debug("Call setSilentModeForConversation:", e), j.call(this, g);
      }
      function Bi(e) {
        if ("string" != typeof e.conversationId || !e.conversationId) throw Error('Invalid parameter: "conversationId"');
        if ("string" != typeof e.type || !e.type) throw Error('Invalid parameter: "type"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.accessToken,
          n = r.orgName,
          i = r.appName,
          a = r.userId,
          s = "chatgroup";
        "singleChat" === e.type && (s = "user");
        var c = {
          url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(a, "/notification/").concat(s, "/").concat(e.conversationId),
          type: "PUT",
          dataType: "json",
          data: JSON.stringify({
            type: "DEFAULT"
          }),
          headers: {
            Authorization: "Bearer " + o,
            "Content-Type": "application/json"
          },
          success: e.success,
          error: e.error
        };
        return G.debug("Call clearRemindTypeForConversation:", e), j.call(this, c);
      }
      function ji(e) {
        if ("string" != typeof e.conversationId || !e.conversationId) throw Error('Invalid parameter: "conversationId"');
        if ("string" != typeof e.type || !e.type) throw Error('Invalid parameter: "type"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.accessToken,
          n = r.orgName,
          i = r.appName,
          a = r.userId,
          s = "chatgroup";
        "singleChat" === e.type && (s = "user");
        var c = {
          url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(a, "/notification/").concat(s, "/").concat(e.conversationId),
          type: "GET",
          dataType: "json",
          headers: {
            Authorization: "Bearer " + o,
            "Content-Type": "application/json"
          },
          success: e.success,
          error: e.error
        };
        return G.debug("Call getSilentModeForConversation:", e), j.call(this, c);
      }
      function Hi(e) {
        if (!Array.isArray(e.conversationList)) throw Error('Invalid parameter: "conversationList"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.accessToken,
          n = r.orgName,
          i = r.appName,
          a = r.userId,
          s = [],
          c = [];
        e.conversationList.forEach(function (e) {
          "singleChat" === e.type ? s.push(e.id) : c.push(e.id);
        });
        var u = s.length ? s.join(",") : "",
          l = c.length ? c.join(",") : "",
          p = {
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(a, "/notification?user=").concat(u, "&group=").concat(l),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + o,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call getSilentModeForConversations:", e), j.call(this, p);
      }
      function Fi(e) {
        if ("string" != typeof e.language || !e.language) throw Error('Invalid parameter: "language"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = {
            translationLanguage: e.language
          },
          o = this.context,
          n = o.accessToken,
          i = o.orgName,
          a = o.appName,
          s = o.userId,
          c = {
            url: "".concat(this.apiUrl, "/").concat(i, "/").concat(a, "/users/").concat(s, "/notification/language"),
            type: "PUT",
            dataType: "json",
            data: JSON.stringify(r),
            headers: {
              Authorization: "Bearer " + n,
              "Content-Type": "application/json"
            },
            success: e.success,
            error: e.error
          };
        return G.debug("Call setPushPerformLanguage:", e), j.call(this, c);
      }
      function Wi(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.accessToken,
          n = r.orgName,
          i = r.appName,
          a = r.userId,
          s = {
            url: "".concat(this.apiUrl, "/").concat(n, "/").concat(i, "/users/").concat(a, "/notification/language"),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + o,
              "Content-Type": "application/json"
            },
            success: null == e ? void 0 : e.success,
            error: null == e ? void 0 : e.error
          };
        return G.debug("Call getPushPerformLanguage:", e), j.call(this, s);
      }
      var Ki = function Ki(e, t, r, o) {
          return new (r || (r = Promise))(function (n, i) {
            function a(e) {
              try {
                c(o.next(e));
              } catch (e) {
                i(e);
              }
            }
            function s(e) {
              try {
                c(o.throw(e));
              } catch (e) {
                i(e);
              }
            }
            function c(e) {
              var t;
              e.done ? n(e.value) : (t = e.value, t instanceof r ? t : new r(function (e) {
                e(t);
              })).then(a, s);
            }
            c((o = o.apply(e, t || [])).next());
          });
        },
        qi = function qi(e, t) {
          var r,
            o,
            n,
            i,
            a = {
              label: 0,
              sent: function sent() {
                if (1 & n[0]) throw n[1];
                return n[1];
              },
              trys: [],
              ops: []
            };
          return i = {
            next: s(0),
            throw: s(1),
            return: s(2)
          }, "function" == typeof Symbol && (i[Symbol.iterator] = function () {
            return this;
          }), i;
          function s(i) {
            return function (s) {
              return function (i) {
                if (r) throw new TypeError("Generator is already executing.");
                for (; a;) {
                  try {
                    if (r = 1, o && (n = 2 & i[0] ? o.return : i[0] ? o.throw || ((n = o.return) && n.call(o), 0) : o.next) && !(n = n.call(o, i[1])).done) return n;
                    switch (o = 0, n && (i = [2 & i[0], n.value]), i[0]) {
                      case 0:
                      case 1:
                        n = i;
                        break;
                      case 4:
                        return a.label++, {
                          value: i[1],
                          done: !1
                        };
                      case 5:
                        a.label++, o = i[1], i = [0];
                        continue;
                      case 7:
                        i = a.ops.pop(), a.trys.pop();
                        continue;
                      default:
                        if (!((n = (n = a.trys).length > 0 && n[n.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
                          a = 0;
                          continue;
                        }
                        if (3 === i[0] && (!n || i[1] > n[0] && i[1] < n[3])) {
                          a.label = i[1];
                          break;
                        }
                        if (6 === i[0] && a.label < n[1]) {
                          a.label = n[1], n = i;
                          break;
                        }
                        if (n && a.label < n[2]) {
                          a.label = n[2], a.ops.push(i);
                          break;
                        }
                        n[2] && a.ops.pop(), a.trys.pop();
                        continue;
                    }
                    i = t.call(e, a);
                  } catch (e) {
                    i = [6, e], o = 0;
                  } finally {
                    r = n = 0;
                  }
                }
                if (5 & i[0]) throw i[1];
                return {
                  value: i[0] ? i[1] : void 0,
                  done: !0
                };
              }([i, s]);
            };
          }
        };
      function zi(e) {
        if ("string" != typeof e.name || "" === e.name) throw Error("Invalid parameter name: ".concat(e.name));
        if ("string" != typeof e.messageId || "" === e.messageId) throw Error("Invalid parameter messageId: ".concat(e.messageId));
        if ("string" != typeof e.parentId || "" === e.parentId) throw Error("Invalid parameter parentId: ".concat(e.parentId));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = {
            name: e.name,
            msg_id: e.messageId,
            group_id: e.parentId,
            owner: this.user
          },
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(s),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, c).then(function (e) {
          var t = e.data.thread_id;
          return e.data = {
            chatThreadId: t
          }, e;
        });
      }
      function Vi(e) {
        if ("string" != typeof e.chatThreadId || "" === e.chatThreadId) throw Error("Invalid parameter chatThreadId: ".concat(e.chatThreadId));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread/").concat(e.chatThreadId, "/user/").concat(this.user, "/join?resource=").concat(a.clientResource),
            type: "POST",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, s).then(function (e) {
          var t = e.data.detail;
          return t.messageId = t.msgId, t.parentId = t.groupId, delete t.msgId, delete t.groupId, e;
        });
      }
      function Ji(e) {
        return Ki(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s;
          return qi(this, function (c) {
            switch (c.label) {
              case 0:
                if ("string" != typeof e.chatThreadId || "" === e.chatThreadId) throw Error("Invalid parameter chatThreadId: ".concat(e.chatThreadId));
                return Jt.call(this) ? (r = this.context, o = r.orgName, n = r.appName, i = r.accessToken, a = r.jid, s = {
                  url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread/").concat(e.chatThreadId, "/user/").concat(this.user, "/quit?resource=").concat(a.clientResource),
                  type: "DELETE",
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + i,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, s)]) : (t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)]);
              case 1:
                return c.sent(), [2];
            }
          });
        });
      }
      function Xi(e) {
        return Ki(this, void 0, void 0, function () {
          var t, r, o, n, i, a, s;
          return qi(this, function (c) {
            switch (c.label) {
              case 0:
                if ("string" != typeof e.chatThreadId || "" === e.chatThreadId) throw Error("Invalid parameter chatThreadId: ".concat(e.chatThreadId));
                return Jt.call(this) ? (r = this.context, o = r.orgName, n = r.appName, i = r.accessToken, a = r.jid, s = {
                  url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread/").concat(e.chatThreadId, "?resource=").concat(a.clientResource),
                  type: "DELETE",
                  dataType: "json",
                  headers: {
                    Authorization: "Bearer " + i,
                    "Content-Type": "application/json"
                  }
                }, [4, j.call(this, s)]) : (t = m.create({
                  type: d.REST_PARAMS_STATUS,
                  message: "appkey or token error"
                }), [2, Promise.reject(t)]);
              case 1:
                return c.sent(), [2];
            }
          });
        });
      }
      function Yi(e) {
        if ("string" != typeof e.chatThreadId || "" === e.chatThreadId) throw Error("Invalid parameter chatThreadId: ".concat(e.chatThreadId));
        if ("string" != typeof e.name || "" === e.name) throw Error("Invalid parameter name: ".concat(e.name));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = {
            name: e.name
          },
          c = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread/").concat(e.chatThreadId, "?resource=").concat(a.clientResource),
            type: "PUT",
            dataType: "json",
            data: JSON.stringify(s),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, c);
      }
      function Qi(e) {
        if ("string" != typeof e.chatThreadId || "" === e.chatThreadId) throw Error("Invalid parameter chatThreadId: ".concat(e.chatThreadId));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            limit: e.pageSize || 20,
            cursor: e.cursor || ""
          },
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread/").concat(e.chatThreadId, "/users"),
            type: "GET",
            dataType: "json",
            data: a,
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, s);
      }
      function $i(e) {
        if ("string" != typeof e.chatThreadId || "" === e.chatThreadId) throw Error("Invalid parameter chatThreadId: ".concat(e.chatThreadId));
        if ("string" != typeof e.username || "" === e.username) throw Error("Invalid parameter username: ".concat(e.username));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = r.jid,
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread/").concat(e.chatThreadId, "/users/").concat(e.username, "?resource=").concat(a.clientResource),
            type: "DELETE",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, s);
      }
      function Zi(e) {
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            limit: e.pageSize || 20,
            cursor: e.cursor || ""
          },
          s = {
            url: e.parentId ? "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/threads/chatgroups/").concat(e.parentId, "/user/").concat(this.user) : "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/threads/user/").concat(this.user),
            type: "GET",
            dataType: "json",
            data: a,
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, s).then(function (e) {
          var t = e.entities;
          return null == t || t.forEach(function (e) {
            e.parentId = e.groupId, e.messageId = e.msgId, delete e.groupId, delete e.msgId;
          }), e;
        });
      }
      function ea(e) {
        if ("string" != typeof e.parentId || "" === e.parentId) throw Error("Invalid parameter parentId: ".concat(e.parentId));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            cursor: e.cursor || "",
            limit: e.pageSize || 20
          },
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/threads/chatgroups/").concat(e.parentId),
            type: "GET",
            dataType: "json",
            data: a,
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, s).then(function (e) {
          var t = e.entities;
          return null == t || t.forEach(function (e) {
            e.parentId = e.groupId, e.messageId = e.msgId, delete e.groupId, delete e.msgId;
          }), e;
        });
      }
      function ta(e) {
        if (!Array.isArray(e.chatThreadIds)) throw Error("Invalid parameter chatThreadIds: ".concat(e.chatThreadIds));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            threadIds: e.chatThreadIds
          },
          s = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread/message"),
            type: "POST",
            dataType: "json",
            data: JSON.stringify(a),
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, s).then(function (e) {
          return function (e) {
            var t = e.entities;
            return null == t || t.forEach(function (e) {
              e.chatThreadId = e.thread_id, e.last_message && "{}" !== JSON.stringify(e.last_message) ? e.lastMessage = re(e.last_message) : e.lastMessage = e.last_message, delete e.thread_id, delete e.last_message;
            }), e;
          }(e);
        });
      }
      function ra(e) {
        if ("string" != typeof e.chatThreadId || "" === e.chatThreadId) throw Error("Invalid parameter chatThreadId: ".concat(e.chatThreadId));
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = {
            url: "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/thread/").concat(e.chatThreadId),
            type: "GET",
            dataType: "json",
            headers: {
              Authorization: "Bearer " + i,
              "Content-Type": "application/json"
            }
          };
        return j.call(this, a).then(function (e) {
          return e.data.affiliationsCount = e.data.affiliations_count, e.data.messageId = e.data.msgId, e.data.parentId = e.data.groupId, delete e.data.affiliations_count, delete e.data.msgId, delete e.data.groupId, e;
        });
      }
      function oa() {
        if (!Jt.call(this)) {
          var e = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(e);
        }
        var t = this.context,
          r = t.orgName,
          o = t.appName,
          n = t.accessToken,
          i = {
            url: "".concat(this.apiUrl, "/").concat(r, "/").concat(o, "/users/").concat(this.user, "/translate/support/language"),
            dataType: "json",
            type: "GET",
            headers: {
              Authorization: "Bearer " + n
            }
          };
        return G.debug("Call getSupportedLanguages"), j.call(this, i);
      }
      function na(e) {
        if ("string" != typeof e.text || "" === e.text) throw Error('Invalid parameter: "text"');
        if (!Array.isArray(e.languages)) throw Error('Invalid parameter: "language"');
        if (!Jt.call(this)) {
          var t = m.create({
            type: d.REST_PARAMS_STATUS,
            message: "appkey or token error"
          });
          return Promise.reject(t);
        }
        var r = this.context,
          o = r.orgName,
          n = r.appName,
          i = r.accessToken,
          a = "".concat(this.apiUrl, "/").concat(o, "/").concat(n, "/users/").concat(this.user, "/translate"),
          s = {
            text: e.text,
            to: e.languages
          },
          c = {
            url: a,
            dataType: "json",
            type: "POST",
            data: JSON.stringify(s),
            headers: {
              Authorization: "Bearer " + i
            }
          };
        return G.debug("Call translateMessage"), j.call(this, c);
      }
      var _ia = function ia() {
          return _ia = Object.assign || function (e) {
            for (var t, r = 1, o = arguments.length; r < o; r++) {
              for (var n in t = arguments[r]) {
                Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
              }
            }
            return e;
          }, _ia.apply(this, arguments);
        },
        aa = function aa(e, t) {
          var r,
            o,
            n,
            i,
            a = {
              label: 0,
              sent: function sent() {
                if (1 & n[0]) throw n[1];
                return n[1];
              },
              trys: [],
              ops: []
            };
          return i = {
            next: s(0),
            throw: s(1),
            return: s(2)
          }, "function" == typeof Symbol && (i[Symbol.iterator] = function () {
            return this;
          }), i;
          function s(i) {
            return function (s) {
              return function (i) {
                if (r) throw new TypeError("Generator is already executing.");
                for (; a;) {
                  try {
                    if (r = 1, o && (n = 2 & i[0] ? o.return : i[0] ? o.throw || ((n = o.return) && n.call(o), 0) : o.next) && !(n = n.call(o, i[1])).done) return n;
                    switch (o = 0, n && (i = [2 & i[0], n.value]), i[0]) {
                      case 0:
                      case 1:
                        n = i;
                        break;
                      case 4:
                        return a.label++, {
                          value: i[1],
                          done: !1
                        };
                      case 5:
                        a.label++, o = i[1], i = [0];
                        continue;
                      case 7:
                        i = a.ops.pop(), a.trys.pop();
                        continue;
                      default:
                        if (!((n = (n = a.trys).length > 0 && n[n.length - 1]) || 6 !== i[0] && 2 !== i[0])) {
                          a = 0;
                          continue;
                        }
                        if (3 === i[0] && (!n || i[1] > n[0] && i[1] < n[3])) {
                          a.label = i[1];
                          break;
                        }
                        if (6 === i[0] && a.label < n[1]) {
                          a.label = n[1], n = i;
                          break;
                        }
                        if (n && a.label < n[2]) {
                          a.label = n[2], a.ops.push(i);
                          break;
                        }
                        n[2] && a.ops.pop(), a.trys.pop();
                        continue;
                    }
                    i = t.call(e, a);
                  } catch (e) {
                    i = [6, e], o = 0;
                  } finally {
                    r = n = 0;
                  }
                }
                if (5 & i[0]) throw i[1];
                return {
                  value: i[0] ? i[1] : void 0,
                  done: !0
                };
              }([i, s]);
            };
          }
        },
        sa = $.getEnvInfo(),
        ca = "web" === sa.platform,
        ua = function ua() {},
        la = {
          CLOSED: 3,
          CLOSING: 2,
          CONNECTING: 0,
          OPEN: 1
        },
        da = function () {
          function r(o) {
            var u;
            if (this.name = "connection", this.max_cache_length = 100, this.isDebug = o.isDebug || !1, this.isReport = !1, this.isHttpDNS = void 0 === o.isHttpDNS ? ca : o.isHttpDNS, this.heartBeatWait = o.heartBeatWait || 3e4, this.autoReconnectNumMax = o.autoReconnectNumMax || 5, this.refreshDNSIntervals = this.autoReconnectNumMax < 5 ? this.autoReconnectNumMax : 5, this.delivery = o.delivery || !1, this.dnsArr = ["https://rs.easemob.com", "https://rs.chat.agora.io", "http://59.110.89.59", "http://39.97.193.190", "http://39.97.193.187"], this.dnsIndex = 0, this.dnsTotal = this.dnsArr.length, this.restHosts = [], this.restTotal = 0, this.restIndex = 0, this.hostIndex = 0, this.socketHost = [], this.hostTotal = 0, this.times = 1, this.autoReconnectNumTotal = 0, this.domain = "easemob.com", this.appKey = o.appKey, this.appName = "", this.orgName = "", this.token = "", this.grantType = "", this.apiUrl = o.apiUrl || "", this.url = o.url || "", this.https = o.https || "undefined" != typeof window && "https:" === (null === (u = window.location) || void 0 === u ? void 0 : u.protocol), this.version = "4.3.0", this.deviceId = o.deviceId || "webim", this.osType = 16, this.useOwnUploadFun = o.useOwnUploadFun || !1, this.compressType = [0], this.encryptType = [0], this.clientResource = "", this.expiresIn = 0, this.expirationTime = 0, this.logOut = !0, this.context = {
              jid: {
                appKey: "",
                clientResource: "",
                domain: "easemob.com",
                name: ""
              },
              userId: "",
              appKey: "",
              status: 0,
              restTokenData: "",
              appName: "",
              orgName: "",
              root: {},
              accessToken: ""
            }, this._msgHash = {}, this._msgPromiseHash = {}, this._queues = [], this._load_msg_cache = [], this.unMSyncSendMsgMap = new Map(), this.mr_cache = {}, this.closeInfo = null, this.reconnecting = !1, "string" != typeof this.appKey || 2 !== this.appKey.split("#").length) throw Error("Illegal appKey: ".concat(this.appKey));
            var l = this.appKey.split("#");
            this.orgName = l[0], this.appName = l[1], this.listen = Mt.bind(this), this.mSync = this.usePlugin(Ct), this.eventHandler = this.usePlugin(At), Object.assign(r.prototype, e), Object.assign(r.prototype, t), Object.assign(r.prototype, n), Object.assign(r.prototype, i), Object.assign(r.prototype, a), Object.assign(r.prototype, s), Object.assign(r.prototype, c), this.dataReport = new qt({
              appkey: this.appKey,
              org: this.orgName,
              sdkVersion: this.version,
              deviceId: this.deviceId,
              isReport: this.isReport
            });
            var d = 0,
              p = this;
            Object.defineProperty($, "ajaxUnconventionalErrorTimes", {
              set: function set(e) {
                0 !== e && (G.debug("rest api request fail times: ".concat(e)), (d = e) % 5 == 0 && this.isHttpDNS && (G.debug("refresh dns config when rest request fail."), Ta.call(p, "refresh", {}, {})));
              },
              get: function get() {
                return d;
              }
            });
          }
          return r.prototype.usePlugin = function (e, t) {
            if (!t) return new e(this);
            this[t] = new e(this);
          }, r.prototype.listen = function (e) {}, r.prototype.addEventHandler = function (e, t) {}, r.prototype.removeEventHandler = function (e) {}, r.prototype.registerUser = function (e) {
            var t = this;
            return new Promise(function (r, o) {
              var n = t.dataReport.geOperateFun({
                uid: e.username,
                operationName: E.REGISTER
              });
              if (t.isHttpDNS) {
                t.dnsIndex = 0;
                var i = _ia(_ia({}, e), {
                  user: e.username,
                  pwd: e.password,
                  promise: {
                    resolve: r,
                    reject: o
                  }
                });
                Ta.call(t, "signup", i, {
                  rpt: n
                });
              } else i = _ia(_ia({}, e), {
                promise: {
                  resolve: r,
                  reject: o
                }
              }), pa.call(t, i, {
                rpt: n
              });
            });
          }, r.prototype.open = function (e) {
            var t = this;
            return G.debug("open"), new Promise(function (r, o) {
              if (Ea.call(t, e)) {
                e.accessToken && (t.token = e.accessToken);
                var n = _ia(_ia({}, e), {
                    promise: {
                      resolve: r,
                      reject: o
                    }
                  }),
                  i = t.dataReport.geOperateFun({
                    uid: e.user,
                    operationName: E.LOGIN
                  });
                t.isHttpDNS ? Ta.call(t, "login", n, {
                  rpt: i
                }) : ha.call(t, n, {
                  rpt: i
                });
              }
            });
          }, r.prototype.isOpened = function () {
            return this.sock && this.sock.readyState === la.OPEN || !1;
          }, r.prototype.close = function () {
            var e, t, r;
            this.logOut = !0, this.reconnecting = !1, this.context.status = d.STATUS_CLOSING, this.sock && this.sock.close(), null === (e = this.unMSyncSendMsgMap) || void 0 === e || e.clear(), this.stopHeartBeat(), this.rejectMessage(), this.context.status = d.STATUS_CLOSED, this._load_msg_cache = [], this._queues = [], this._msgHash = {}, this.mr_cache = {}, this.token = "", this.context.accessToken = "", this.clearTokenTimeout(), null === (r = null === (t = null == this ? void 0 : this._localCache) || void 0 === t ? void 0 : t.getInstance()) || void 0 === r || r.close();
          }, r.prototype.downloadAndParseCombineMessage = function (e) {
            var t = this,
              r = e.url,
              o = e.secret;
            return new Promise(function (e, n) {
              var i,
                a,
                s = $.getEnvInfo(),
                c = "web" !== s.platform && "node" !== s.platform && "quick_app" !== s.platform && (null === (a = null === (i = s.global) || void 0 === i ? void 0 : i.canIUse) || void 0 === a ? void 0 : a.call(i, "getFileSystemManager")),
                u = function u(r) {
                  var o = function o(e) {
                      n({
                        type: d.PARSE_FILE_ERROR,
                        message: "Read file failed",
                        data: e
                      });
                    },
                    i = function i(r) {
                      return o = t, i = void 0, s = function s() {
                        var t, o, i, a, s, u, l, p, h, f, m, g, E;
                        return aa(this, function (y) {
                          switch (y.label) {
                            case 0:
                              for (t = c ? new Uint8Array(r.data) : new Uint8Array(r.target.result), o = 0, i = 0, a = 2, s = t.subarray(o, o + a), u = $.Uint8ArrayToString(s), G.debug("file header:", u), i += a, l = 0, p = 2; p < t.length - 1; p++) {
                                p % 2 == 1 && (l ^= t[p]);
                              }
                              if (h = t.subarray(t.length - 1, t.length), G.debug("checkResult:", l, h[0] === l), h[0] !== l) return [2, n({
                                type: d.PARSE_FILE_ERROR,
                                message: "File verification failed"
                              })];
                              if ("cm" !== u) return [3, 7];
                              y.label = 1;
                            case 1:
                              y.trys.push([1, 5,, 6]), f = [], m = function m() {
                                var e, r, n, s;
                                return aa(this, function (c) {
                                  switch (c.label) {
                                    case 0:
                                      return o += a, i += a = 4, e = t.subarray(o, o + a), o += a, a = e.reduce(function (t, r, o) {
                                        return t + (r << 8 * (e.length - o - 1));
                                      }, 0), i += a, r = t.subarray(o, o + a), n = (n = g.root.lookup("easemob.pb.Meta")).decode(r), [4, Ae.call(g, n, 0, !0, !0)];
                                    case 1:
                                      return s = c.sent(), f.push(s), [2];
                                  }
                                });
                              }, g = this, y.label = 2;
                            case 2:
                              return i < t.length - 1 ? [5, m()] : [3, 4];
                            case 3:
                              return y.sent(), [3, 2];
                            case 4:
                              return [2, e(f)];
                            case 5:
                              return E = y.sent(), n({
                                type: d.PARSE_FILE_ERROR,
                                message: "Parse file failed",
                                data: E
                              }), [3, 6];
                            case 6:
                              return [3, 8];
                            case 7:
                              return [2, n({
                                type: d.PARSE_FILE_ERROR,
                                message: "File verification failed"
                              })];
                            case 8:
                              return [2];
                          }
                        });
                      }, new ((a = void 0) || (a = Promise))(function (e, t) {
                        function r(e) {
                          try {
                            c(s.next(e));
                          } catch (e) {
                            t(e);
                          }
                        }
                        function n(e) {
                          try {
                            c(s.throw(e));
                          } catch (e) {
                            t(e);
                          }
                        }
                        function c(t) {
                          var o;
                          t.done ? e(t.value) : (o = t.value, o instanceof a ? o : new a(function (e) {
                            e(o);
                          })).then(r, n);
                        }
                        c((s = s.apply(o, i || [])).next());
                      });
                      var o, i, a, s;
                    };
                  if (c) {
                    var a = s.global.getFileSystemManager(),
                      u = r.tempFilePath;
                    a.readFile({
                      filePath: u,
                      success: i,
                      fail: o
                    });
                  } else if (r instanceof Blob) {
                    var l = new FileReader();
                    l.readAsArrayBuffer(r), l.onerror = o, l.onload = i;
                  }
                },
                l = function l(e) {
                  n({
                    type: d.WEBIM_DOWNLOADFILE_ERROR,
                    message: "Download failed, please try again",
                    data: e
                  });
                };
              c ? s.global.downloadFile({
                url: r,
                success: u,
                fail: l
              }) : $.download.call(t, {
                url: r,
                headers: {
                  Accept: "application/json"
                },
                onFileDownloadComplete: u,
                onFileDownloadError: l,
                secret: o,
                accessToken: t.context.accessToken
              });
            });
          }, r.prototype.stopHeartBeat = function () {
            clearInterval(this.heartBeatID);
          }, r.prototype.clear = function () {
            this.restTotal = 0, this.restIndex = 0, this.hostIndex = 0, this.hostTotal = 0;
          }, r.prototype.heartBeat = function () {}, r.prototype.renewToken = function (e) {
            var t = this;
            return this.isOpened() ? this.getTokenExpireTimestamp(e).then(function (r) {
              var o = r.expire_timestamp,
                n = Date.now();
              return t.expirationTime = o, t.expiresIn = o - n, t.token = e, t.context.accessToken = e, t.clearTokenTimeout(), t.tokenExpireTimeCountDown(t.expiresIn), {
                status: !0,
                token: e,
                expire: o
              };
            }) : Promise.reject({
              status: !1
            });
          }, r.prototype.clearTokenTimeout = function () {
            G.info("clearTokenTimeout"), this.tokenWillExpireTimer && clearTimeout(this.tokenWillExpireTimer), this.tokenExpiredTimer && clearTimeout(this.tokenExpiredTimer), this.tokenWillExpireTimer = null, this.tokenExpiredTimer = null;
          }, r.prototype.tokenExpireTimeCountDown = function (e) {
            var t = this;
            G.info("tokenExpireTimeCountDown", e), e > Math.pow(2, 31) - 1 && (e = Math.pow(2, 31) - 1), this.tokenWillExpireTimer = setTimeout(function () {
              var r;
              t.onTokenWillExpire && t.onTokenWillExpire(), null === (r = t.eventHandler) || void 0 === r || r.dispatch("onTokenWillExpire"), G.info("onTokenWillExpire", Math.floor(e / 2));
            }, e / 2), this.tokenExpiredTimer = setTimeout(function () {
              var e;
              G.info("onTokenExpired", 0), t.onTokenExpired && t.onTokenExpired(), null === (e = t.eventHandler) || void 0 === e || e.dispatch("onTokenExpired"), t.close();
            }, e);
          }, r.prototype.compareTokenExpireTime = function (e, t) {
            var r,
              o = Number(t) - Number(e);
            G.debug("compareTokenExpireTime", o), o <= this.expiresIn / 2 && o > 0 ? (this.onTokenWillExpire && this.onTokenWillExpire(), null === (r = this.eventHandler) || void 0 === r || r.dispatch("onTokenWillExpire"), G.info("onTokenWillExpire", o)) : o <= 0 && (this.closeByTokenExpired(), G.info("closeByTokenExpired", o));
          }, r.prototype.closeByTokenExpired = function () {
            var e;
            G.info("closed By TokenExpired"), this.onTokenExpired && this.onTokenExpired(), null === (e = this.eventHandler) || void 0 === e || e.dispatch("onTokenExpired"), this.close();
          }, r.prototype.rejectMessage = function () {
            var e = this,
              t = Object.keys(this._msgHash);
            if (t.length > 0) {
              var r = m.create({
                type: d.MESSAGE_WEBSOCKET_DISCONNECTED,
                message: "websocket disconnected"
              });
              t.forEach(function (t) {
                var o, n, i;
                (null === (o = e.unMSyncSendMsgMap) || void 0 === o ? void 0 : o.has(t)) || (e._msgHash[t].reject instanceof Function && e._msgHash[t].reject(r), null === (i = null === (n = e._localCache) || void 0 === n ? void 0 : n.getInstance()) || void 0 === i || i.updateLocalMessage(t, {
                  serverMsgId: t,
                  status: oe.FAIL
                }), e._msgHash[t].fail instanceof Function && e._msgHash[t].fail(r), delete e._msgHash[t]);
              });
            }
          }, r.prototype.resetConnState = function () {
            this.mSync.stopHeartBeat(), this.times = 1, this.autoReconnectNumTotal = 0, this.hostIndex = 0;
          }, r.prototype.reconnect = function () {
            var e,
              t = this;
            this.sock.readyState !== la.CONNECTING && this.sock.readyState !== la.OPEN && (G.info("reconnect: time", this.times), G.info("reconnect sock.readyState: ", this.sock.readyState), !1 === this.reconnecting && (this.reconnecting = !0), null === (e = this.eventHandler) || void 0 === e || e.dispatch("onReconnecting"), this.rejectMessage(), this.isHttpDNS && (this.hostIndex < this.socketHost.length - 1 ? this.hostIndex++ : this.hostIndex = this.socketHost.length - 1), setTimeout(function () {
              t.sock.readyState !== la.OPEN && (G.info("login sock.readyState: ", t.sock.readyState), t.sock.close(), ga.call(t, {
                access_token: t.context.accessToken
              }), t.times++);
            }, 500 * this.times), this.autoReconnectNumTotal++);
          }, r.prototype.send = function (e) {
            return Promise.resolve(null);
          }, r._getSock = function () {}, r;
        }();
      function pa(e, t) {
        var r = this,
          o = t.rpt,
          n = t.isRetry,
          i = e.promise,
          a = this.apiUrl + "/" + this.orgName + "/" + this.appName + "/users",
          s = {
            requestName: y.RESISTER,
            requestUrl: a
          },
          c = e.error || ua;
        if (!this.orgName && !this.appName) {
          var u = m.create({
            type: d.WEBIM_CONNCTION_APPKEY_NOT_ASSIGN_ERROR,
            message: "signup error"
          });
          c(u);
        }
        var l = {
          headers: {
            "Content-type": "application/json"
          },
          url: a,
          dataType: "json",
          data: JSON.stringify({
            username: e.username,
            password: e.password,
            nickname: e.nickname || ""
          }),
          success: function success(t) {
            e.success && e.success(t);
            var r = _ia(_ia({}, t), {
              type: d.REQUEST_SUCCESS
            });
            i.resolve && i.resolve(r);
            var a = t.extraInfo,
              c = a.httpCode,
              u = a.elapse;
            o({
              isEndApi: !0,
              isRetry: n,
              data: _ia(_ia({}, {
                requestElapse: u,
                isSuccess: 1,
                code: c
              }), s)
            });
          },
          error: function error(t) {
            var a = t.extraInfo,
              u = a.elapse,
              l = a.httpCode,
              d = a.errDesc;
            return o({
              isRetry: n,
              data: _ia(_ia({}, {
                requestElapse: u,
                isSuccess: 0,
                code: l,
                codeDesc: d
              }), s)
            }), r.isHttpDNS && r.restIndex + 1 < r.restTotal ? (r.restIndex++, va.call(r), pa.call(r, e, {
              rpt: o,
              isRetry: n
            }), Promise.reject(t)) : (o({
              data: {
                isLastApi: 1,
                isSuccess: 0
              }
            }), r.clear(), i.reject && i.reject(t), c(t));
          }
        };
        return $.ajax(l).catch(function (e) {
          i.reject && i.reject(e);
        });
      }
      function ha(e, t) {
        var r = this;
        if (Ea.call(this, e) && !this.isOpened()) {
          var o = t.rpt,
            n = t.isRetry;
          ya.call(this, e), this.user = e.user;
          var i = e.promise,
            a = this.context.appName,
            s = this.context.orgName,
            c = this.apiUrl + "/" + s + "/" + a + "/token";
          if (e.accessToken) this.grantType = "accessToken", this.token = e.accessToken, this.context.accessToken = e.accessToken, this.context.restTokenData = e.accessToken, i.resolve({
            accessToken: e.accessToken
          }), ga.call(this, e, o);else if (e.agoraToken) this.grantType = "agoraToken", this.token = e.agoraToken, this.context.accessToken = e.agoraToken, this.context.restTokenData = e.agoraToken, i.resolve({
            accessToken: e.agoraToken
          }), ga.call(this, e, o);else {
            this.grantType = "password";
            var u = {
                grant_type: "password",
                username: e.user,
                password: e.pwd,
                timestamp: +new Date()
              },
              l = JSON.stringify(u),
              p = {
                headers: {
                  "Content-type": "application/json"
                },
                url: c,
                dataType: "json",
                data: l,
                success: function (t) {
                  "function" == typeof e.success && e.success(t), r.token = t.access_token, r.context.restTokenData = t.access_token, r.context.accessToken = t.access_token, r.expiresIn = t.expires_in, i.resolve({
                    accessToken: t.access_token,
                    duration: t.expires_in
                  });
                  var a = t.extraInfo,
                    s = a.httpCode,
                    u = a.elapse,
                    l = {
                      requestName: y.LOGIN_BY_PWD,
                      requestElapse: u,
                      requestUrl: c,
                      isSuccess: 1,
                      code: s
                    };
                  o({
                    isRetry: n,
                    data: l
                  }), ga.call(r, t, o);
                } || ua,
                error: function (t) {
                  var a,
                    s = t.extraInfo,
                    u = s.elapse,
                    l = s.httpCode,
                    p = s.errDesc,
                    h = {
                      requestName: y.LOGIN_BY_PWD,
                      requestElapse: u,
                      requestUrl: c,
                      isSuccess: 0,
                      code: l,
                      codeDesc: p
                    };
                  if (o({
                    isRetry: n,
                    data: h
                  }), r.isHttpDNS && r.restIndex + 1 < r.restTotal) return r.restIndex++, va.call(r), void ha.call(r, e, {
                    rpt: o,
                    isRetry: !0
                  });
                  o({
                    data: {
                      isLastApi: 1,
                      isSuccess: 0
                    }
                  }), r.clear(), t.error && t.error_description ? (a = m.create({
                    type: d.WEBIM_CONNCTION_OPEN_USERGRID_ERROR,
                    message: t.error_description,
                    data: t
                  }), r.onError && r.onError(a)) : (a = m.create({
                    type: d.WEBIM_CONNCTION_OPEN_ERROR,
                    message: t.error_description,
                    data: t
                  }), r.onError && r.onError(a)), "function" == typeof e.error && e.error(a), i.reject(a);
                } || ua,
                version: "4.3.0"
              };
            $.ajax(p).catch(function (e) {
              console.warn(e);
            });
          }
          $.listenNetwork(fa.bind(this), ma.bind(this));
        }
      }
      function fa() {
        var e;
        G.debug("online"), this.onOnline && this.onOnline(), null === (e = this.eventHandler) || void 0 === e || e.dispatch("onOnline"), this.sock && 1 !== this.sock.readyState && (G.debug("sock.readyState:", this.sock.readyState), this.logOut || this.reconnecting || this.reconnect());
      }
      function ma() {
        var e;
        G.debug("offline"), this.onOffline && this.onOffline(), null === (e = this.eventHandler) || void 0 === e || e.dispatch("onOffline");
      }
      function ga(e, t) {
        var r = this,
          o = this._getSock();
        this.sock = o;
        var n = function n() {
            var e;
            G.debug("websocket onOpen"), t && t({
              data: {
                isLastApi: 1,
                isSuccess: 1,
                accessChannel: null === (e = r.socketHost[r.hostIndex]) || void 0 === e ? void 0 : e.channel
              }
            });
            var n = $.flow([r.mSync.generateProvision, r.mSync.base64transform])();
            try {
              o.send(n);
            } catch (e) {
              var i = m.create({
                type: d.SDK_RUNTIME_ERROR,
                message: "send message error",
                data: e
              });
              r.onError && r.onError(i);
            }
          },
          i = function i(e) {
            setTimeout(function () {
              var t, o, n, i, a, s, c, u, l, p, h, f;
              G.debug("websocket onClose"), "zfb" !== sa.platform && "dd" !== sa.platform || (r.sock.readyState = la.CLOSED);
              var m = 401 === (null == e ? void 0 : e.code) || 401 === (null === (t = r.closeInfo) || void 0 === t ? void 0 : t.code);
              if (r.logOut) r.clear(), r.resetConnState(), m && (G.debug("websocket provision error"), r.closeInfo = null), null === (n = null === (o = null == r ? void 0 : r._localCache) || void 0 === o ? void 0 : o.getInstance()) || void 0 === n || n.close(), r.onClosed && r.onClosed(), null === (i = r.eventHandler) || void 0 === i || i.dispatch("onDisconnected");else if (m) {
                G.debug("websocket provision error");
                var g = {
                  type: d.WEBIM_CONNECTION_ERROR,
                  message: "provision error",
                  data: e
                };
                r.closeInfo = null, r.onError && r.onError(g), null === (a = r.eventHandler) || void 0 === a || a.dispatch("onError", g), null === (c = null === (s = null == r ? void 0 : r._localCache) || void 0 === s ? void 0 : s.getInstance()) || void 0 === c || c.close(), r.onClosed && r.onClosed(), null === (u = r.eventHandler) || void 0 === u || u.dispatch("onDisconnected"), r.resetConnState();
              } else if (r.autoReconnectNumTotal < r.autoReconnectNumMax) {
                r.reconnect();
                var E = {
                  type: d.WEBIM_CONNCTION_DISCONNECTED,
                  message: "websocket has been disconnected"
                };
                r.onError && r.onError(E), r.autoReconnectNumTotal % r.refreshDNSIntervals == 0 && "web" === sa.platform && r.isHttpDNS && (G.debug("refresh dns config when websocket close"), Ta.call(r, "refresh", {}, {}));
              } else null === (l = r.unMSyncSendMsgMap) || void 0 === l || l.clear(), r.rejectMessage(), E = {
                type: d.WEBIM_CONNCTION_DISCONNECTED,
                message: "websocket has been disconnected"
              }, r.onError && r.onError(E), null === (h = null === (p = null == r ? void 0 : r._localCache) || void 0 === p ? void 0 : p.getInstance()) || void 0 === h || h.close(), r.onClosed && r.onClosed(), null === (f = r.eventHandler) || void 0 === f || f.dispatch("onDisconnected"), r.resetConnState(), r.reconnecting = !1, G.debug("reconnect fail");
            }, 0);
          },
          a = function a(e) {
            var t = r.mSync,
              o = t.decodeMSync,
              n = t.distributeMSync;
            $.flow([o, n])(e);
          };
        "web" === sa.platform ? (o.onopen = n, o.onclose = i, o.onmessage = a) : (o.onOpen(n), o.onMessage(a), o.onClose(i), "undefined" != typeof window && window.WebSocket || o.onError(function (e) {
          var o, n, i, a, s;
          if (G.debug("mini program sock on error", e), r.onError && r.onError({
            type: d.WEBIM_CONNECTION_ERROR,
            message: "on socket error",
            data: e
          }), !r.logOut) if (r.autoReconnectNumTotal < r.autoReconnectNumMax) G.debug("sock.onError reconnect", r.autoReconnectNumTotal, r.autoReconnectNumMax), r.reconnect(), r.autoReconnectNumTotal % r.refreshDNSIntervals == 0 && "web" === sa.platform && r.isHttpDNS && (G.debug("refresh dns config when websocket error"), Ta.call(r, "refresh", {}, {}));else {
            var c = {
              type: d.WEBIM_CONNCTION_DISCONNECTED,
              message: "websocket has been disconnected"
            };
            null === (o = r.unMSyncSendMsgMap) || void 0 === o || o.clear(), r.rejectMessage(), r.onError && r.onError(c), null === (i = null === (n = null == r ? void 0 : r._localCache) || void 0 === n ? void 0 : n.getInstance()) || void 0 === i || i.close(), r.onClosed && r.onClosed(), null === (a = r.eventHandler) || void 0 === a || a.dispatch("onDisconnected"), r.resetConnState(), r.reconnecting = !1, G.debug("reconnect fail");
          }
          t && t({
            data: {
              isLastApi: 1,
              isSuccess: 0,
              accessChannel: null === (s = r.socketHost[r.hostIndex]) || void 0 === s ? void 0 : s.channel
            }
          });
        }));
      }
      function Ea(e) {
        if ("" === e.user) {
          var t = m.create({
            type: d.WEBIM_CONNCTION_USER_NOT_ASSIGN_ERROR,
            message: "the user cannot be empty"
          });
          return G.debug("open params error", t), this.onError && this.onError(t), !1;
        }
        var r = this.appKey.split("#");
        return !(2 !== r.length || !r[0] || !r[1]) || (t = m.create({
          type: d.WEBIM_CONNCTION_APPKEY_NOT_ASSIGN_ERROR,
          message: "the appKey is illegal"
        }), G.debug("open params error", t), this.onError && this.onError(t), !1);
      }
      function ya(e) {
        this.context.jid = {
          appKey: this.appKey,
          name: e.user,
          domain: this.domain,
          clientResource: this.clientResource
        };
        var t = this.appKey.split("#"),
          r = t[0],
          o = t[1];
        this.context.root = this.root, this.context.userId = e.user, this.context.appKey = this.appKey, this.context.appName = o, this.context.orgName = r;
      }
      function Ta(e, t, r) {
        var o = this,
          n = r.rpt,
          i = r.isRetry,
          a = this.dnsArr[this.dnsIndex] + "/easemob/server.json",
          s = {
            url: a,
            dataType: "json",
            type: "GET",
            data: {
              app_key: encodeURIComponent(this.appKey)
            },
            success: function (r) {
              var s = r.extraInfo,
                c = s.elapse,
                u = s.httpCode,
                l = {
                  requestUrl: a,
                  requestName: y.GET_DNS,
                  requestElapse: c,
                  isSuccess: 1,
                  code: u
                };
              "true" === (null == r ? void 0 : r.enableDataReport) ? (o.dataReport.setIsCollectDt(!0), o.dataReport.setIsReportDt(!0)) : (o.dataReport.setIsReportDt(!1), o.dataReport.setIsCollectDt(!1)), n && n({
                isRetry: i,
                data: l
              });
              var d = r.rest.hosts,
                p = o.https ? "https" : "http";
              if (G.info("httpType: " + p), !d) return Promise.reject(!1);
              for (var h = d.filter(function (e) {
                  if (e.protocol === p) return e;
                }), f = 0; f < h.length; f++) {
                if (h[f].protocol === p) {
                  var m = h[f];
                  h.splice(f, 1), h.unshift(m);
                }
              }
              o.restHosts = h, o.restTotal = h.length;
              var g = r["msync-ws"].hosts;
              if (!g) return Promise.reject(!1);
              var E = g.filter(function (e) {
                return e.protocol === p && e;
              });
              o.socketHost = E, o.hostTotal = E.length, va.call(o), "refresh" !== e && ("login" === e ? ha.call(o, t, {
                rpt: n
              }) : pa.call(o, t, {
                rpt: n
              }));
            } || ua,
            error: function (r) {
              var s = r.extraInfo,
                c = s.elapse,
                u = s.httpCode,
                l = s.errDesc,
                d = {
                  requestUrl: a,
                  requestName: y.GET_DNS,
                  isSuccess: 0,
                  code: u,
                  codeDesc: l,
                  requestElapse: c
                };
              n && n({
                isRetry: i,
                data: d
              }), G.debug("getHttpDNS fail: " + o.dnsIndex), o.dnsIndex++, o.dnsIndex < o.dnsTotal && Ta.call(o, e, t, {
                rpt: n,
                isRetry: !0
              });
            } || ua
          };
        return $.ajax(s).catch(function (e) {
          console.warn(e);
        });
      }
      function va() {
        var e, t;
        if (this.restIndex > this.restTotal) return G.debug("restIndex > restTotal"), "";
        var r = "",
          o = this.restHosts[this.restIndex],
          n = o.domain,
          i = o.ip,
          a = o.port,
          s = this.https ? "https:" : "http:";
        return i && "undefined" != typeof window && "http:" === (null === (e = null === window || void 0 === window ? void 0 : window.location) || void 0 === e ? void 0 : e.protocol) ? r = s + "//" + i + ":" + a : (r = s + "//" + n, a && "80" !== a && "443" !== a && (r += ":".concat(a)), "undefined" == typeof window || window.location || (r = "https://" + n), "undefined" != typeof window && window.location && "file:" === (null === (t = window.location) || void 0 === t ? void 0 : t.protocol) && (r = "https://" + n)), "undefined" == typeof window && (r = s + "//" + n), this.apiUrl = r, r;
      }
      var _a = $.getEnvInfo(),
        Ra = _a.global;
      p.util.Long = f(), p.configure();
      var Oa = p.Root.fromJSON({
        nested: {
          easemob: {
            nested: {
              pb: {
                nested: {
                  MessageBody: {
                    fields: {
                      type: {
                        type: "Type",
                        id: 1
                      },
                      from: {
                        type: "JID",
                        id: 2
                      },
                      to: {
                        type: "JID",
                        id: 3
                      },
                      contents: {
                        rule: "repeated",
                        type: "Content",
                        id: 4
                      },
                      ext: {
                        rule: "repeated",
                        type: "KeyValue",
                        id: 5
                      },
                      ackMessageId: {
                        type: "uint64",
                        id: 6
                      },
                      msgConfig: {
                        type: "MessageConfig",
                        id: 7
                      },
                      ackContent: {
                        type: "string",
                        id: 8
                      },
                      meta: {
                        type: "string",
                        id: 9
                      },
                      editMessageId: {
                        type: "uint64",
                        id: 11
                      }
                    },
                    nested: {
                      Content: {
                        fields: {
                          type: {
                            type: "Type",
                            id: 1
                          },
                          text: {
                            type: "string",
                            id: 2
                          },
                          latitude: {
                            type: "double",
                            id: 3
                          },
                          longitude: {
                            type: "double",
                            id: 4
                          },
                          address: {
                            type: "string",
                            id: 5
                          },
                          displayName: {
                            type: "string",
                            id: 6
                          },
                          remotePath: {
                            type: "string",
                            id: 7
                          },
                          secretKey: {
                            type: "string",
                            id: 8
                          },
                          fileLength: {
                            type: "int32",
                            id: 9
                          },
                          action: {
                            type: "string",
                            id: 10
                          },
                          params: {
                            rule: "repeated",
                            type: "KeyValue",
                            id: 11
                          },
                          duration: {
                            type: "int32",
                            id: 12
                          },
                          size: {
                            type: "Size",
                            id: 13
                          },
                          thumbnailRemotePath: {
                            type: "string",
                            id: 14
                          },
                          thumbnailSecretKey: {
                            type: "string",
                            id: 15
                          },
                          thumbnailDisplayName: {
                            type: "string",
                            id: 16
                          },
                          thumbnailFileLength: {
                            type: "int32",
                            id: 17
                          },
                          thumbnailSize: {
                            type: "Size",
                            id: 18
                          },
                          customEvent: {
                            type: "string",
                            id: 19
                          },
                          customExts: {
                            rule: "repeated",
                            type: "KeyValue",
                            id: 20
                          },
                          buildingName: {
                            type: "string",
                            id: 21
                          },
                          subType: {
                            type: "SubType",
                            id: 22
                          },
                          title: {
                            type: "string",
                            id: 23
                          },
                          summary: {
                            type: "string",
                            id: 24
                          },
                          combineLevel: {
                            type: "int32",
                            id: 25
                          }
                        },
                        nested: {
                          Type: {
                            values: {
                              TEXT: 0,
                              IMAGE: 1,
                              VIDEO: 2,
                              LOCATION: 3,
                              VOICE: 4,
                              FILE: 5,
                              COMMAND: 6,
                              CUSTOM: 7,
                              COMBINE: 8
                            }
                          },
                          Size: {
                            fields: {
                              width: {
                                type: "double",
                                id: 1
                              },
                              height: {
                                type: "double",
                                id: 2
                              }
                            }
                          },
                          SubType: {
                            values: {
                              COMBINE: 0
                            }
                          }
                        }
                      },
                      Type: {
                        values: {
                          NORMAL: 0,
                          CHAT: 1,
                          GROUPCHAT: 2,
                          CHATROOM: 3,
                          READ_ACK: 4,
                          DELIVER_ACK: 5,
                          RECALL: 6,
                          CHANNEL_ACK: 7,
                          EDIT: 8
                        }
                      },
                      MessageConfig: {
                        fields: {
                          allowGroupAck: {
                            type: "bool",
                            id: 1
                          }
                        }
                      }
                    }
                  },
                  KeyValue: {
                    oneofs: {
                      value: {
                        oneof: ["varintValue", "floatValue", "doubleValue", "stringValue"]
                      }
                    },
                    fields: {
                      key: {
                        type: "string",
                        id: 1
                      },
                      type: {
                        type: "ValueType",
                        id: 2
                      },
                      varintValue: {
                        type: "int64",
                        id: 3
                      },
                      floatValue: {
                        type: "float",
                        id: 4
                      },
                      doubleValue: {
                        type: "double",
                        id: 5
                      },
                      stringValue: {
                        type: "string",
                        id: 6
                      }
                    },
                    nested: {
                      ValueType: {
                        values: {
                          BOOL: 1,
                          INT: 2,
                          UINT: 3,
                          LLINT: 4,
                          FLOAT: 5,
                          DOUBLE: 6,
                          STRING: 7,
                          JSON_STRING: 8
                        }
                      }
                    }
                  },
                  JID: {
                    fields: {
                      appKey: {
                        type: "string",
                        id: 1
                      },
                      name: {
                        type: "string",
                        id: 2
                      },
                      domain: {
                        type: "string",
                        id: 3
                      },
                      clientResource: {
                        type: "string",
                        id: 4
                      }
                    }
                  },
                  ConferenceBody: {
                    fields: {
                      sessionId: {
                        type: "string",
                        id: 1
                      },
                      operation: {
                        type: "Operation",
                        id: 2
                      },
                      conferenceId: {
                        type: "string",
                        id: 3
                      },
                      type: {
                        type: "Type",
                        id: 4
                      },
                      content: {
                        type: "string",
                        id: 5
                      },
                      network: {
                        type: "string",
                        id: 6
                      },
                      version: {
                        type: "string",
                        id: 7
                      },
                      identity: {
                        type: "Identity",
                        id: 8
                      },
                      duration: {
                        type: "string",
                        id: 9
                      },
                      peerName: {
                        type: "string",
                        id: 10
                      },
                      endReason: {
                        type: "EndReason",
                        id: 11
                      },
                      status: {
                        type: "Status",
                        id: 12
                      },
                      isDirect: {
                        type: "bool",
                        id: 13
                      },
                      controlType: {
                        type: "StreamControlType",
                        id: 14
                      },
                      routeFlag: {
                        type: "int32",
                        id: 15
                      },
                      routeKey: {
                        type: "string",
                        id: 16
                      }
                    },
                    nested: {
                      Status: {
                        fields: {
                          errorCode: {
                            type: "int32",
                            id: 1
                          }
                        }
                      },
                      Operation: {
                        values: {
                          JOIN: 0,
                          INITIATE: 1,
                          ACCEPT_INITIATE: 2,
                          ANSWER: 3,
                          TERMINATE: 4,
                          REMOVE: 5,
                          STREAM_CONTROL: 6,
                          MEDIA_REQUEST: 7
                        }
                      },
                      Type: {
                        values: {
                          VOICE: 0,
                          VIDEO: 1
                        }
                      },
                      Identity: {
                        values: {
                          CALLER: 0,
                          CALLEE: 1
                        }
                      },
                      EndReason: {
                        values: {
                          HANGUP: 0,
                          NORESPONSE: 1,
                          REJECT: 2,
                          BUSY: 3,
                          FAIL: 4,
                          UNSUPPORTED: 5,
                          OFFLINE: 6
                        }
                      },
                      StreamControlType: {
                        values: {
                          PAUSE_VOICE: 0,
                          RESUME_VOICE: 1,
                          PAUSE_VIDEO: 2,
                          RESUME_VIDEO: 3
                        }
                      }
                    }
                  },
                  MSync: {
                    fields: {
                      version: {
                        type: "Version",
                        id: 1,
                        options: {
                          default: "MSYNC_V1"
                        }
                      },
                      guid: {
                        type: "JID",
                        id: 2
                      },
                      auth: {
                        type: "string",
                        id: 3
                      },
                      compressAlgorimth: {
                        type: "uint32",
                        id: 4
                      },
                      crypto: {
                        type: "uint32",
                        id: 5
                      },
                      userAgent: {
                        type: "string",
                        id: 6
                      },
                      pov: {
                        type: "uint64",
                        id: 7
                      },
                      command: {
                        type: "Command",
                        id: 8
                      },
                      deviceId: {
                        type: "uint32",
                        id: 10
                      },
                      encryptType: {
                        rule: "repeated",
                        type: "EncryptType",
                        id: 11,
                        options: {
                          packed: !1
                        }
                      },
                      encryptKey: {
                        type: "string",
                        id: 12
                      },
                      payload: {
                        type: "bytes",
                        id: 9
                      }
                    },
                    nested: {
                      Version: {
                        values: {
                          MSYNC_V1: 0,
                          MSYNC_V2: 1
                        }
                      },
                      Command: {
                        values: {
                          SYNC: 0,
                          UNREAD: 1,
                          NOTICE: 2,
                          PROVISION: 3
                        }
                      }
                    }
                  },
                  EncryptType: {
                    values: {
                      ENCRYPT_NONE: 0,
                      ENCRYPT_AES_128_CBC: 1,
                      ENCRYPT_AES_256_CBC: 2
                    }
                  },
                  CommSyncUL: {
                    fields: {
                      meta: {
                        type: "Meta",
                        id: 1
                      },
                      key: {
                        type: "uint64",
                        id: 2
                      },
                      queue: {
                        type: "JID",
                        id: 3
                      },
                      isRoam: {
                        type: "bool",
                        id: 4
                      },
                      lastFullRoamKey: {
                        type: "uint64",
                        id: 5
                      }
                    }
                  },
                  CommSyncDL: {
                    fields: {
                      status: {
                        type: "Status",
                        id: 1
                      },
                      metaId: {
                        type: "uint64",
                        id: 2
                      },
                      serverId: {
                        type: "uint64",
                        id: 3
                      },
                      metas: {
                        rule: "repeated",
                        type: "Meta",
                        id: 4
                      },
                      nextKey: {
                        type: "uint64",
                        id: 5
                      },
                      queue: {
                        type: "JID",
                        id: 6
                      },
                      isLast: {
                        type: "bool",
                        id: 7
                      },
                      timestamp: {
                        type: "uint64",
                        id: 8
                      },
                      isRoam: {
                        type: "bool",
                        id: 9
                      }
                    }
                  },
                  CommNotice: {
                    fields: {
                      queue: {
                        type: "JID",
                        id: 1
                      }
                    }
                  },
                  CommUnreadUL: {
                    fields: {}
                  },
                  CommUnreadDL: {
                    fields: {
                      status: {
                        type: "Status",
                        id: 1
                      },
                      unread: {
                        rule: "repeated",
                        type: "MetaQueue",
                        id: 2
                      },
                      timestamp: {
                        type: "uint64",
                        id: 3
                      }
                    }
                  },
                  MetaQueue: {
                    fields: {
                      queue: {
                        type: "JID",
                        id: 1
                      },
                      n: {
                        type: "uint32",
                        id: 2
                      }
                    }
                  },
                  Meta: {
                    fields: {
                      id: {
                        type: "uint64",
                        id: 1
                      },
                      from: {
                        type: "JID",
                        id: 2
                      },
                      to: {
                        type: "JID",
                        id: 3
                      },
                      timestamp: {
                        type: "uint64",
                        id: 4
                      },
                      ns: {
                        type: "NameSpace",
                        id: 5
                      },
                      payload: {
                        type: "bytes",
                        id: 6
                      },
                      routetype: {
                        type: "RouteType",
                        id: 7
                      },
                      ext: {
                        rule: "repeated",
                        type: "KeyValue",
                        id: 8
                      },
                      meta: {
                        type: "bytes",
                        id: 9
                      },
                      directedUsers: {
                        rule: "repeated",
                        type: "string",
                        id: 10
                      }
                    },
                    nested: {
                      NameSpace: {
                        values: {
                          STATISTIC: 0,
                          CHAT: 1,
                          MUC: 2,
                          ROSTER: 3,
                          CONFERENCE: 4,
                          NOTIFY: 5,
                          QUERY: 6
                        }
                      },
                      RouteType: {
                        values: {
                          ROUTE_ALL: 0,
                          ROUTE_ONLINE: 1,
                          ROUTE_DIRECT: 2
                        }
                      }
                    }
                  },
                  Status: {
                    fields: {
                      errorCode: {
                        type: "ErrorCode",
                        id: 1
                      },
                      reason: {
                        type: "string",
                        id: 2
                      },
                      redirectInfo: {
                        rule: "repeated",
                        type: "RedirectInfo",
                        id: 3
                      }
                    },
                    nested: {
                      ErrorCode: {
                        values: {
                          OK: 0,
                          FAIL: 1,
                          UNAUTHORIZED: 2,
                          MISSING_PARAMETER: 3,
                          WRONG_PARAMETER: 4,
                          REDIRECT: 5,
                          TOKEN_EXPIRED: 6,
                          PERMISSION_DENIED: 7,
                          NO_ROUTE: 8,
                          UNKNOWN_COMMAND: 9,
                          PB_PARSER_ERROR: 10,
                          BIND_ANOTHER_DEVICE: 11,
                          IM_FORBIDDEN: 12,
                          TOO_MANY_DEVICES: 13,
                          PLATFORM_LIMIT: 14,
                          USER_MUTED: 15,
                          ENCRYPT_DISABLE: 16,
                          ENCRYPT_ENABLE: 17,
                          DECRYPT_FAILURE: 18,
                          PERMISSION_DENIED_EXTERNAL: 19
                        }
                      }
                    }
                  },
                  RedirectInfo: {
                    fields: {
                      host: {
                        type: "string",
                        id: 1
                      },
                      port: {
                        type: "uint32",
                        id: 2
                      }
                    }
                  },
                  Provision: {
                    fields: {
                      osType: {
                        type: "OsType",
                        id: 1
                      },
                      version: {
                        type: "string",
                        id: 2
                      },
                      networkType: {
                        type: "NetworkType",
                        id: 3
                      },
                      appSign: {
                        type: "string",
                        id: 4
                      },
                      compressType: {
                        rule: "repeated",
                        type: "CompressType",
                        id: 5,
                        options: {
                          packed: !1
                        }
                      },
                      encryptType: {
                        rule: "repeated",
                        type: "EncryptType",
                        id: 6,
                        options: {
                          packed: !1
                        }
                      },
                      encryptKey: {
                        type: "string",
                        id: 7
                      },
                      status: {
                        type: "Status",
                        id: 8
                      },
                      deviceUuid: {
                        type: "string",
                        id: 9
                      },
                      isManualLogin: {
                        type: "bool",
                        id: 10
                      },
                      password: {
                        type: "string",
                        id: 11
                      },
                      deviceName: {
                        type: "string",
                        id: 12
                      },
                      resource: {
                        type: "string",
                        id: 13
                      },
                      auth: {
                        type: "string",
                        id: 14
                      },
                      serviceId: {
                        type: "string",
                        id: 16
                      },
                      actionVersion: {
                        type: "string",
                        id: 17
                      },
                      authToken: {
                        type: "string",
                        id: 18
                      }
                    },
                    nested: {
                      OsType: {
                        values: {
                          OS_IOS: 0,
                          OS_ANDROID: 1,
                          OS_LINUX: 2,
                          OS_OSX: 3,
                          OS_WIN: 4,
                          OS_OTHER: 16
                        }
                      },
                      NetworkType: {
                        values: {
                          NETWORK_NONE: 0,
                          NETWORK_WIFI: 1,
                          NETWORK_4G: 2,
                          NETWORK_3G: 3,
                          NETWORK_2G: 4,
                          NETWORK_WIRE: 5
                        }
                      },
                      CompressType: {
                        values: {
                          COMPRESS_NONE: 0,
                          COMPRESS_ZLIB: 1
                        }
                      }
                    }
                  },
                  MUCBody: {
                    fields: {
                      mucId: {
                        type: "JID",
                        id: 1
                      },
                      operation: {
                        type: "Operation",
                        id: 2
                      },
                      from: {
                        type: "JID",
                        id: 3
                      },
                      to: {
                        rule: "repeated",
                        type: "JID",
                        id: 4
                      },
                      setting: {
                        type: "Setting",
                        id: 5
                      },
                      reason: {
                        type: "string",
                        id: 6
                      },
                      isChatroom: {
                        type: "bool",
                        id: 7
                      },
                      status: {
                        type: "Status",
                        id: 8
                      },
                      isThread: {
                        type: "bool",
                        id: 9
                      },
                      mucParentId: {
                        type: "JID",
                        id: 10
                      },
                      mucName: {
                        type: "string",
                        id: 11
                      },
                      eventInfo: {
                        type: "EventInfo",
                        id: 12
                      }
                    },
                    nested: {
                      Operation: {
                        values: {
                          CREATE: 0,
                          DESTROY: 1,
                          JOIN: 2,
                          LEAVE: 3,
                          APPLY: 4,
                          APPLY_ACCEPT: 5,
                          APPLY_DECLINE: 6,
                          INVITE: 7,
                          INVITE_ACCEPT: 8,
                          INVITE_DECLINE: 9,
                          KICK: 10,
                          GET_BLACKLIST: 11,
                          BAN: 12,
                          ALLOW: 13,
                          UPDATE: 14,
                          BLOCK: 15,
                          UNBLOCK: 16,
                          PRESENCE: 17,
                          ABSENCE: 18,
                          DIRECT_JOINED: 19,
                          ASSIGN_OWNER: 20,
                          ADD_ADMIN: 21,
                          REMOVE_ADMIN: 22,
                          ADD_MUTE: 23,
                          REMOVE_MUTE: 24,
                          UPDATE_ANNOUNCEMENT: 25,
                          DELETE_ANNOUNCEMENT: 26,
                          UPLOAD_FILE: 27,
                          DELETE_FILE: 28,
                          ADD_USER_WHITE_LIST: 29,
                          REMOVE_USER_WHITE_LIST: 30,
                          BAN_GROUP: 31,
                          REMOVE_BAN_GROUP: 32,
                          THREAD_CREATE: 33,
                          THREAD_DESTROY: 34,
                          THREAD_JOIN: 35,
                          THREAD_LEAVE: 36,
                          THREAD_KICK: 37,
                          THREAD_UPDATE: 38,
                          THREAD_PRESENCE: 39,
                          THREAD_ABSENCE: 40,
                          DISABLE_GROUP: 41,
                          ABLE_GROUP: 42,
                          SET_METADATA: 43,
                          DELETE_METADATA: 44,
                          GROUP_MEMBER_METADATA_UPDATE: 45
                        }
                      },
                      Setting: {
                        fields: {
                          name: {
                            type: "string",
                            id: 1
                          },
                          desc: {
                            type: "string",
                            id: 2
                          },
                          type: {
                            type: "Type",
                            id: 3
                          },
                          maxUsers: {
                            type: "int32",
                            id: 4
                          },
                          owner: {
                            type: "string",
                            id: 5
                          }
                        },
                        nested: {
                          Type: {
                            values: {
                              PRIVATE_OWNER_INVITE: 0,
                              PRIVATE_MEMBER_INVITE: 1,
                              PUBLIC_JOIN_APPROVAL: 2,
                              PUBLIC_JOIN_OPEN: 3,
                              PUBLIC_ANONYMOUS: 4
                            }
                          }
                        }
                      },
                      Status: {
                        fields: {
                          errorCode: {
                            type: "ErrorCode",
                            id: 1
                          },
                          description: {
                            type: "string",
                            id: 2
                          }
                        },
                        nested: {
                          ErrorCode: {
                            values: {
                              OK: 0,
                              PERMISSION_DENIED: 1,
                              WRONG_PARAMETER: 2,
                              MUC_NOT_EXIST: 3,
                              USER_NOT_EXIST: 4,
                              UNKNOWN: 5
                            }
                          }
                        }
                      },
                      EventInfo: {
                        fields: {
                          eventType: {
                            type: "EventType",
                            id: 1,
                            options: {
                              default: "EVENT_NONE"
                            }
                          },
                          ext: {
                            type: "string",
                            id: 2
                          }
                        },
                        nested: {
                          EventType: {
                            values: {
                              EVENT_NONE: 0,
                              CIRCLE_CHANNEL: 1
                            }
                          }
                        }
                      }
                    }
                  },
                  RosterBody: {
                    fields: {
                      operation: {
                        type: "Operation",
                        id: 1
                      },
                      status: {
                        type: "Status",
                        id: 2
                      },
                      from: {
                        type: "JID",
                        id: 3
                      },
                      to: {
                        rule: "repeated",
                        type: "JID",
                        id: 4
                      },
                      reason: {
                        type: "string",
                        id: 5
                      },
                      rosterVer: {
                        type: "string",
                        id: 6
                      },
                      biDirection: {
                        type: "bool",
                        id: 7
                      }
                    },
                    nested: {
                      Operation: {
                        values: {
                          GET_ROSTER: 0,
                          GET_BLACKLIST: 1,
                          ADD: 2,
                          REMOVE: 3,
                          ACCEPT: 4,
                          DECLINE: 5,
                          BAN: 6,
                          ALLOW: 7,
                          REMOTE_ACCEPT: 8,
                          REMOTE_DECLINE: 9
                        }
                      },
                      Status: {
                        fields: {
                          errorCode: {
                            type: "ErrorCode",
                            id: 1
                          },
                          description: {
                            type: "string",
                            id: 2
                          }
                        },
                        nested: {
                          ErrorCode: {
                            values: {
                              OK: 0,
                              USER_NOT_EXIST: 1,
                              USER_ALREADY_FRIEND: 2,
                              USER_ALREADY_BLACKLIST: 3
                            }
                          }
                        }
                      }
                    }
                  },
                  StatisticsBody: {
                    fields: {
                      operation: {
                        type: "Operation",
                        id: 1
                      },
                      os: {
                        type: "OsType",
                        id: 2
                      },
                      version: {
                        type: "string",
                        id: 3
                      },
                      network: {
                        type: "NetworkType",
                        id: 4
                      },
                      imTime: {
                        type: "uint32",
                        id: 5
                      },
                      chatTime: {
                        type: "uint32",
                        id: 6
                      },
                      location: {
                        type: "string",
                        id: 7
                      }
                    },
                    nested: {
                      Operation: {
                        values: {
                          INFORMATION: 0,
                          USER_REMOVED: 1,
                          USER_LOGIN_ANOTHER_DEVICE: 2,
                          USER_KICKED_BY_CHANGE_PASSWORD: 3,
                          USER_KICKED_BY_OTHER_DEVICE: 4
                        }
                      },
                      OsType: {
                        values: {
                          OS_IOS: 0,
                          OS_ANDROID: 1,
                          OS_LINUX: 2,
                          OS_OSX: 3,
                          OS_WIN: 4,
                          OS_OTHER: 16
                        }
                      },
                      NetworkType: {
                        values: {
                          NETWORK_NONE: 0,
                          NETWORK_WIFI: 1,
                          NETWORK_4G: 2,
                          NETWORK_3G: 3,
                          NETWORK_2G: 4,
                          NETWORK_WIRE: 5
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      });
      da.prototype.root = Oa;
      var Ia = function Ia(e) {
        this.onOpen = Ra.onSocketOpen, this.onClose = Ra.onSocketClose, this.onMessage = Ra.onSocketMessage, this.onError = Ra.onSocketError, this.close = Ra.closeSocket, this.send = Ra.sendSocketMessage, this.connectSocket = Ra.connectSocket, this.readyState = 3, this.offSocketOpen = Ra.offSocketOpen, this.offSocketMessage = Ra.offSocketMessage, this.offSocketError = Ra.offSocketError, this.offSocketClose = Ra.offSocketClose, this.connect = function () {
          this.offSocketOpen(), this.offSocketMessage(), this.offSocketClose(), this.offSocketError(), Ra.connectSocket({
            url: e.url,
            header: {
              "content-type": "application/json"
            },
            success: function success(e) {},
            fail: function fail() {}
          });
        };
      };
      da.prototype._getSock = function () {
        var e;
        return this.sock && this.sock.close && this.sock.close(), (e = "zfb" === _a.platform || "dd" === _a.platform ? new Ia(this) : Ra.connectSocket({
          url: this.url,
          header: {
            "content-type": "application/json"
          },
          success: function success(e) {},
          fail: function fail(e) {
            e.errMsg.indexOf("suspend");
          },
          complete: function complete() {}
        })).connect && e.connect(), e;
      }, da.prototype.getUniqueId = $.getUniqueId, da.prototype.deviceId = "miniProgram_" + _a.platform, da.prototype._localCache = void 0;
      var Sa = G.getLogger("defaultLogger");
      Sa.setConfig({
        useCache: !1,
        maxCache: 3145728
      }), Sa.enableAll(), $.ajax = $.wxRequest;
      var Ca = {
        connection: da,
        message: Te,
        utils: $,
        logger: Sa,
        statusCode: d
      };
    }(), o;
  }();
});
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js */ 1)["default"], __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"], __webpack_require__(/*! (webpack)/buildin/module.js */ 32)(module)))

/***/ }),

/***/ 32:
/*!***********************************!*\
  !*** (webpack)/buildin/module.js ***!
  \***********************************/
/*! no static exports found */
/***/ (function(module, exports) {

module.exports = function(module) {
	if (!module.webpackPolyfill) {
		module.deprecate = function() {};
		module.paths = [];
		// module.parent = undefined by default
		if (!module.children) module.children = [];
		Object.defineProperty(module, "loaded", {
			enumerable: true,
			get: function() {
				return module.l;
			}
		});
		Object.defineProperty(module, "id", {
			enumerable: true,
			get: function() {
				return module.i;
			}
		});
		module.webpackPolyfill = 1;
	}
	return module;
};


/***/ }),

/***/ 33:
/*!***********************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/utils/WebIMConfig.js ***!
  \***********************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/**
 * git do not control webim.config.js
 * everyone should copy webim.config.js to webim.config.js
 * and have their own configs.
 * In this way , others won't be influenced by this config while git pull.
 *
 */
// for react native
var location = {
  protocol: "https"
};
var config = {
  /*
   * XMPP server
   */

  // xmppURL: "wss://im-api-new-hsb.easemob.com/websocket",// websdk 3.0 server 沙箱（测试用）

  // xmppURL: "wss://im-api.easemob.com/ws",  //小程序sdk 2.0 server

  // xmppURL: 'wss://im-api-wechat.easemob.com/websocket', //小程序3.0 server 线上 小程序和原生客户端使用这个

  // xmppURL: 'wss://im-api-v2-hsb-alipay.easemob.com/websocket', // 支付宝沙箱 （测试用）

  // xmppURL: 'wss://im-api-alipay.easemob.com/websocket', // 支付宝线上 支付宝小程序请使用这个地址

  /*
   * Backend REST API URL
   */
  // apiURL: (location.protocol === 'https:' ? 'https:' : 'http:') + '//a1.easemob.com',
  // ios must be https!!! by lwz
  apiURL: "https://a1.easemob.com",
  // apiURL: 'https://192.168.43.137:8080', // 支付宝测试
  // apiURL: (location.protocol === 'https:' ? 'https:' : 'http:') + '//172.17.3.155:8080',

  /*
   * Application AppKey
   */
  appkey: "1145230719209454#neihe",
  /*
   * Whether to use HTTPS      '1177161227178308#xcx'
   * @parameter {Boolean} true or false
   */
  https: false,
  /*
   * isMultiLoginSessions
   * true: A visitor can sign in to multiple webpages and receive messages at all the webpages.
   * false: A visitor can sign in to only one webpage and receive messages at the webpage.
   */
  isMultiLoginSessions: false,
  /**
   * Whether to use window.doQuery()
   * @parameter {Boolean} true or false
   */
  isWindowSDK: false,
  /**
   * isSandBox=true:  xmppURL: 'im-api.sandbox.easemob.com',  apiURL: '//a1.sdb.easemob.com',
   * isSandBox=false: xmppURL: 'im-api.easemob.com',          apiURL: '//a1.easemob.com',
   * @parameter {Boolean} true or false
   */
  isSandBox: false,
  /**
   * Whether to console.log in strophe.log()
   * @parameter {Boolean} true or false
   */
  isDebug: false,
  /**
   * will auto connect the xmpp server autoReconnectNumMax times in background when client is offline.
   * won't auto connect if autoReconnectNumMax=0.
   */
  autoReconnectNumMax: 2,
  /**
   * the interval secons between each atuo reconnectting.
   * works only if autoReconnectMaxNum >= 2.
   */
  autoReconnectInterval: 2,
  /**
   * webrtc supports WebKit and https only
   */
  isWebRTC: false,
  /*
   * Set to auto sign-in
   */
  isAutoLogin: true
};
var _default = config;
exports.default = _default;

/***/ }),

/***/ 34:
/*!******************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/utils/vueBus.js ***!
  \******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 25));
var VueBUs = new _vue.default();
var _default = VueBUs;
exports.default = _default;

/***/ }),

/***/ 35:
/*!*******************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/units/inquire.js ***!
  \*******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.activityCreate = activityCreate;
exports.activityauth = activityauth;
exports.activityget_list = activityget_list;
exports.article_get_detail = article_get_detail;
exports.article_get_list = article_get_list;
exports.articlecomment = articlecomment;
exports.articledetails = articledetails;
exports.articlelike = articlelike;
exports.articlelist = articlelist;
exports.browse_get_list = browse_get_list;
exports.cget_total_number = cget_total_number;
exports.changemobile = changemobile;
exports.check = check;
exports.collect = collect;
exports.collect_get_list = collect_get_list;
exports.commentlike = commentlike;
exports.commission_data = commission_data;
exports.commission_feedback = commission_feedback;
exports.commission_list = commission_list;
exports.commission_log_list = commission_log_list;
exports.companydetail = companydetail;
exports.create = create;
exports.create_article = create_article;
exports.create_group = create_group;
exports.del_article = del_article;
exports.del_group = del_group;
exports.deleteBank = deleteBank;
exports.destroy = destroy;
exports.edit_image = edit_image;
exports.follow = follow;
exports.followgrouplist = followgrouplist;
exports.followuser = followuser;
exports.getAllArea = getAllArea;
exports.getBank = getBank;
exports.getCode = getCode;
exports.getEmchatUsersData = getEmchatUsersData;
exports.getList = getList;
exports.get_ad_list = get_ad_list;
exports.get_agreement_detail = get_agreement_detail;
exports.get_category_field = get_category_field;
exports.get_category_industry = get_category_industry;
exports.get_category_industry_recommend = get_category_industry_recommend;
exports.get_category_job = get_category_job;
exports.get_category_job_ids = get_category_job_ids;
exports.get_category_job_recommend = get_category_job_recommend;
exports.get_company_detail = get_company_detail;
exports.get_company_job_list = get_company_job_list;
exports.get_company_list = get_company_list;
exports.get_company_scale = get_company_scale;
exports.get_company_stage = get_company_stage;
exports.get_detail = get_detail;
exports.get_education = get_education;
exports.get_experience = get_experience;
exports.get_finance_config = get_finance_config;
exports.get_job_status = get_job_status;
exports.get_language = get_language;
exports.get_language_level = get_language_level;
exports.get_list = get_list;
exports.get_recommend = get_recommend;
exports.get_sex = get_sex;
exports.get_total_number = get_total_number;
exports.getareacity = getareacity;
exports.getdetail = getdetail;
exports.getexperience = getexperience;
exports.getjob = getjob;
exports.getjoblist = getjoblist;
exports.group_details_article = group_details_article;
exports.group_details_user = group_details_user;
exports.group_list = group_list;
exports.grouplist = grouplist;
exports.homepagearticle = homepagearticle;
exports.index = index;
exports.interview_accept = interview_accept;
exports.interview_refuse = interview_refuse;
exports.invite_list = invite_list;
exports.is_auth = is_auth;
exports.jobdata = jobdata;
exports.marital = marital;
exports.message = message;
exports.mobileLogin = mobileLogin;
exports.notification = notification;
exports.ocr = ocr;
exports.offer_pass = offer_pass;
exports.offer_refuse = offer_refuse;
exports.orderCreate = orderCreate;
exports.order_detail = order_detail;
exports.orderlist = orderlist;
exports.others_homepage = others_homepage;
exports.parent_info = parent_info;
exports.pay = pay;
exports.phraseList = phraseList;
exports.phrase_create = phrase_create;
exports.phrase_destory = phrase_destory;
exports.phrase_update = phrase_update;
exports.politics = politics;
exports.private_setting = private_setting;
exports.profile = profile;
exports.readcomment = readcomment;
exports.refresh = refresh;
exports.resetpwd = resetpwd;
exports.resumeDetail = resumeDetail;
exports.setBank = setBank;
exports.third = third;
exports.third_mobile = third_mobile;
exports.update = update;
exports.updateNotificationSwitch = updateNotificationSwitch;
exports.upload = upload;
exports.usergrouplist = usergrouplist;
exports.view = view;
exports.withdraw = withdraw;
var _request = _interopRequireDefault(__webpack_require__(/*! ./request.js */ 36));
// 手机验证码登录获取验证码
function getCode(param) {
  return _request.default.post('/api/sms/send', param);
}
// 手机验证码登录接口
function mobileLogin(param) {
  return _request.default.post('/api/candidate.user/mobilelogin', param);
}
//微信授权登录
function third(param) {
  return _request.default.post('/api/candidate.user/third', param);
}

// 职位列表
function getList(param) {
  return _request.default.post('/api/candidate.job/get_list', param);
}

//政治面貌
function politics(param) {
  return _request.default.post('/api/commons/get_political_status', param);
}

//婚姻状态列表
function marital(param) {
  return _request.default.post('/api/commons/get_marital_status', param);
}

//所有地区列表
function getAllArea(param) {
  return _request.default.post('/api/commons/getAllArea', param);
}

//求职状态
function getjob(param) {
  return _request.default.post('/api/commons/get_job_status', param);
}

//求职详情
function getdetail(param) {
  return _request.default.post('/api/candidate.job/get_detail', param);
}

//收藏接口
function collect(param) {
  return _request.default.post('/api/candidate.job_collect/collect', param);
}
//公司简介
function companydetail(param) {
  return _request.default.post('/api/company/get_company_detail', param);
}
//获取招聘职位列表
function getjoblist(param) {
  return _request.default.post('/api/company/get_company_job_list', param);
}
//公司职位统计
function jobdata(param) {
  return _request.default.post('/api/company/get_company_job_data', param);
}
//工作年限列表
function getexperience(param) {
  return _request.default.post('/api/commons/get_experience', param);
}
//获取省市列表
function getareacity(param) {
  return _request.default.post('/api/commons/get_area_city', param);
}

//论坛列表
function articlelist(param) {
  return _request.default.get('/api/candidate.forum/article_list', param);
}

//圈子列表
function grouplist(param) {
  return _request.default.get('/api/candidate.forum/group_list', param);
}

//我的关注-用户列表
function followuser(param) {
  return _request.default.post('/api/candidate.forum/mine_follow_user', param);
}

//关注-取消关注
function follow(param) {
  return _request.default.post('/api/candidate.forum/follow', param);
}

//用户中心
function index(param) {
  return _request.default.post('/api/candidate.user/index', param);
}

//帖子点赞或取消点赞
function articlelike(param) {
  return _request.default.post('/api/candidate.forum/article_like', param);
}

//评论点赞或取消点赞
function commentlike(param) {
  return _request.default.post('/api/candidate.forum/comment_like', param);
}

//评论帖子
function articlecomment(param) {
  return _request.default.post('/api/candidate.forum/article_comment', param);
}

//查看评论
function readcomment(param) {
  return _request.default.get('/api/candidate.forum/read_comment', param);
}

//帖子详情
function articledetails(param) {
  return _request.default.post('/api/candidate.forum/article_details', param);
}

//他人主页
function homepagearticle(param) {
  return _request.default.post('/api/candidate.forum/others_homepage_article', param);
}

//用户关注圈子列表
function followgrouplist(param) {
  return _request.default.post('/api/candidate.forum/user_follow_group_list', param);
}

//用户创建圈子列表
function usergrouplist(param) {
  return _request.default.post('/api/candidate.forum/user_group_list', param);
}

//他人主页
function others_homepage(param) {
  return _request.default.post('/api/candidate.forum/others_homepage', param);
}

//删除帖子
function del_article(param) {
  return _request.default.post('/api/candidate.forum/del_article', param);
}

//圈子主页用户信息
function group_details_user(param) {
  return _request.default.post('/api/candidate.forum/group_details_user', param);
}

//圈子主页
function group_details_article(param) {
  return _request.default.post('/api/candidate.forum/group_details_article', param);
}

//消息列表
function message(param) {
  return _request.default.post('/api/candidate.forum/get_message_list', param);
}

//圈子列表
function group_list(param) {
  return _request.default.post('/api/candidate.forum/group_list_mini', param);
}

//发布帖子
function create_article(param) {
  return _request.default.post('/api/candidate.forum/create_article', param);
}

//创建圈子
function create_group(param) {
  return _request.default.post('/api/candidate.forum/create_group', param);
}

//查看通知
function view(param) {
  return _request.default.post('/api/candidate.notification/view', param);
}

//通知列表
function get_list(param) {
  return _request.default.post('/api/candidate.notification/get_list', param);
}

//推荐行业列表
function get_category_industry_recommend(param) {
  return _request.default.post('/api/commons/get_category_industry_recommend', param);
}
//推荐职业分类列表
function get_category_job_recommend(param) {
  return _request.default.post('/api/commons/get_category_job_recommend', param);
}

// 学位要求列表
function get_education(param) {
  return _request.default.post('/api/commons/get_education', param);
}

// 工作年限列表
function get_experience(param) {
  return _request.default.post('/api/commons/get_experience', param);
}
// 公司发展阶段列表
function get_company_stage(param) {
  return _request.default.post('/api/commons/get_company_stage', param);
}

// 公司发展阶段列表
function activityget_list(param) {
  return _request.default.post('/api/candidate.activity/get_list', param);
}

// 学校认证信息
function is_auth(param) {
  return _request.default.post('/api/candidate.activity/is_auth', param);
}
// 活动详情
function get_detail(param) {
  return _request.default.post('/api/candidate.activity/get_detail', param);
}
// 招聘列表
function get_company_list(param) {
  return _request.default.post('/api/candidate.activity/get_company_list', param);
}

// 招聘介绍
function get_company_detail(param) {
  return _request.default.post('/api/candidate.activity/get_company_detail', param);
}
// 招聘职位列表
function get_company_job_list(param) {
  return _request.default.post('/api/candidate.activity/get_company_job_list', param);
}

// 我的收藏列表
function collect_get_list(param) {
  return _request.default.post('/api/candidate.job_collect/get_list', param);
}

// 谁看过我列表
function browse_get_list(param) {
  return _request.default.post('/api/candidate.resume_browse/get_list', param);
}

// 修改手机号
function changemobile(param) {
  return _request.default.post('/api/candidate.user/changemobile', param);
}

// 重置密码
function resetpwd(param) {
  return _request.default.post('/api/candidate.user/resetpwd', param);
}

// 检验验证码
function check(param) {
  return _request.default.post('/api/sms/check', param);
}
// 上传文件
function upload(param) {
  return _request.default.post('/api/common/upload', param);
}
// 协议详情
function get_agreement_detail(param) {
  return _request.default.post('/api/commons/get_agreement_detail', param);
}
// 资讯精选
function get_recommend(param) {
  return _request.default.post('/api/article/get_recommend', param);
}
// 全部
function article_get_list(param) {
  return _request.default.post('/api/article/get_list', param);
}
// 资讯详情
function article_get_detail(param) {
  return _request.default.post('/api/article/get_detail', param);
}
// 广告列表
function get_ad_list(param) {
  return _request.default.post('/api/article/get_ad_list', param);
}

// 投递列表
function orderlist(param) {
  return _request.default.post('/api/candidate.order/list', param);
}

// 会员信息
function profile(param) {
  return _request.default.post('/api/candidate.user/profile', param);
}

// 行业列表
function get_category_industry(param) {
  return _request.default.post('/api/commons/get_category_industry', param);
}

// 规模列表
function get_company_scale(param) {
  return _request.default.post('/api/commons/get_company_scale', param);
}

//获取简历求职期望
function get_category_job_ids(param) {
  return _request.default.post('/api/candidate.job/get_category_job_ids', param);
}

//职业分类列表
function get_category_job(param) {
  return _request.default.post('/api/commons/get_category_job', param);
}

//完善简历
function create(param) {
  return _request.default.post('/api/candidate.resume/create', param);
}

//获取财务配置
function get_finance_config(param) {
  return _request.default.post('/api/commons/get_finance_config', param);
}

//订单详情
function order_detail(param) {
  return _request.default.post('/api/candidate.order/detail', param);
}

//获取用户银行卡信息
function getBank(param) {
  return _request.default.get('/api/candidate.user/getBank', param);
}

//我的佣金列表
function commission_list(param) {
  return _request.default.post('/api/candidate.order/commission_list', param);
}

//佣金数据
function commission_data(param) {
  return _request.default.post('/api/candidate.order/commission_data', param);
}
//发起提现
function withdraw(param) {
  return _request.default.post('/api/candidate.order/withdraw', param);
}

//设置银行账户信息
function setBank(param) {
  return _request.default.post('/api/candidate.user/setBank', param);
}

//简历详情
function resumeDetail(param) {
  return _request.default.post('/api/candidate.resume/detail', param);
}

//求职状态列表
function get_job_status(param) {
  return _request.default.post('/api/commons/get_job_status', param);
}

//数据更新
function update(param) {
  return _request.default.post('/api/candidate.resume/update', param);
}

//删除
function destroy(param) {
  return _request.default.post('/api/candidate.resume/destroy', param);
}

//语言列表
function get_language(param) {
  return _request.default.post('/api/commons/get_language', param);
}

//语言等级列表
function get_language_level(param) {
  return _request.default.post('/api/commons/get_language_level', param);
}

//首次绑定手机号
function third_mobile(param) {
  return _request.default.post('/api/candidate.user/third_mobile', param);
}

//识别简历
function ocr(param) {
  return _request.default.post('/api/candidate.resume/ocr', param);
}

//性别列表
function get_sex(param) {
  return _request.default.post('/api/commons/get_sex', param);
}

//学生认证
function activityauth(param) {
  return _request.default.post('/api/candidate.activity/auth', param);
}

//隐私设置
function private_setting(param) {
  return _request.default.post('/api/candidate.user/private_setting', param);
}

//删除银行卡
function deleteBank(param) {
  return _request.default.post('/api/candidate.user/deleteBank', param);
}

//删除银行卡
function refresh(param) {
  return _request.default.post('/api/candidate.resume/refresh', param);
}

//常用语列表
function phraseList(param) {
  return _request.default.post('/api/candidate.phrase/list', param);
}

//投递简历
function orderCreate(param) {
  return _request.default.post('/api/candidate.order/create', param);
}

//订单反馈
function commission_feedback(param) {
  return _request.default.post('/api/candidate.order/commission_feedback', param);
}

//付费求职
function pay(param) {
  return _request.default.post('/api/candidate.order/pay', param);
}

//校招投递简历
function activityCreate(param) {
  return _request.default.post('/api/candidate.activity/create', param);
}

//邀请列表
function invite_list(param) {
  return _request.default.post('/api/candidate.user/invite_list', param);
}
//我的邀请人
function parent_info(param) {
  return _request.default.post('/api/candidate.user/parent_info', param);
}

//接受面试
function interview_accept(param) {
  return _request.default.post('/api/candidate.order/interview_accept', param);
}

//拒绝面试
function interview_refuse(param) {
  return _request.default.post('/api/candidate.order/interview_refuse', param);
}

//接受offer
function offer_pass(param) {
  return _request.default.post('/api/candidate.order/offer_pass', param);
}

//拒绝面试
function offer_refuse(param) {
  return _request.default.post('/api/candidate.order/offer_refuse', param);
}

//编辑常用语
function phrase_update(param) {
  return _request.default.post('/api/candidate.phrase/update', param);
}
//添加常用语
function phrase_create(param) {
  return _request.default.post('/api/candidate.phrase/create', param);
}

//删除常用语
function phrase_destory(param) {
  return _request.default.post('/api/candidate.phrase/destory', param);
}

//领域列表
function get_category_field(param) {
  return _request.default.post('/api/commons/get_category_field', param);
}

//环信数据
function getEmchatUsersData(param) {
  return _request.default.post('/api/candidate.user/getEmchatUsersData', param);
}
function notification(param) {
  return _request.default.post('/api/candidate.notification/view', param);
}

//删除圈子
function del_group(param) {
  return _request.default.post('/api/candidate.forum/del_group', param);
}

//佣金日志列表
function commission_log_list(param) {
  return _request.default.post('/api/candidate.order/commission_log_list', param);
}
// 论坛未读数量
function get_total_number(param) {
  return _request.default.post('/api/candidate.forum/get_total_number', param);
}

// 接收聊天消息通知
function updateNotificationSwitch(param) {
  return _request.default.post('/api/candidate.user/updateNotificationSwitch', param);
}

// 消息通知
function cget_total_number(param) {
  return _request.default.post('/api/candidate.notification/get_total_number', param);
}

// 上传背景图
function edit_image(param) {
  return _request.default.post('/api/candidate.forum/edit_image', param);
}

/***/ }),

/***/ 36:
/*!*******************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/units/request.js ***!
  \*******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var platform = uni.getSystemInfoSync().platform;
var base_url = 'https://hire.hdlkeji.com';
var _default = {
  config: {
    baseUrl: base_url,
    headers: {
      "content-type": "application/json",
      "Token": uni.getStorageSync('token') ? uni.getStorageSync('token') : ''
      //"content-type": "multipart/form-data",
    },

    dataType: "json",
    responseType: "text"
  },
  interceptor: {
    request: function request(_config) {},
    response: null
  },
  request: function request(options) {
    var _this = this;
    // uni.showLoading({
    // 	title: "加载中",
    // 	mask: true,
    // });
    return new Promise(function (resolve, reject) {
      var _config = null;
      options.url = _this.config.baseUrl + options.url;
      // if (uni.getStorageSync('token')) {
      // 	// options.data["Authorization"] = uni.getStorageSync('token')
      // 	options.header["token"] = uni.getStorageSync('token') || ''
      // } else {
      // 	console.log('token为空')
      // 	// if (!getCurrentPages().route == "pages/doctor/index") {
      // 	// 	uni.reLaunch({
      // 	// 		url: '/pages/doctor/index'
      // 	// 	})
      // 	// }
      // }
      // console.log('-------------',this.config.headers)
      // options.header = Object.assign(this.config.headers, options.header)
      // console.log('=========',options.header)
      options.header = {
        "content-type": "application/json",
        "Token": uni.getStorageSync('token') ? uni.getStorageSync('token') : ''
      };
      options.fail = function (response) {
        uni.showToast({
          icon: "none",
          title: '网络连接失败,请检查网络'
        });
        reject(response);
      };
      options.complete = function (response) {
        response.config = _config;
        if (response.statusCode === 200 || response.statusCode === 201) {
          //成功
          resolve(response.data);
        } else {
          if (response.statusCode === 404) {
            uni.showToast({
              icon: "none",
              title: '接口不存在'
            });
          }
          if (response.statusCode === 500) {
            uni.showToast({
              icon: "none",
              title: '服务器错误'
            });
          }
          reject(response);
        }
      };
      _config = Object.assign({}, _this.config, options);
      _config.requestId = new Date().getTime();
      if (_this.interceptor.request) {
        _this.interceptor.request(_config);
      }
      uni.request(_config);
    });
  },
  get: function get(url, data, showtips, options) {
    data = data ? data : {};
    if (!options) {
      options = {};
    }
    options.url = url;
    options.data = data;
    options.header = {};
    options.method = 'GET';
    options.showtips = showtips;
    return this.request(options);
  },
  post: function post(url, data, showtips, options) {
    data = data ? data : {};
    if (!options) {
      options = {};
    }
    options.url = url;
    options.data = data;
    options.header = {};
    options.method = 'POST';
    options.showtips = showtips;
    return this.request(options);
  },
  put: function put(url, data, showtips, options) {
    if (!options) {
      options = {};
    }
    options.url = url;
    options.data = data;
    options.method = 'PUT';
    options.showtips = showtips;
    return this.request(options);
  },
  del: function del(url, data, showtips, options) {
    if (!options) {
      options = {};
    }
    options.url = url;
    options.data = data;
    options.showtips = showtips;
    options.method = 'DELETE';
    return this.request(options);
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 39:
/*!**********************************************************************************************************!*\
  !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js ***!
  \**********************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return normalizeComponent; });
/* globals __VUE_SSR_CONTEXT__ */

// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
// This module is a runtime utility for cleaner component module output and will
// be included in the final webpack user bundle.

function normalizeComponent (
  scriptExports,
  render,
  staticRenderFns,
  functionalTemplate,
  injectStyles,
  scopeId,
  moduleIdentifier, /* server only */
  shadowMode, /* vue-cli only */
  components, // fixed by xxxxxx auto components
  renderjs // fixed by xxxxxx renderjs
) {
  // Vue.extend constructor export interop
  var options = typeof scriptExports === 'function'
    ? scriptExports.options
    : scriptExports

  // fixed by xxxxxx auto components
  if (components) {
    if (!options.components) {
      options.components = {}
    }
    var hasOwn = Object.prototype.hasOwnProperty
    for (var name in components) {
      if (hasOwn.call(components, name) && !hasOwn.call(options.components, name)) {
        options.components[name] = components[name]
      }
    }
  }
  // fixed by xxxxxx renderjs
  if (renderjs) {
    if(typeof renderjs.beforeCreate === 'function'){
			renderjs.beforeCreate = [renderjs.beforeCreate]
		}
    (renderjs.beforeCreate || (renderjs.beforeCreate = [])).unshift(function() {
      this[renderjs.__module] = this
    });
    (options.mixins || (options.mixins = [])).push(renderjs)
  }

  // render functions
  if (render) {
    options.render = render
    options.staticRenderFns = staticRenderFns
    options._compiled = true
  }

  // functional template
  if (functionalTemplate) {
    options.functional = true
  }

  // scopedId
  if (scopeId) {
    options._scopeId = 'data-v-' + scopeId
  }

  var hook
  if (moduleIdentifier) { // server build
    hook = function (context) {
      // 2.3 injection
      context =
        context || // cached call
        (this.$vnode && this.$vnode.ssrContext) || // stateful
        (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
      // 2.2 with runInNewContext: true
      if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
        context = __VUE_SSR_CONTEXT__
      }
      // inject component styles
      if (injectStyles) {
        injectStyles.call(this, context)
      }
      // register component module identifier for async chunk inferrence
      if (context && context._registeredComponents) {
        context._registeredComponents.add(moduleIdentifier)
      }
    }
    // used by ssr in case component is cached and beforeCreate
    // never gets called
    options._ssrRegister = hook
  } else if (injectStyles) {
    hook = shadowMode
      ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }
      : injectStyles
  }

  if (hook) {
    if (options.functional) {
      // for template-only hot-reload because in that case the render fn doesn't
      // go through the normalizer
      options._injectStyles = hook
      // register for functioal component in vue file
      var originalRender = options.render
      options.render = function renderWithStyleInjection (h, context) {
        hook.call(context)
        return originalRender(h, context)
      }
    } else {
      // inject component registration as beforeCreate hook
      var existing = options.beforeCreate
      options.beforeCreate = existing
        ? [].concat(existing, hook)
        : [hook]
    }
  }

  return {
    exports: scriptExports,
    options: options
  }
}


/***/ }),

/***/ 4:
/*!**********************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}
module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 40:
/*!***************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/uni.promisify.adaptor.js ***!
  \***************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(uni) {var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 13);
uni.addInterceptor({
  returnValue: function returnValue(res) {
    if (!(!!res && (_typeof(res) === "object" || typeof res === "function") && typeof res.then === "function")) {
      return res;
    }
    return new Promise(function (resolve, reject) {
      res.then(function (res) {
        return res[0] ? reject(res[0]) : resolve(res[1]);
      });
    });
  }
});
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 41:
/*!*********************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/index.js ***!
  \*********************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _mixin = _interopRequireDefault(__webpack_require__(/*! ./libs/mixin/mixin.js */ 42));
var _mpMixin = _interopRequireDefault(__webpack_require__(/*! ./libs/mixin/mpMixin.js */ 43));
var _luchRequest = _interopRequireDefault(__webpack_require__(/*! ./libs/luch-request */ 44));
var _route = _interopRequireDefault(__webpack_require__(/*! ./libs/util/route.js */ 62));
var _colorGradient = _interopRequireDefault(__webpack_require__(/*! ./libs/function/colorGradient.js */ 66));
var _test = _interopRequireDefault(__webpack_require__(/*! ./libs/function/test.js */ 67));
var _debounce = _interopRequireDefault(__webpack_require__(/*! ./libs/function/debounce.js */ 68));
var _throttle = _interopRequireDefault(__webpack_require__(/*! ./libs/function/throttle.js */ 69));
var _index = _interopRequireDefault(__webpack_require__(/*! ./libs/function/index.js */ 70));
var _config = _interopRequireDefault(__webpack_require__(/*! ./libs/config/config.js */ 73));
var _props = _interopRequireDefault(__webpack_require__(/*! ./libs/config/props.js */ 74));
var _zIndex = _interopRequireDefault(__webpack_require__(/*! ./libs/config/zIndex.js */ 164));
var _color = _interopRequireDefault(__webpack_require__(/*! ./libs/config/color.js */ 122));
var _platform = _interopRequireDefault(__webpack_require__(/*! ./libs/function/platform */ 165));
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
// 看到此报错，是因为没有配置vue.config.js的【transpileDependencies】，详见：https://www.uviewui.com/components/npmSetting.html#_5-cli模式额外配置
var pleaseSetTranspileDependencies = {},
  babelTest = pleaseSetTranspileDependencies === null || pleaseSetTranspileDependencies === void 0 ? void 0 : pleaseSetTranspileDependencies.test;

// 引入全局mixin

var $u = _objectSpread(_objectSpread({
  route: _route.default,
  date: _index.default.timeFormat,
  // 另名date
  colorGradient: _colorGradient.default.colorGradient,
  hexToRgb: _colorGradient.default.hexToRgb,
  rgbToHex: _colorGradient.default.rgbToHex,
  colorToRgba: _colorGradient.default.colorToRgba,
  test: _test.default,
  type: ['primary', 'success', 'error', 'warning', 'info'],
  http: new _luchRequest.default(),
  config: _config.default,
  // uView配置信息相关，比如版本号
  zIndex: _zIndex.default,
  debounce: _debounce.default,
  throttle: _throttle.default,
  mixin: _mixin.default,
  mpMixin: _mpMixin.default,
  props: _props.default
}, _index.default), {}, {
  color: _color.default,
  platform: _platform.default
});

// $u挂载到uni对象上
uni.$u = $u;
var install = function install(Vue) {
  // 时间格式化，同时两个名称，date和timeFormat
  Vue.filter('timeFormat', function (timestamp, format) {
    return uni.$u.timeFormat(timestamp, format);
  });
  Vue.filter('date', function (timestamp, format) {
    return uni.$u.timeFormat(timestamp, format);
  });
  // 将多久以前的方法，注入到全局过滤器
  Vue.filter('timeFrom', function (timestamp, format) {
    return uni.$u.timeFrom(timestamp, format);
  });
  // 同时挂载到uni和Vue.prototype中

  // 只有vue，挂载到Vue.prototype才有意义，因为nvue中全局Vue.prototype和Vue.mixin是无效的
  Vue.prototype.$u = $u;
  Vue.mixin(_mixin.default);
};
var _default = {
  install: install
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 42:
/*!********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/mixin/mixin.js ***!
  \********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(uni) {module.exports = {
  // 定义每个组件都可能需要用到的外部样式以及类名
  props: {
    // 每个组件都有的父组件传递的样式，可以为字符串或者对象形式
    customStyle: {
      type: [Object, String],
      default: function _default() {
        return {};
      }
    },
    customClass: {
      type: String,
      default: ''
    },
    // 跳转的页面路径
    url: {
      type: String,
      default: ''
    },
    // 页面跳转的类型
    linkType: {
      type: String,
      default: 'navigateTo'
    }
  },
  data: function data() {
    return {};
  },
  onLoad: function onLoad() {
    // getRect挂载到$u上，因为这方法需要使用in(this)，所以无法把它独立成一个单独的文件导出
    this.$u.getRect = this.$uGetRect;
  },
  created: function created() {
    // 组件当中，只有created声明周期，为了能在组件使用，故也在created中将方法挂载到$u
    this.$u.getRect = this.$uGetRect;
  },
  computed: {
    // 在2.x版本中，将会把$u挂载到uni对象下，导致在模板中无法使用uni.$u.xxx形式
    // 所以这里通过computed计算属性将其附加到this.$u上，就可以在模板或者js中使用uni.$u.xxx
    // 只在nvue环境通过此方式引入完整的$u，其他平台会出现性能问题，非nvue则按需引入（主要原因是props过大）
    $u: function $u() {
      // 在非nvue端，移除props，http，mixin等对象，避免在小程序setData时数据过大影响性能
      return uni.$u.deepMerge(uni.$u, {
        props: undefined,
        http: undefined,
        mixin: undefined
      });
    },
    /**
     * 生成bem规则类名
     * 由于微信小程序，H5，nvue之间绑定class的差异，无法通过:class="[bem()]"的形式进行同用
     * 故采用如下折中做法，最后返回的是数组（一般平台）或字符串（支付宝和字节跳动平台），类似['a', 'b', 'c']或'a b c'的形式
     * @param {String} name 组件名称
     * @param {Array} fixed 一直会存在的类名
     * @param {Array} change 会根据变量值为true或者false而出现或者隐藏的类名
     * @returns {Array|string}
     */
    bem: function bem() {
      return function (name, fixed, change) {
        var _this = this;
        // 类名前缀
        var prefix = "u-".concat(name, "--");
        var classes = {};
        if (fixed) {
          fixed.map(function (item) {
            // 这里的类名，会一直存在
            classes[prefix + _this[item]] = true;
          });
        }
        if (change) {
          change.map(function (item) {
            // 这里的类名，会根据this[item]的值为true或者false，而进行添加或者移除某一个类
            _this[item] ? classes[prefix + item] = _this[item] : delete classes[prefix + item];
          });
        }
        return Object.keys(classes);
        // 支付宝，头条小程序无法动态绑定一个数组类名，否则解析出来的结果会带有","，而导致失效
      };
    }
  },

  methods: {
    // 跳转某一个页面
    openPage: function openPage() {
      var urlKey = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'url';
      var url = this[urlKey];
      if (url) {
        // 执行类似uni.navigateTo的方法
        uni[this.linkType]({
          url: url
        });
      }
    },
    // 查询节点信息
    // 目前此方法在支付宝小程序中无法获取组件跟接点的尺寸，为支付宝的bug(2020-07-21)
    // 解决办法为在组件根部再套一个没有任何作用的view元素
    $uGetRect: function $uGetRect(selector, all) {
      var _this2 = this;
      return new Promise(function (resolve) {
        uni.createSelectorQuery().in(_this2)[all ? 'selectAll' : 'select'](selector).boundingClientRect(function (rect) {
          if (all && Array.isArray(rect) && rect.length) {
            resolve(rect);
          }
          if (!all && rect) {
            resolve(rect);
          }
        }).exec();
      });
    },
    getParentData: function getParentData() {
      var _this3 = this;
      var parentName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
      // 避免在created中去定义parent变量
      if (!this.parent) this.parent = {};
      // 这里的本质原理是，通过获取父组件实例(也即类似u-radio的父组件u-radio-group的this)
      // 将父组件this中对应的参数，赋值给本组件(u-radio的this)的parentData对象中对应的属性
      // 之所以需要这么做，是因为所有端中，头条小程序不支持通过this.parent.xxx去监听父组件参数的变化
      // 此处并不会自动更新子组件的数据，而是依赖父组件u-radio-group去监听data的变化，手动调用更新子组件的方法去重新获取
      this.parent = uni.$u.$parent.call(this, parentName);
      if (this.parent.children) {
        // 如果父组件的children不存在本组件的实例，才将本实例添加到父组件的children中
        this.parent.children.indexOf(this) === -1 && this.parent.children.push(this);
      }
      if (this.parent && this.parentData) {
        // 历遍parentData中的属性，将parent中的同名属性赋值给parentData
        Object.keys(this.parentData).map(function (key) {
          _this3.parentData[key] = _this3.parent[key];
        });
      }
    },
    // 阻止事件冒泡
    preventEvent: function preventEvent(e) {
      e && typeof e.stopPropagation === 'function' && e.stopPropagation();
    },
    // 空操作
    noop: function noop(e) {
      this.preventEvent(e);
    }
  },
  onReachBottom: function onReachBottom() {
    uni.$emit('uOnReachBottom');
  },
  beforeDestroy: function beforeDestroy() {
    var _this4 = this;
    // 判断当前页面是否存在parent和chldren，一般在checkbox和checkbox-group父子联动的场景会有此情况
    // 组件销毁时，移除子组件在父组件children数组中的实例，释放资源，避免数据混乱
    if (this.parent && uni.$u.test.array(this.parent.children)) {
      // 组件销毁时，移除父组件中的children数组中对应的实例
      var childrenList = this.parent.children;
      childrenList.map(function (child, index) {
        // 如果相等，则移除
        if (child === _this4) {
          childrenList.splice(index, 1);
        }
      });
    }
  }
};
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 43:
/*!**********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/mixin/mpMixin.js ***!
  \**********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  // 将自定义节点设置成虚拟的，更加接近Vue组件的表现，能更好的使用flex属性
  options: {
    virtualHost: true
  }
};
exports.default = _default;

/***/ }),

/***/ 44:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/index.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _Request = _interopRequireDefault(__webpack_require__(/*! ./core/Request */ 45));
var _default = _Request.default;
exports.default = _default;

/***/ }),

/***/ 45:
/*!**********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/core/Request.js ***!
  \**********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
var _dispatchRequest = _interopRequireDefault(__webpack_require__(/*! ./dispatchRequest */ 46));
var _InterceptorManager = _interopRequireDefault(__webpack_require__(/*! ./InterceptorManager */ 54));
var _mergeConfig = _interopRequireDefault(__webpack_require__(/*! ./mergeConfig */ 55));
var _defaults = _interopRequireDefault(__webpack_require__(/*! ./defaults */ 56));
var _utils = __webpack_require__(/*! ../utils */ 49);
var _clone = _interopRequireDefault(__webpack_require__(/*! ../utils/clone */ 57));
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
var Request = /*#__PURE__*/function () {
  /**
  * @param {Object} arg - 全局配置
  * @param {String} arg.baseURL - 全局根路径
  * @param {Object} arg.header - 全局header
  * @param {String} arg.method = [GET|POST|PUT|DELETE|CONNECT|HEAD|OPTIONS|TRACE] - 全局默认请求方式
  * @param {String} arg.dataType = [json] - 全局默认的dataType
  * @param {String} arg.responseType = [text|arraybuffer] - 全局默认的responseType。支付宝小程序不支持
  * @param {Object} arg.custom - 全局默认的自定义参数
  * @param {Number} arg.timeout - 全局默认的超时时间，单位 ms。默认60000。H5(HBuilderX 2.9.9+)、APP(HBuilderX 2.9.9+)、微信小程序（2.10.0）、支付宝小程序
  * @param {Boolean} arg.sslVerify - 全局默认的是否验证 ssl 证书。默认true.仅App安卓端支持（HBuilderX 2.3.3+）
  * @param {Boolean} arg.withCredentials - 全局默认的跨域请求时是否携带凭证（cookies）。默认false。仅H5支持（HBuilderX 2.6.15+）
  * @param {Boolean} arg.firstIpv4 - 全DNS解析时优先使用ipv4。默认false。仅 App-Android 支持 (HBuilderX 2.8.0+)
  * @param {Function(statusCode):Boolean} arg.validateStatus - 全局默认的自定义验证器。默认statusCode >= 200 && statusCode < 300
  */
  function Request() {
    var arg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    (0, _classCallCheck2.default)(this, Request);
    if (!(0, _utils.isPlainObject)(arg)) {
      arg = {};
      console.warn('设置全局参数必须接收一个Object');
    }
    this.config = (0, _clone.default)(_objectSpread(_objectSpread({}, _defaults.default), arg));
    this.interceptors = {
      request: new _InterceptorManager.default(),
      response: new _InterceptorManager.default()
    };
  }

  /**
  * @Function
  * @param {Request~setConfigCallback} f - 设置全局默认配置
  */
  (0, _createClass2.default)(Request, [{
    key: "setConfig",
    value: function setConfig(f) {
      this.config = f(this.config);
    }
  }, {
    key: "middleware",
    value: function middleware(config) {
      config = (0, _mergeConfig.default)(this.config, config);
      var chain = [_dispatchRequest.default, undefined];
      var promise = Promise.resolve(config);
      this.interceptors.request.forEach(function (interceptor) {
        chain.unshift(interceptor.fulfilled, interceptor.rejected);
      });
      this.interceptors.response.forEach(function (interceptor) {
        chain.push(interceptor.fulfilled, interceptor.rejected);
      });
      while (chain.length) {
        promise = promise.then(chain.shift(), chain.shift());
      }
      return promise;
    }

    /**
    * @Function
    * @param {Object} config - 请求配置项
    * @prop {String} options.url - 请求路径
    * @prop {Object} options.data - 请求参数
    * @prop {Object} [options.responseType = config.responseType] [text|arraybuffer] - 响应的数据类型
    * @prop {Object} [options.dataType = config.dataType] - 如果设为 json，会尝试对返回的数据做一次 JSON.parse
    * @prop {Object} [options.header = config.header] - 请求header
    * @prop {Object} [options.method = config.method] - 请求方法
    * @returns {Promise<unknown>}
    */
  }, {
    key: "request",
    value: function request() {
      var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return this.middleware(config);
    }
  }, {
    key: "get",
    value: function get(url) {
      var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      return this.middleware(_objectSpread({
        url: url,
        method: 'GET'
      }, options));
    }
  }, {
    key: "post",
    value: function post(url, data) {
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.middleware(_objectSpread({
        url: url,
        data: data,
        method: 'POST'
      }, options));
    }
  }, {
    key: "put",
    value: function put(url, data) {
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.middleware(_objectSpread({
        url: url,
        data: data,
        method: 'PUT'
      }, options));
    }
  }, {
    key: "delete",
    value: function _delete(url, data) {
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.middleware(_objectSpread({
        url: url,
        data: data,
        method: 'DELETE'
      }, options));
    }
  }, {
    key: "connect",
    value: function connect(url, data) {
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.middleware(_objectSpread({
        url: url,
        data: data,
        method: 'CONNECT'
      }, options));
    }
  }, {
    key: "head",
    value: function head(url, data) {
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.middleware(_objectSpread({
        url: url,
        data: data,
        method: 'HEAD'
      }, options));
    }
  }, {
    key: "options",
    value: function options(url, data) {
      var _options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.middleware(_objectSpread({
        url: url,
        data: data,
        method: 'OPTIONS'
      }, _options));
    }
  }, {
    key: "trace",
    value: function trace(url, data) {
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.middleware(_objectSpread({
        url: url,
        data: data,
        method: 'TRACE'
      }, options));
    }
  }, {
    key: "upload",
    value: function upload(url) {
      var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      config.url = url;
      config.method = 'UPLOAD';
      return this.middleware(config);
    }
  }, {
    key: "download",
    value: function download(url) {
      var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      config.url = url;
      config.method = 'DOWNLOAD';
      return this.middleware(config);
    }
  }]);
  return Request;
}();
/**
 * setConfig回调
 * @return {Object} - 返回操作后的config
 * @callback Request~setConfigCallback
 * @param {Object} config - 全局默认config
 */
exports.default = Request;

/***/ }),

/***/ 46:
/*!******************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/core/dispatchRequest.js ***!
  \******************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _index = _interopRequireDefault(__webpack_require__(/*! ../adapters/index */ 47));
var _default = function _default(config) {
  return (0, _index.default)(config);
};
exports.default = _default;

/***/ }),

/***/ 47:
/*!************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/adapters/index.js ***!
  \************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _buildURL = _interopRequireDefault(__webpack_require__(/*! ../helpers/buildURL */ 48));
var _buildFullPath = _interopRequireDefault(__webpack_require__(/*! ../core/buildFullPath */ 50));
var _settle = _interopRequireDefault(__webpack_require__(/*! ../core/settle */ 53));
var _utils = __webpack_require__(/*! ../utils */ 49);
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
/**
 * 返回可选值存在的配置
 * @param {Array} keys - 可选值数组
 * @param {Object} config2 - 配置
 * @return {{}} - 存在的配置项
 */
var mergeKeys = function mergeKeys(keys, config2) {
  var config = {};
  keys.forEach(function (prop) {
    if (!(0, _utils.isUndefined)(config2[prop])) {
      config[prop] = config2[prop];
    }
  });
  return config;
};
var _default = function _default(config) {
  return new Promise(function (resolve, reject) {
    var fullPath = (0, _buildURL.default)((0, _buildFullPath.default)(config.baseURL, config.url), config.params);
    var _config = {
      url: fullPath,
      header: config.header,
      complete: function complete(response) {
        config.fullPath = fullPath;
        response.config = config;
        try {
          // 对可能字符串不是json 的情况容错
          if (typeof response.data === 'string') {
            response.data = JSON.parse(response.data);
          }
          // eslint-disable-next-line no-empty
        } catch (e) {}
        (0, _settle.default)(resolve, reject, response);
      }
    };
    var requestTask;
    if (config.method === 'UPLOAD') {
      delete _config.header['content-type'];
      delete _config.header['Content-Type'];
      var otherConfig = {
        filePath: config.filePath,
        name: config.name
      };
      var optionalKeys = ['formData'];
      requestTask = uni.uploadFile(_objectSpread(_objectSpread(_objectSpread({}, _config), otherConfig), mergeKeys(optionalKeys, config)));
    } else if (config.method === 'DOWNLOAD') {
      requestTask = uni.downloadFile(_config);
    } else {
      var _optionalKeys = ['data', 'method', 'timeout', 'dataType', 'responseType'];
      requestTask = uni.request(_objectSpread(_objectSpread({}, _config), mergeKeys(_optionalKeys, config)));
    }
    if (config.getTask) {
      config.getTask(requestTask, config);
    }
  });
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 48:
/*!**************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/helpers/buildURL.js ***!
  \**************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 13);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = buildURL;
var utils = _interopRequireWildcard(__webpack_require__(/*! ../utils */ 49));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function encode(val) {
  return encodeURIComponent(val).replace(/%40/gi, '@').replace(/%3A/gi, ':').replace(/%24/g, '$').replace(/%2C/gi, ',').replace(/%20/g, '+').replace(/%5B/gi, '[').replace(/%5D/gi, ']');
}

/**
 * Build a URL by appending params to the end
 *
 * @param {string} url The base of the url (e.g., http://www.google.com)
 * @param {object} [params] The params to be appended
 * @returns {string} The formatted url
 */
function buildURL(url, params) {
  /* eslint no-param-reassign:0 */
  if (!params) {
    return url;
  }
  var serializedParams;
  if (utils.isURLSearchParams(params)) {
    serializedParams = params.toString();
  } else {
    var parts = [];
    utils.forEach(params, function (val, key) {
      if (val === null || typeof val === 'undefined') {
        return;
      }
      if (utils.isArray(val)) {
        key = "".concat(key, "[]");
      } else {
        val = [val];
      }
      utils.forEach(val, function (v) {
        if (utils.isDate(v)) {
          v = v.toISOString();
        } else if (utils.isObject(v)) {
          v = JSON.stringify(v);
        }
        parts.push("".concat(encode(key), "=").concat(encode(v)));
      });
    });
    serializedParams = parts.join('&');
  }
  if (serializedParams) {
    var hashmarkIndex = url.indexOf('#');
    if (hashmarkIndex !== -1) {
      url = url.slice(0, hashmarkIndex);
    }
    url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
  }
  return url;
}

/***/ }),

/***/ 49:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/utils.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


// utils is a library of generic helper functions non-specific to axios
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.deepMerge = deepMerge;
exports.forEach = forEach;
exports.isArray = isArray;
exports.isBoolean = isBoolean;
exports.isDate = isDate;
exports.isObject = isObject;
exports.isPlainObject = isPlainObject;
exports.isURLSearchParams = isURLSearchParams;
exports.isUndefined = isUndefined;
var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
var toString = Object.prototype.toString;

/**
 * Determine if a value is an Array
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an Array, otherwise false
 */
function isArray(val) {
  return toString.call(val) === '[object Array]';
}

/**
 * Determine if a value is an Object
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an Object, otherwise false
 */
function isObject(val) {
  return val !== null && (0, _typeof2.default)(val) === 'object';
}

/**
 * Determine if a value is a Date
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Date, otherwise false
 */
function isDate(val) {
  return toString.call(val) === '[object Date]';
}

/**
 * Determine if a value is a URLSearchParams object
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a URLSearchParams object, otherwise false
 */
function isURLSearchParams(val) {
  return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;
}

/**
 * Iterate over an Array or an Object invoking a function for each item.
 *
 * If `obj` is an Array callback will be called passing
 * the value, index, and complete array for each item.
 *
 * If 'obj' is an Object callback will be called passing
 * the value, key, and complete object for each property.
 *
 * @param {Object|Array} obj The object to iterate
 * @param {Function} fn The callback to invoke for each item
 */
function forEach(obj, fn) {
  // Don't bother if no value provided
  if (obj === null || typeof obj === 'undefined') {
    return;
  }

  // Force an array if not already something iterable
  if ((0, _typeof2.default)(obj) !== 'object') {
    /* eslint no-param-reassign:0 */
    obj = [obj];
  }
  if (isArray(obj)) {
    // Iterate over array values
    for (var i = 0, l = obj.length; i < l; i++) {
      fn.call(null, obj[i], i, obj);
    }
  } else {
    // Iterate over object keys
    for (var key in obj) {
      if (Object.prototype.hasOwnProperty.call(obj, key)) {
        fn.call(null, obj[key], key, obj);
      }
    }
  }
}

/**
 * 是否为boolean 值
 * @param val
 * @returns {boolean}
 */
function isBoolean(val) {
  return typeof val === 'boolean';
}

/**
 * 是否为真正的对象{} new Object
 * @param {any} obj - 检测的对象
 * @returns {boolean}
 */
function isPlainObject(obj) {
  return Object.prototype.toString.call(obj) === '[object Object]';
}

/**
 * Function equal to merge with the difference being that no reference
 * to original objects is kept.
 *
 * @see merge
 * @param {Object} obj1 Object to merge
 * @returns {Object} Result of all merge properties
 */
function deepMerge( /* obj1, obj2, obj3, ... */
) {
  var result = {};
  function assignValue(val, key) {
    if ((0, _typeof2.default)(result[key]) === 'object' && (0, _typeof2.default)(val) === 'object') {
      result[key] = deepMerge(result[key], val);
    } else if ((0, _typeof2.default)(val) === 'object') {
      result[key] = deepMerge({}, val);
    } else {
      result[key] = val;
    }
  }
  for (var i = 0, l = arguments.length; i < l; i++) {
    forEach(arguments[i], assignValue);
  }
  return result;
}
function isUndefined(val) {
  return typeof val === 'undefined';
}

/***/ }),

/***/ 5:
/*!**************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/slicedToArray.js ***!
  \**************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ 6);
var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ 7);
var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 8);
var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ 10);
function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}
module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 50:
/*!****************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/core/buildFullPath.js ***!
  \****************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = buildFullPath;
var _isAbsoluteURL = _interopRequireDefault(__webpack_require__(/*! ../helpers/isAbsoluteURL */ 51));
var _combineURLs = _interopRequireDefault(__webpack_require__(/*! ../helpers/combineURLs */ 52));
/**
 * Creates a new URL by combining the baseURL with the requestedURL,
 * only when the requestedURL is not already an absolute URL.
 * If the requestURL is absolute, this function returns the requestedURL untouched.
 *
 * @param {string} baseURL The base URL
 * @param {string} requestedURL Absolute or relative URL to combine
 * @returns {string} The combined full path
 */
function buildFullPath(baseURL, requestedURL) {
  if (baseURL && !(0, _isAbsoluteURL.default)(requestedURL)) {
    return (0, _combineURLs.default)(baseURL, requestedURL);
  }
  return requestedURL;
}

/***/ }),

/***/ 51:
/*!*******************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/helpers/isAbsoluteURL.js ***!
  \*******************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/**
 * Determines whether the specified URL is absolute
 *
 * @param {string} url The URL to test
 * @returns {boolean} True if the specified URL is absolute, otherwise false
 */
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = isAbsoluteURL;
function isAbsoluteURL(url) {
  // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
  // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
  // by any combination of letters, digits, plus, period, or hyphen.
  return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);
}

/***/ }),

/***/ 52:
/*!*****************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/helpers/combineURLs.js ***!
  \*****************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/**
 * Creates a new URL by combining the specified URLs
 *
 * @param {string} baseURL The base URL
 * @param {string} relativeURL The relative URL
 * @returns {string} The combined URL
 */
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = combineURLs;
function combineURLs(baseURL, relativeURL) {
  return relativeURL ? "".concat(baseURL.replace(/\/+$/, ''), "/").concat(relativeURL.replace(/^\/+/, '')) : baseURL;
}

/***/ }),

/***/ 53:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/core/settle.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = settle;
/**
 * Resolve or reject a Promise based on response status.
 *
 * @param {Function} resolve A function that resolves the promise.
 * @param {Function} reject A function that rejects the promise.
 * @param {object} response The response.
 */
function settle(resolve, reject, response) {
  var validateStatus = response.config.validateStatus;
  var status = response.statusCode;
  if (status && (!validateStatus || validateStatus(status))) {
    resolve(response);
  } else {
    reject(response);
  }
}

/***/ }),

/***/ 54:
/*!*********************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/core/InterceptorManager.js ***!
  \*********************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
function InterceptorManager() {
  this.handlers = [];
}

/**
 * Add a new interceptor to the stack
 *
 * @param {Function} fulfilled The function to handle `then` for a `Promise`
 * @param {Function} rejected The function to handle `reject` for a `Promise`
 *
 * @return {Number} An ID used to remove interceptor later
 */
InterceptorManager.prototype.use = function use(fulfilled, rejected) {
  this.handlers.push({
    fulfilled: fulfilled,
    rejected: rejected
  });
  return this.handlers.length - 1;
};

/**
 * Remove an interceptor from the stack
 *
 * @param {Number} id The ID that was returned by `use`
 */
InterceptorManager.prototype.eject = function eject(id) {
  if (this.handlers[id]) {
    this.handlers[id] = null;
  }
};

/**
 * Iterate over all the registered interceptors
 *
 * This method is particularly useful for skipping over any
 * interceptors that may have become `null` calling `eject`.
 *
 * @param {Function} fn The function to call for each interceptor
 */
InterceptorManager.prototype.forEach = function forEach(fn) {
  this.handlers.forEach(function (h) {
    if (h !== null) {
      fn(h);
    }
  });
};
var _default = InterceptorManager;
exports.default = _default;

/***/ }),

/***/ 55:
/*!**************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/core/mergeConfig.js ***!
  \**************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _utils = __webpack_require__(/*! ../utils */ 49);
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
/**
 * 合并局部配置优先的配置，如果局部有该配置项则用局部，如果全局有该配置项则用全局
 * @param {Array} keys - 配置项
 * @param {Object} globalsConfig - 当前的全局配置
 * @param {Object} config2 - 局部配置
 * @return {{}}
 */
var mergeKeys = function mergeKeys(keys, globalsConfig, config2) {
  var config = {};
  keys.forEach(function (prop) {
    if (!(0, _utils.isUndefined)(config2[prop])) {
      config[prop] = config2[prop];
    } else if (!(0, _utils.isUndefined)(globalsConfig[prop])) {
      config[prop] = globalsConfig[prop];
    }
  });
  return config;
};
/**
 *
 * @param globalsConfig - 当前实例的全局配置
 * @param config2 - 当前的局部配置
 * @return - 合并后的配置
 */
var _default = function _default(globalsConfig) {
  var config2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  var method = config2.method || globalsConfig.method || 'GET';
  var config = {
    baseURL: globalsConfig.baseURL || '',
    method: method,
    url: config2.url || '',
    params: config2.params || {},
    custom: _objectSpread(_objectSpread({}, globalsConfig.custom || {}), config2.custom || {}),
    header: (0, _utils.deepMerge)(globalsConfig.header || {}, config2.header || {})
  };
  var defaultToConfig2Keys = ['getTask', 'validateStatus'];
  config = _objectSpread(_objectSpread({}, config), mergeKeys(defaultToConfig2Keys, globalsConfig, config2));

  // eslint-disable-next-line no-empty
  if (method === 'DOWNLOAD') {} else if (method === 'UPLOAD') {
    delete config.header['content-type'];
    delete config.header['Content-Type'];
    var uploadKeys = ['filePath', 'name', 'formData'];
    uploadKeys.forEach(function (prop) {
      if (!(0, _utils.isUndefined)(config2[prop])) {
        config[prop] = config2[prop];
      }
    });
  } else {
    var defaultsKeys = ['data', 'timeout', 'dataType', 'responseType'];
    config = _objectSpread(_objectSpread({}, config), mergeKeys(defaultsKeys, globalsConfig, config2));
  }
  return config;
};
exports.default = _default;

/***/ }),

/***/ 56:
/*!***********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/core/defaults.js ***!
  \***********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/**
 * 默认的全局配置
 */
var _default = {
  baseURL: '',
  header: {},
  method: 'GET',
  dataType: 'json',
  responseType: 'text',
  custom: {},
  timeout: 60000,
  validateStatus: function validateStatus(status) {
    return status >= 200 && status < 300;
  }
};
exports.default = _default;

/***/ }),

/***/ 57:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/luch-request/utils/clone.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(Buffer) {

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
/* eslint-disable */
var clone = function () {
  'use strict';

  function _instanceof(obj, type) {
    return type != null && obj instanceof type;
  }
  var nativeMap;
  try {
    nativeMap = Map;
  } catch (_) {
    // maybe a reference error because no `Map`. Give it a dummy value that no
    // value will ever be an instanceof.
    nativeMap = function nativeMap() {};
  }
  var nativeSet;
  try {
    nativeSet = Set;
  } catch (_) {
    nativeSet = function nativeSet() {};
  }
  var nativePromise;
  try {
    nativePromise = Promise;
  } catch (_) {
    nativePromise = function nativePromise() {};
  }

  /**
   * Clones (copies) an Object using deep copying.
   *
   * This function supports circular references by default, but if you are certain
   * there are no circular references in your object, you can save some CPU time
   * by calling clone(obj, false).
   *
   * Caution: if `circular` is false and `parent` contains circular references,
   * your program may enter an infinite loop and crash.
   *
   * @param `parent` - the object to be cloned
   * @param `circular` - set to true if the object to be cloned may contain
   *    circular references. (optional - true by default)
   * @param `depth` - set to a number if the object is only to be cloned to
   *    a particular depth. (optional - defaults to Infinity)
   * @param `prototype` - sets the prototype to be used when cloning an object.
   *    (optional - defaults to parent prototype).
   * @param `includeNonEnumerable` - set to true if the non-enumerable properties
   *    should be cloned as well. Non-enumerable properties on the prototype
   *    chain will be ignored. (optional - false by default)
   */
  function clone(parent, circular, depth, prototype, includeNonEnumerable) {
    if ((0, _typeof2.default)(circular) === 'object') {
      depth = circular.depth;
      prototype = circular.prototype;
      includeNonEnumerable = circular.includeNonEnumerable;
      circular = circular.circular;
    }
    // maintain two arrays for circular references, where corresponding parents
    // and children have the same index
    var allParents = [];
    var allChildren = [];
    var useBuffer = typeof Buffer != 'undefined';
    if (typeof circular == 'undefined') circular = true;
    if (typeof depth == 'undefined') depth = Infinity;

    // recurse this function so we don't reset allParents and allChildren
    function _clone(parent, depth) {
      // cloning null always returns null
      if (parent === null) return null;
      if (depth === 0) return parent;
      var child;
      var proto;
      if ((0, _typeof2.default)(parent) != 'object') {
        return parent;
      }
      if (_instanceof(parent, nativeMap)) {
        child = new nativeMap();
      } else if (_instanceof(parent, nativeSet)) {
        child = new nativeSet();
      } else if (_instanceof(parent, nativePromise)) {
        child = new nativePromise(function (resolve, reject) {
          parent.then(function (value) {
            resolve(_clone(value, depth - 1));
          }, function (err) {
            reject(_clone(err, depth - 1));
          });
        });
      } else if (clone.__isArray(parent)) {
        child = [];
      } else if (clone.__isRegExp(parent)) {
        child = new RegExp(parent.source, __getRegExpFlags(parent));
        if (parent.lastIndex) child.lastIndex = parent.lastIndex;
      } else if (clone.__isDate(parent)) {
        child = new Date(parent.getTime());
      } else if (useBuffer && Buffer.isBuffer(parent)) {
        if (Buffer.from) {
          // Node.js >= 5.10.0
          child = Buffer.from(parent);
        } else {
          // Older Node.js versions
          child = new Buffer(parent.length);
          parent.copy(child);
        }
        return child;
      } else if (_instanceof(parent, Error)) {
        child = Object.create(parent);
      } else {
        if (typeof prototype == 'undefined') {
          proto = Object.getPrototypeOf(parent);
          child = Object.create(proto);
        } else {
          child = Object.create(prototype);
          proto = prototype;
        }
      }
      if (circular) {
        var index = allParents.indexOf(parent);
        if (index != -1) {
          return allChildren[index];
        }
        allParents.push(parent);
        allChildren.push(child);
      }
      if (_instanceof(parent, nativeMap)) {
        parent.forEach(function (value, key) {
          var keyChild = _clone(key, depth - 1);
          var valueChild = _clone(value, depth - 1);
          child.set(keyChild, valueChild);
        });
      }
      if (_instanceof(parent, nativeSet)) {
        parent.forEach(function (value) {
          var entryChild = _clone(value, depth - 1);
          child.add(entryChild);
        });
      }
      for (var i in parent) {
        var attrs = Object.getOwnPropertyDescriptor(parent, i);
        if (attrs) {
          child[i] = _clone(parent[i], depth - 1);
        }
        try {
          var objProperty = Object.getOwnPropertyDescriptor(parent, i);
          if (objProperty.set === 'undefined') {
            // no setter defined. Skip cloning this property
            continue;
          }
          child[i] = _clone(parent[i], depth - 1);
        } catch (e) {
          if (e instanceof TypeError) {
            // when in strict mode, TypeError will be thrown if child[i] property only has a getter
            // we can't do anything about this, other than inform the user that this property cannot be set.
            continue;
          } else if (e instanceof ReferenceError) {
            //this may happen in non strict mode
            continue;
          }
        }
      }
      if (Object.getOwnPropertySymbols) {
        var symbols = Object.getOwnPropertySymbols(parent);
        for (var i = 0; i < symbols.length; i++) {
          // Don't need to worry about cloning a symbol because it is a primitive,
          // like a number or string.
          var symbol = symbols[i];
          var descriptor = Object.getOwnPropertyDescriptor(parent, symbol);
          if (descriptor && !descriptor.enumerable && !includeNonEnumerable) {
            continue;
          }
          child[symbol] = _clone(parent[symbol], depth - 1);
          Object.defineProperty(child, symbol, descriptor);
        }
      }
      if (includeNonEnumerable) {
        var allPropertyNames = Object.getOwnPropertyNames(parent);
        for (var i = 0; i < allPropertyNames.length; i++) {
          var propertyName = allPropertyNames[i];
          var descriptor = Object.getOwnPropertyDescriptor(parent, propertyName);
          if (descriptor && descriptor.enumerable) {
            continue;
          }
          child[propertyName] = _clone(parent[propertyName], depth - 1);
          Object.defineProperty(child, propertyName, descriptor);
        }
      }
      return child;
    }
    return _clone(parent, depth);
  }

  /**
   * Simple flat clone using prototype, accepts only objects, usefull for property
   * override on FLAT configuration object (no nested props).
   *
   * USE WITH CAUTION! This may not behave as you wish if you do not know how this
   * works.
   */
  clone.clonePrototype = function clonePrototype(parent) {
    if (parent === null) return null;
    var c = function c() {};
    c.prototype = parent;
    return new c();
  };

  // private utility functions

  function __objToStr(o) {
    return Object.prototype.toString.call(o);
  }
  clone.__objToStr = __objToStr;
  function __isDate(o) {
    return (0, _typeof2.default)(o) === 'object' && __objToStr(o) === '[object Date]';
  }
  clone.__isDate = __isDate;
  function __isArray(o) {
    return (0, _typeof2.default)(o) === 'object' && __objToStr(o) === '[object Array]';
  }
  clone.__isArray = __isArray;
  function __isRegExp(o) {
    return (0, _typeof2.default)(o) === 'object' && __objToStr(o) === '[object RegExp]';
  }
  clone.__isRegExp = __isRegExp;
  function __getRegExpFlags(re) {
    var flags = '';
    if (re.global) flags += 'g';
    if (re.ignoreCase) flags += 'i';
    if (re.multiline) flags += 'm';
    return flags;
  }
  clone.__getRegExpFlags = __getRegExpFlags;
  return clone;
}();
var _default = clone;
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/buffer/index.js */ 58).Buffer))

/***/ }),

/***/ 58:
/*!**************************************!*\
  !*** ./node_modules/buffer/index.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(global) {/*!
 * The buffer module from node.js, for the browser.
 *
 * @author   Feross Aboukhadijeh <http://feross.org>
 * @license  MIT
 */
/* eslint-disable no-proto */



var base64 = __webpack_require__(/*! base64-js */ 59)
var ieee754 = __webpack_require__(/*! ieee754 */ 60)
var isArray = __webpack_require__(/*! isarray */ 61)

exports.Buffer = Buffer
exports.SlowBuffer = SlowBuffer
exports.INSPECT_MAX_BYTES = 50

/**
 * If `Buffer.TYPED_ARRAY_SUPPORT`:
 *   === true    Use Uint8Array implementation (fastest)
 *   === false   Use Object implementation (most compatible, even IE6)
 *
 * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,
 * Opera 11.6+, iOS 4.2+.
 *
 * Due to various browser bugs, sometimes the Object implementation will be used even
 * when the browser supports typed arrays.
 *
 * Note:
 *
 *   - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,
 *     See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.
 *
 *   - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.
 *
 *   - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of
 *     incorrect length in some situations.

 * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they
 * get the Object implementation, which is slower but behaves correctly.
 */
Buffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined
  ? global.TYPED_ARRAY_SUPPORT
  : typedArraySupport()

/*
 * Export kMaxLength after typed array support is determined.
 */
exports.kMaxLength = kMaxLength()

function typedArraySupport () {
  try {
    var arr = new Uint8Array(1)
    arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}
    return arr.foo() === 42 && // typed array instances can be augmented
        typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`
        arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`
  } catch (e) {
    return false
  }
}

function kMaxLength () {
  return Buffer.TYPED_ARRAY_SUPPORT
    ? 0x7fffffff
    : 0x3fffffff
}

function createBuffer (that, length) {
  if (kMaxLength() < length) {
    throw new RangeError('Invalid typed array length')
  }
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    // Return an augmented `Uint8Array` instance, for best performance
    that = new Uint8Array(length)
    that.__proto__ = Buffer.prototype
  } else {
    // Fallback: Return an object instance of the Buffer class
    if (that === null) {
      that = new Buffer(length)
    }
    that.length = length
  }

  return that
}

/**
 * The Buffer constructor returns instances of `Uint8Array` that have their
 * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of
 * `Uint8Array`, so the returned instances will have all the node `Buffer` methods
 * and the `Uint8Array` methods. Square bracket notation works as expected -- it
 * returns a single octet.
 *
 * The `Uint8Array` prototype remains unmodified.
 */

function Buffer (arg, encodingOrOffset, length) {
  if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {
    return new Buffer(arg, encodingOrOffset, length)
  }

  // Common case.
  if (typeof arg === 'number') {
    if (typeof encodingOrOffset === 'string') {
      throw new Error(
        'If encoding is specified then the first argument must be a string'
      )
    }
    return allocUnsafe(this, arg)
  }
  return from(this, arg, encodingOrOffset, length)
}

Buffer.poolSize = 8192 // not used by this implementation

// TODO: Legacy, not needed anymore. Remove in next major version.
Buffer._augment = function (arr) {
  arr.__proto__ = Buffer.prototype
  return arr
}

function from (that, value, encodingOrOffset, length) {
  if (typeof value === 'number') {
    throw new TypeError('"value" argument must not be a number')
  }

  if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {
    return fromArrayBuffer(that, value, encodingOrOffset, length)
  }

  if (typeof value === 'string') {
    return fromString(that, value, encodingOrOffset)
  }

  return fromObject(that, value)
}

/**
 * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError
 * if value is a number.
 * Buffer.from(str[, encoding])
 * Buffer.from(array)
 * Buffer.from(buffer)
 * Buffer.from(arrayBuffer[, byteOffset[, length]])
 **/
Buffer.from = function (value, encodingOrOffset, length) {
  return from(null, value, encodingOrOffset, length)
}

if (Buffer.TYPED_ARRAY_SUPPORT) {
  Buffer.prototype.__proto__ = Uint8Array.prototype
  Buffer.__proto__ = Uint8Array
  if (typeof Symbol !== 'undefined' && Symbol.species &&
      Buffer[Symbol.species] === Buffer) {
    // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97
    Object.defineProperty(Buffer, Symbol.species, {
      value: null,
      configurable: true
    })
  }
}

function assertSize (size) {
  if (typeof size !== 'number') {
    throw new TypeError('"size" argument must be a number')
  } else if (size < 0) {
    throw new RangeError('"size" argument must not be negative')
  }
}

function alloc (that, size, fill, encoding) {
  assertSize(size)
  if (size <= 0) {
    return createBuffer(that, size)
  }
  if (fill !== undefined) {
    // Only pay attention to encoding if it's a string. This
    // prevents accidentally sending in a number that would
    // be interpretted as a start offset.
    return typeof encoding === 'string'
      ? createBuffer(that, size).fill(fill, encoding)
      : createBuffer(that, size).fill(fill)
  }
  return createBuffer(that, size)
}

/**
 * Creates a new filled Buffer instance.
 * alloc(size[, fill[, encoding]])
 **/
Buffer.alloc = function (size, fill, encoding) {
  return alloc(null, size, fill, encoding)
}

function allocUnsafe (that, size) {
  assertSize(size)
  that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)
  if (!Buffer.TYPED_ARRAY_SUPPORT) {
    for (var i = 0; i < size; ++i) {
      that[i] = 0
    }
  }
  return that
}

/**
 * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.
 * */
Buffer.allocUnsafe = function (size) {
  return allocUnsafe(null, size)
}
/**
 * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.
 */
Buffer.allocUnsafeSlow = function (size) {
  return allocUnsafe(null, size)
}

function fromString (that, string, encoding) {
  if (typeof encoding !== 'string' || encoding === '') {
    encoding = 'utf8'
  }

  if (!Buffer.isEncoding(encoding)) {
    throw new TypeError('"encoding" must be a valid string encoding')
  }

  var length = byteLength(string, encoding) | 0
  that = createBuffer(that, length)

  var actual = that.write(string, encoding)

  if (actual !== length) {
    // Writing a hex string, for example, that contains invalid characters will
    // cause everything after the first invalid character to be ignored. (e.g.
    // 'abxxcd' will be treated as 'ab')
    that = that.slice(0, actual)
  }

  return that
}

function fromArrayLike (that, array) {
  var length = array.length < 0 ? 0 : checked(array.length) | 0
  that = createBuffer(that, length)
  for (var i = 0; i < length; i += 1) {
    that[i] = array[i] & 255
  }
  return that
}

function fromArrayBuffer (that, array, byteOffset, length) {
  array.byteLength // this throws if `array` is not a valid ArrayBuffer

  if (byteOffset < 0 || array.byteLength < byteOffset) {
    throw new RangeError('\'offset\' is out of bounds')
  }

  if (array.byteLength < byteOffset + (length || 0)) {
    throw new RangeError('\'length\' is out of bounds')
  }

  if (byteOffset === undefined && length === undefined) {
    array = new Uint8Array(array)
  } else if (length === undefined) {
    array = new Uint8Array(array, byteOffset)
  } else {
    array = new Uint8Array(array, byteOffset, length)
  }

  if (Buffer.TYPED_ARRAY_SUPPORT) {
    // Return an augmented `Uint8Array` instance, for best performance
    that = array
    that.__proto__ = Buffer.prototype
  } else {
    // Fallback: Return an object instance of the Buffer class
    that = fromArrayLike(that, array)
  }
  return that
}

function fromObject (that, obj) {
  if (Buffer.isBuffer(obj)) {
    var len = checked(obj.length) | 0
    that = createBuffer(that, len)

    if (that.length === 0) {
      return that
    }

    obj.copy(that, 0, 0, len)
    return that
  }

  if (obj) {
    if ((typeof ArrayBuffer !== 'undefined' &&
        obj.buffer instanceof ArrayBuffer) || 'length' in obj) {
      if (typeof obj.length !== 'number' || isnan(obj.length)) {
        return createBuffer(that, 0)
      }
      return fromArrayLike(that, obj)
    }

    if (obj.type === 'Buffer' && isArray(obj.data)) {
      return fromArrayLike(that, obj.data)
    }
  }

  throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')
}

function checked (length) {
  // Note: cannot use `length < kMaxLength()` here because that fails when
  // length is NaN (which is otherwise coerced to zero.)
  if (length >= kMaxLength()) {
    throw new RangeError('Attempt to allocate Buffer larger than maximum ' +
                         'size: 0x' + kMaxLength().toString(16) + ' bytes')
  }
  return length | 0
}

function SlowBuffer (length) {
  if (+length != length) { // eslint-disable-line eqeqeq
    length = 0
  }
  return Buffer.alloc(+length)
}

Buffer.isBuffer = function isBuffer (b) {
  return !!(b != null && b._isBuffer)
}

Buffer.compare = function compare (a, b) {
  if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
    throw new TypeError('Arguments must be Buffers')
  }

  if (a === b) return 0

  var x = a.length
  var y = b.length

  for (var i = 0, len = Math.min(x, y); i < len; ++i) {
    if (a[i] !== b[i]) {
      x = a[i]
      y = b[i]
      break
    }
  }

  if (x < y) return -1
  if (y < x) return 1
  return 0
}

Buffer.isEncoding = function isEncoding (encoding) {
  switch (String(encoding).toLowerCase()) {
    case 'hex':
    case 'utf8':
    case 'utf-8':
    case 'ascii':
    case 'latin1':
    case 'binary':
    case 'base64':
    case 'ucs2':
    case 'ucs-2':
    case 'utf16le':
    case 'utf-16le':
      return true
    default:
      return false
  }
}

Buffer.concat = function concat (list, length) {
  if (!isArray(list)) {
    throw new TypeError('"list" argument must be an Array of Buffers')
  }

  if (list.length === 0) {
    return Buffer.alloc(0)
  }

  var i
  if (length === undefined) {
    length = 0
    for (i = 0; i < list.length; ++i) {
      length += list[i].length
    }
  }

  var buffer = Buffer.allocUnsafe(length)
  var pos = 0
  for (i = 0; i < list.length; ++i) {
    var buf = list[i]
    if (!Buffer.isBuffer(buf)) {
      throw new TypeError('"list" argument must be an Array of Buffers')
    }
    buf.copy(buffer, pos)
    pos += buf.length
  }
  return buffer
}

function byteLength (string, encoding) {
  if (Buffer.isBuffer(string)) {
    return string.length
  }
  if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&
      (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {
    return string.byteLength
  }
  if (typeof string !== 'string') {
    string = '' + string
  }

  var len = string.length
  if (len === 0) return 0

  // Use a for loop to avoid recursion
  var loweredCase = false
  for (;;) {
    switch (encoding) {
      case 'ascii':
      case 'latin1':
      case 'binary':
        return len
      case 'utf8':
      case 'utf-8':
      case undefined:
        return utf8ToBytes(string).length
      case 'ucs2':
      case 'ucs-2':
      case 'utf16le':
      case 'utf-16le':
        return len * 2
      case 'hex':
        return len >>> 1
      case 'base64':
        return base64ToBytes(string).length
      default:
        if (loweredCase) return utf8ToBytes(string).length // assume utf8
        encoding = ('' + encoding).toLowerCase()
        loweredCase = true
    }
  }
}
Buffer.byteLength = byteLength

function slowToString (encoding, start, end) {
  var loweredCase = false

  // No need to verify that "this.length <= MAX_UINT32" since it's a read-only
  // property of a typed array.

  // This behaves neither like String nor Uint8Array in that we set start/end
  // to their upper/lower bounds if the value passed is out of range.
  // undefined is handled specially as per ECMA-262 6th Edition,
  // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.
  if (start === undefined || start < 0) {
    start = 0
  }
  // Return early if start > this.length. Done here to prevent potential uint32
  // coercion fail below.
  if (start > this.length) {
    return ''
  }

  if (end === undefined || end > this.length) {
    end = this.length
  }

  if (end <= 0) {
    return ''
  }

  // Force coersion to uint32. This will also coerce falsey/NaN values to 0.
  end >>>= 0
  start >>>= 0

  if (end <= start) {
    return ''
  }

  if (!encoding) encoding = 'utf8'

  while (true) {
    switch (encoding) {
      case 'hex':
        return hexSlice(this, start, end)

      case 'utf8':
      case 'utf-8':
        return utf8Slice(this, start, end)

      case 'ascii':
        return asciiSlice(this, start, end)

      case 'latin1':
      case 'binary':
        return latin1Slice(this, start, end)

      case 'base64':
        return base64Slice(this, start, end)

      case 'ucs2':
      case 'ucs-2':
      case 'utf16le':
      case 'utf-16le':
        return utf16leSlice(this, start, end)

      default:
        if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
        encoding = (encoding + '').toLowerCase()
        loweredCase = true
    }
  }
}

// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect
// Buffer instances.
Buffer.prototype._isBuffer = true

function swap (b, n, m) {
  var i = b[n]
  b[n] = b[m]
  b[m] = i
}

Buffer.prototype.swap16 = function swap16 () {
  var len = this.length
  if (len % 2 !== 0) {
    throw new RangeError('Buffer size must be a multiple of 16-bits')
  }
  for (var i = 0; i < len; i += 2) {
    swap(this, i, i + 1)
  }
  return this
}

Buffer.prototype.swap32 = function swap32 () {
  var len = this.length
  if (len % 4 !== 0) {
    throw new RangeError('Buffer size must be a multiple of 32-bits')
  }
  for (var i = 0; i < len; i += 4) {
    swap(this, i, i + 3)
    swap(this, i + 1, i + 2)
  }
  return this
}

Buffer.prototype.swap64 = function swap64 () {
  var len = this.length
  if (len % 8 !== 0) {
    throw new RangeError('Buffer size must be a multiple of 64-bits')
  }
  for (var i = 0; i < len; i += 8) {
    swap(this, i, i + 7)
    swap(this, i + 1, i + 6)
    swap(this, i + 2, i + 5)
    swap(this, i + 3, i + 4)
  }
  return this
}

Buffer.prototype.toString = function toString () {
  var length = this.length | 0
  if (length === 0) return ''
  if (arguments.length === 0) return utf8Slice(this, 0, length)
  return slowToString.apply(this, arguments)
}

Buffer.prototype.equals = function equals (b) {
  if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')
  if (this === b) return true
  return Buffer.compare(this, b) === 0
}

Buffer.prototype.inspect = function inspect () {
  var str = ''
  var max = exports.INSPECT_MAX_BYTES
  if (this.length > 0) {
    str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')
    if (this.length > max) str += ' ... '
  }
  return '<Buffer ' + str + '>'
}

Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {
  if (!Buffer.isBuffer(target)) {
    throw new TypeError('Argument must be a Buffer')
  }

  if (start === undefined) {
    start = 0
  }
  if (end === undefined) {
    end = target ? target.length : 0
  }
  if (thisStart === undefined) {
    thisStart = 0
  }
  if (thisEnd === undefined) {
    thisEnd = this.length
  }

  if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {
    throw new RangeError('out of range index')
  }

  if (thisStart >= thisEnd && start >= end) {
    return 0
  }
  if (thisStart >= thisEnd) {
    return -1
  }
  if (start >= end) {
    return 1
  }

  start >>>= 0
  end >>>= 0
  thisStart >>>= 0
  thisEnd >>>= 0

  if (this === target) return 0

  var x = thisEnd - thisStart
  var y = end - start
  var len = Math.min(x, y)

  var thisCopy = this.slice(thisStart, thisEnd)
  var targetCopy = target.slice(start, end)

  for (var i = 0; i < len; ++i) {
    if (thisCopy[i] !== targetCopy[i]) {
      x = thisCopy[i]
      y = targetCopy[i]
      break
    }
  }

  if (x < y) return -1
  if (y < x) return 1
  return 0
}

// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,
// OR the last index of `val` in `buffer` at offset <= `byteOffset`.
//
// Arguments:
// - buffer - a Buffer to search
// - val - a string, Buffer, or number
// - byteOffset - an index into `buffer`; will be clamped to an int32
// - encoding - an optional encoding, relevant is val is a string
// - dir - true for indexOf, false for lastIndexOf
function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {
  // Empty buffer means no match
  if (buffer.length === 0) return -1

  // Normalize byteOffset
  if (typeof byteOffset === 'string') {
    encoding = byteOffset
    byteOffset = 0
  } else if (byteOffset > 0x7fffffff) {
    byteOffset = 0x7fffffff
  } else if (byteOffset < -0x80000000) {
    byteOffset = -0x80000000
  }
  byteOffset = +byteOffset  // Coerce to Number.
  if (isNaN(byteOffset)) {
    // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer
    byteOffset = dir ? 0 : (buffer.length - 1)
  }

  // Normalize byteOffset: negative offsets start from the end of the buffer
  if (byteOffset < 0) byteOffset = buffer.length + byteOffset
  if (byteOffset >= buffer.length) {
    if (dir) return -1
    else byteOffset = buffer.length - 1
  } else if (byteOffset < 0) {
    if (dir) byteOffset = 0
    else return -1
  }

  // Normalize val
  if (typeof val === 'string') {
    val = Buffer.from(val, encoding)
  }

  // Finally, search either indexOf (if dir is true) or lastIndexOf
  if (Buffer.isBuffer(val)) {
    // Special case: looking for empty string/buffer always fails
    if (val.length === 0) {
      return -1
    }
    return arrayIndexOf(buffer, val, byteOffset, encoding, dir)
  } else if (typeof val === 'number') {
    val = val & 0xFF // Search for a byte value [0-255]
    if (Buffer.TYPED_ARRAY_SUPPORT &&
        typeof Uint8Array.prototype.indexOf === 'function') {
      if (dir) {
        return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)
      } else {
        return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)
      }
    }
    return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)
  }

  throw new TypeError('val must be string, number or Buffer')
}

function arrayIndexOf (arr, val, byteOffset, encoding, dir) {
  var indexSize = 1
  var arrLength = arr.length
  var valLength = val.length

  if (encoding !== undefined) {
    encoding = String(encoding).toLowerCase()
    if (encoding === 'ucs2' || encoding === 'ucs-2' ||
        encoding === 'utf16le' || encoding === 'utf-16le') {
      if (arr.length < 2 || val.length < 2) {
        return -1
      }
      indexSize = 2
      arrLength /= 2
      valLength /= 2
      byteOffset /= 2
    }
  }

  function read (buf, i) {
    if (indexSize === 1) {
      return buf[i]
    } else {
      return buf.readUInt16BE(i * indexSize)
    }
  }

  var i
  if (dir) {
    var foundIndex = -1
    for (i = byteOffset; i < arrLength; i++) {
      if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {
        if (foundIndex === -1) foundIndex = i
        if (i - foundIndex + 1 === valLength) return foundIndex * indexSize
      } else {
        if (foundIndex !== -1) i -= i - foundIndex
        foundIndex = -1
      }
    }
  } else {
    if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength
    for (i = byteOffset; i >= 0; i--) {
      var found = true
      for (var j = 0; j < valLength; j++) {
        if (read(arr, i + j) !== read(val, j)) {
          found = false
          break
        }
      }
      if (found) return i
    }
  }

  return -1
}

Buffer.prototype.includes = function includes (val, byteOffset, encoding) {
  return this.indexOf(val, byteOffset, encoding) !== -1
}

Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {
  return bidirectionalIndexOf(this, val, byteOffset, encoding, true)
}

Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {
  return bidirectionalIndexOf(this, val, byteOffset, encoding, false)
}

function hexWrite (buf, string, offset, length) {
  offset = Number(offset) || 0
  var remaining = buf.length - offset
  if (!length) {
    length = remaining
  } else {
    length = Number(length)
    if (length > remaining) {
      length = remaining
    }
  }

  // must be an even number of digits
  var strLen = string.length
  if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')

  if (length > strLen / 2) {
    length = strLen / 2
  }
  for (var i = 0; i < length; ++i) {
    var parsed = parseInt(string.substr(i * 2, 2), 16)
    if (isNaN(parsed)) return i
    buf[offset + i] = parsed
  }
  return i
}

function utf8Write (buf, string, offset, length) {
  return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)
}

function asciiWrite (buf, string, offset, length) {
  return blitBuffer(asciiToBytes(string), buf, offset, length)
}

function latin1Write (buf, string, offset, length) {
  return asciiWrite(buf, string, offset, length)
}

function base64Write (buf, string, offset, length) {
  return blitBuffer(base64ToBytes(string), buf, offset, length)
}

function ucs2Write (buf, string, offset, length) {
  return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)
}

Buffer.prototype.write = function write (string, offset, length, encoding) {
  // Buffer#write(string)
  if (offset === undefined) {
    encoding = 'utf8'
    length = this.length
    offset = 0
  // Buffer#write(string, encoding)
  } else if (length === undefined && typeof offset === 'string') {
    encoding = offset
    length = this.length
    offset = 0
  // Buffer#write(string, offset[, length][, encoding])
  } else if (isFinite(offset)) {
    offset = offset | 0
    if (isFinite(length)) {
      length = length | 0
      if (encoding === undefined) encoding = 'utf8'
    } else {
      encoding = length
      length = undefined
    }
  // legacy write(string, encoding, offset, length) - remove in v0.13
  } else {
    throw new Error(
      'Buffer.write(string, encoding, offset[, length]) is no longer supported'
    )
  }

  var remaining = this.length - offset
  if (length === undefined || length > remaining) length = remaining

  if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {
    throw new RangeError('Attempt to write outside buffer bounds')
  }

  if (!encoding) encoding = 'utf8'

  var loweredCase = false
  for (;;) {
    switch (encoding) {
      case 'hex':
        return hexWrite(this, string, offset, length)

      case 'utf8':
      case 'utf-8':
        return utf8Write(this, string, offset, length)

      case 'ascii':
        return asciiWrite(this, string, offset, length)

      case 'latin1':
      case 'binary':
        return latin1Write(this, string, offset, length)

      case 'base64':
        // Warning: maxLength not taken into account in base64Write
        return base64Write(this, string, offset, length)

      case 'ucs2':
      case 'ucs-2':
      case 'utf16le':
      case 'utf-16le':
        return ucs2Write(this, string, offset, length)

      default:
        if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
        encoding = ('' + encoding).toLowerCase()
        loweredCase = true
    }
  }
}

Buffer.prototype.toJSON = function toJSON () {
  return {
    type: 'Buffer',
    data: Array.prototype.slice.call(this._arr || this, 0)
  }
}

function base64Slice (buf, start, end) {
  if (start === 0 && end === buf.length) {
    return base64.fromByteArray(buf)
  } else {
    return base64.fromByteArray(buf.slice(start, end))
  }
}

function utf8Slice (buf, start, end) {
  end = Math.min(buf.length, end)
  var res = []

  var i = start
  while (i < end) {
    var firstByte = buf[i]
    var codePoint = null
    var bytesPerSequence = (firstByte > 0xEF) ? 4
      : (firstByte > 0xDF) ? 3
      : (firstByte > 0xBF) ? 2
      : 1

    if (i + bytesPerSequence <= end) {
      var secondByte, thirdByte, fourthByte, tempCodePoint

      switch (bytesPerSequence) {
        case 1:
          if (firstByte < 0x80) {
            codePoint = firstByte
          }
          break
        case 2:
          secondByte = buf[i + 1]
          if ((secondByte & 0xC0) === 0x80) {
            tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)
            if (tempCodePoint > 0x7F) {
              codePoint = tempCodePoint
            }
          }
          break
        case 3:
          secondByte = buf[i + 1]
          thirdByte = buf[i + 2]
          if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {
            tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)
            if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {
              codePoint = tempCodePoint
            }
          }
          break
        case 4:
          secondByte = buf[i + 1]
          thirdByte = buf[i + 2]
          fourthByte = buf[i + 3]
          if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {
            tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)
            if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {
              codePoint = tempCodePoint
            }
          }
      }
    }

    if (codePoint === null) {
      // we did not generate a valid codePoint so insert a
      // replacement char (U+FFFD) and advance only 1 byte
      codePoint = 0xFFFD
      bytesPerSequence = 1
    } else if (codePoint > 0xFFFF) {
      // encode to utf16 (surrogate pair dance)
      codePoint -= 0x10000
      res.push(codePoint >>> 10 & 0x3FF | 0xD800)
      codePoint = 0xDC00 | codePoint & 0x3FF
    }

    res.push(codePoint)
    i += bytesPerSequence
  }

  return decodeCodePointsArray(res)
}

// Based on http://stackoverflow.com/a/22747272/680742, the browser with
// the lowest limit is Chrome, with 0x10000 args.
// We go 1 magnitude less, for safety
var MAX_ARGUMENTS_LENGTH = 0x1000

function decodeCodePointsArray (codePoints) {
  var len = codePoints.length
  if (len <= MAX_ARGUMENTS_LENGTH) {
    return String.fromCharCode.apply(String, codePoints) // avoid extra slice()
  }

  // Decode in chunks to avoid "call stack size exceeded".
  var res = ''
  var i = 0
  while (i < len) {
    res += String.fromCharCode.apply(
      String,
      codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)
    )
  }
  return res
}

function asciiSlice (buf, start, end) {
  var ret = ''
  end = Math.min(buf.length, end)

  for (var i = start; i < end; ++i) {
    ret += String.fromCharCode(buf[i] & 0x7F)
  }
  return ret
}

function latin1Slice (buf, start, end) {
  var ret = ''
  end = Math.min(buf.length, end)

  for (var i = start; i < end; ++i) {
    ret += String.fromCharCode(buf[i])
  }
  return ret
}

function hexSlice (buf, start, end) {
  var len = buf.length

  if (!start || start < 0) start = 0
  if (!end || end < 0 || end > len) end = len

  var out = ''
  for (var i = start; i < end; ++i) {
    out += toHex(buf[i])
  }
  return out
}

function utf16leSlice (buf, start, end) {
  var bytes = buf.slice(start, end)
  var res = ''
  for (var i = 0; i < bytes.length; i += 2) {
    res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)
  }
  return res
}

Buffer.prototype.slice = function slice (start, end) {
  var len = this.length
  start = ~~start
  end = end === undefined ? len : ~~end

  if (start < 0) {
    start += len
    if (start < 0) start = 0
  } else if (start > len) {
    start = len
  }

  if (end < 0) {
    end += len
    if (end < 0) end = 0
  } else if (end > len) {
    end = len
  }

  if (end < start) end = start

  var newBuf
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    newBuf = this.subarray(start, end)
    newBuf.__proto__ = Buffer.prototype
  } else {
    var sliceLen = end - start
    newBuf = new Buffer(sliceLen, undefined)
    for (var i = 0; i < sliceLen; ++i) {
      newBuf[i] = this[i + start]
    }
  }

  return newBuf
}

/*
 * Need to make sure that buffer isn't trying to write out of bounds.
 */
function checkOffset (offset, ext, length) {
  if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')
  if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')
}

Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) checkOffset(offset, byteLength, this.length)

  var val = this[offset]
  var mul = 1
  var i = 0
  while (++i < byteLength && (mul *= 0x100)) {
    val += this[offset + i] * mul
  }

  return val
}

Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) {
    checkOffset(offset, byteLength, this.length)
  }

  var val = this[offset + --byteLength]
  var mul = 1
  while (byteLength > 0 && (mul *= 0x100)) {
    val += this[offset + --byteLength] * mul
  }

  return val
}

Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 1, this.length)
  return this[offset]
}

Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 2, this.length)
  return this[offset] | (this[offset + 1] << 8)
}

Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 2, this.length)
  return (this[offset] << 8) | this[offset + 1]
}

Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)

  return ((this[offset]) |
      (this[offset + 1] << 8) |
      (this[offset + 2] << 16)) +
      (this[offset + 3] * 0x1000000)
}

Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)

  return (this[offset] * 0x1000000) +
    ((this[offset + 1] << 16) |
    (this[offset + 2] << 8) |
    this[offset + 3])
}

Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) checkOffset(offset, byteLength, this.length)

  var val = this[offset]
  var mul = 1
  var i = 0
  while (++i < byteLength && (mul *= 0x100)) {
    val += this[offset + i] * mul
  }
  mul *= 0x80

  if (val >= mul) val -= Math.pow(2, 8 * byteLength)

  return val
}

Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) checkOffset(offset, byteLength, this.length)

  var i = byteLength
  var mul = 1
  var val = this[offset + --i]
  while (i > 0 && (mul *= 0x100)) {
    val += this[offset + --i] * mul
  }
  mul *= 0x80

  if (val >= mul) val -= Math.pow(2, 8 * byteLength)

  return val
}

Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 1, this.length)
  if (!(this[offset] & 0x80)) return (this[offset])
  return ((0xff - this[offset] + 1) * -1)
}

Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 2, this.length)
  var val = this[offset] | (this[offset + 1] << 8)
  return (val & 0x8000) ? val | 0xFFFF0000 : val
}

Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 2, this.length)
  var val = this[offset + 1] | (this[offset] << 8)
  return (val & 0x8000) ? val | 0xFFFF0000 : val
}

Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)

  return (this[offset]) |
    (this[offset + 1] << 8) |
    (this[offset + 2] << 16) |
    (this[offset + 3] << 24)
}

Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)

  return (this[offset] << 24) |
    (this[offset + 1] << 16) |
    (this[offset + 2] << 8) |
    (this[offset + 3])
}

Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)
  return ieee754.read(this, offset, true, 23, 4)
}

Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)
  return ieee754.read(this, offset, false, 23, 4)
}

Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 8, this.length)
  return ieee754.read(this, offset, true, 52, 8)
}

Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 8, this.length)
  return ieee754.read(this, offset, false, 52, 8)
}

function checkInt (buf, value, offset, ext, max, min) {
  if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance')
  if (value > max || value < min) throw new RangeError('"value" argument is out of bounds')
  if (offset + ext > buf.length) throw new RangeError('Index out of range')
}

Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {
  value = +value
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) {
    var maxBytes = Math.pow(2, 8 * byteLength) - 1
    checkInt(this, value, offset, byteLength, maxBytes, 0)
  }

  var mul = 1
  var i = 0
  this[offset] = value & 0xFF
  while (++i < byteLength && (mul *= 0x100)) {
    this[offset + i] = (value / mul) & 0xFF
  }

  return offset + byteLength
}

Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {
  value = +value
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) {
    var maxBytes = Math.pow(2, 8 * byteLength) - 1
    checkInt(this, value, offset, byteLength, maxBytes, 0)
  }

  var i = byteLength - 1
  var mul = 1
  this[offset + i] = value & 0xFF
  while (--i >= 0 && (mul *= 0x100)) {
    this[offset + i] = (value / mul) & 0xFF
  }

  return offset + byteLength
}

Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)
  if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
  this[offset] = (value & 0xff)
  return offset + 1
}

function objectWriteUInt16 (buf, value, offset, littleEndian) {
  if (value < 0) value = 0xffff + value + 1
  for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {
    buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>
      (littleEndian ? i : 1 - i) * 8
  }
}

Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value & 0xff)
    this[offset + 1] = (value >>> 8)
  } else {
    objectWriteUInt16(this, value, offset, true)
  }
  return offset + 2
}

Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value >>> 8)
    this[offset + 1] = (value & 0xff)
  } else {
    objectWriteUInt16(this, value, offset, false)
  }
  return offset + 2
}

function objectWriteUInt32 (buf, value, offset, littleEndian) {
  if (value < 0) value = 0xffffffff + value + 1
  for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {
    buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff
  }
}

Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset + 3] = (value >>> 24)
    this[offset + 2] = (value >>> 16)
    this[offset + 1] = (value >>> 8)
    this[offset] = (value & 0xff)
  } else {
    objectWriteUInt32(this, value, offset, true)
  }
  return offset + 4
}

Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value >>> 24)
    this[offset + 1] = (value >>> 16)
    this[offset + 2] = (value >>> 8)
    this[offset + 3] = (value & 0xff)
  } else {
    objectWriteUInt32(this, value, offset, false)
  }
  return offset + 4
}

Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) {
    var limit = Math.pow(2, 8 * byteLength - 1)

    checkInt(this, value, offset, byteLength, limit - 1, -limit)
  }

  var i = 0
  var mul = 1
  var sub = 0
  this[offset] = value & 0xFF
  while (++i < byteLength && (mul *= 0x100)) {
    if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {
      sub = 1
    }
    this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
  }

  return offset + byteLength
}

Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) {
    var limit = Math.pow(2, 8 * byteLength - 1)

    checkInt(this, value, offset, byteLength, limit - 1, -limit)
  }

  var i = byteLength - 1
  var mul = 1
  var sub = 0
  this[offset + i] = value & 0xFF
  while (--i >= 0 && (mul *= 0x100)) {
    if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {
      sub = 1
    }
    this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
  }

  return offset + byteLength
}

Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)
  if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
  if (value < 0) value = 0xff + value + 1
  this[offset] = (value & 0xff)
  return offset + 1
}

Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value & 0xff)
    this[offset + 1] = (value >>> 8)
  } else {
    objectWriteUInt16(this, value, offset, true)
  }
  return offset + 2
}

Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value >>> 8)
    this[offset + 1] = (value & 0xff)
  } else {
    objectWriteUInt16(this, value, offset, false)
  }
  return offset + 2
}

Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value & 0xff)
    this[offset + 1] = (value >>> 8)
    this[offset + 2] = (value >>> 16)
    this[offset + 3] = (value >>> 24)
  } else {
    objectWriteUInt32(this, value, offset, true)
  }
  return offset + 4
}

Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
  if (value < 0) value = 0xffffffff + value + 1
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value >>> 24)
    this[offset + 1] = (value >>> 16)
    this[offset + 2] = (value >>> 8)
    this[offset + 3] = (value & 0xff)
  } else {
    objectWriteUInt32(this, value, offset, false)
  }
  return offset + 4
}

function checkIEEE754 (buf, value, offset, ext, max, min) {
  if (offset + ext > buf.length) throw new RangeError('Index out of range')
  if (offset < 0) throw new RangeError('Index out of range')
}

function writeFloat (buf, value, offset, littleEndian, noAssert) {
  if (!noAssert) {
    checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)
  }
  ieee754.write(buf, value, offset, littleEndian, 23, 4)
  return offset + 4
}

Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {
  return writeFloat(this, value, offset, true, noAssert)
}

Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {
  return writeFloat(this, value, offset, false, noAssert)
}

function writeDouble (buf, value, offset, littleEndian, noAssert) {
  if (!noAssert) {
    checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)
  }
  ieee754.write(buf, value, offset, littleEndian, 52, 8)
  return offset + 8
}

Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {
  return writeDouble(this, value, offset, true, noAssert)
}

Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {
  return writeDouble(this, value, offset, false, noAssert)
}

// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)
Buffer.prototype.copy = function copy (target, targetStart, start, end) {
  if (!start) start = 0
  if (!end && end !== 0) end = this.length
  if (targetStart >= target.length) targetStart = target.length
  if (!targetStart) targetStart = 0
  if (end > 0 && end < start) end = start

  // Copy 0 bytes; we're done
  if (end === start) return 0
  if (target.length === 0 || this.length === 0) return 0

  // Fatal error conditions
  if (targetStart < 0) {
    throw new RangeError('targetStart out of bounds')
  }
  if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')
  if (end < 0) throw new RangeError('sourceEnd out of bounds')

  // Are we oob?
  if (end > this.length) end = this.length
  if (target.length - targetStart < end - start) {
    end = target.length - targetStart + start
  }

  var len = end - start
  var i

  if (this === target && start < targetStart && targetStart < end) {
    // descending copy from end
    for (i = len - 1; i >= 0; --i) {
      target[i + targetStart] = this[i + start]
    }
  } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {
    // ascending copy from start
    for (i = 0; i < len; ++i) {
      target[i + targetStart] = this[i + start]
    }
  } else {
    Uint8Array.prototype.set.call(
      target,
      this.subarray(start, start + len),
      targetStart
    )
  }

  return len
}

// Usage:
//    buffer.fill(number[, offset[, end]])
//    buffer.fill(buffer[, offset[, end]])
//    buffer.fill(string[, offset[, end]][, encoding])
Buffer.prototype.fill = function fill (val, start, end, encoding) {
  // Handle string cases:
  if (typeof val === 'string') {
    if (typeof start === 'string') {
      encoding = start
      start = 0
      end = this.length
    } else if (typeof end === 'string') {
      encoding = end
      end = this.length
    }
    if (val.length === 1) {
      var code = val.charCodeAt(0)
      if (code < 256) {
        val = code
      }
    }
    if (encoding !== undefined && typeof encoding !== 'string') {
      throw new TypeError('encoding must be a string')
    }
    if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {
      throw new TypeError('Unknown encoding: ' + encoding)
    }
  } else if (typeof val === 'number') {
    val = val & 255
  }

  // Invalid ranges are not set to a default, so can range check early.
  if (start < 0 || this.length < start || this.length < end) {
    throw new RangeError('Out of range index')
  }

  if (end <= start) {
    return this
  }

  start = start >>> 0
  end = end === undefined ? this.length : end >>> 0

  if (!val) val = 0

  var i
  if (typeof val === 'number') {
    for (i = start; i < end; ++i) {
      this[i] = val
    }
  } else {
    var bytes = Buffer.isBuffer(val)
      ? val
      : utf8ToBytes(new Buffer(val, encoding).toString())
    var len = bytes.length
    for (i = 0; i < end - start; ++i) {
      this[i + start] = bytes[i % len]
    }
  }

  return this
}

// HELPER FUNCTIONS
// ================

var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g

function base64clean (str) {
  // Node strips out invalid characters like \n and \t from the string, base64-js does not
  str = stringtrim(str).replace(INVALID_BASE64_RE, '')
  // Node converts strings with length < 2 to ''
  if (str.length < 2) return ''
  // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not
  while (str.length % 4 !== 0) {
    str = str + '='
  }
  return str
}

function stringtrim (str) {
  if (str.trim) return str.trim()
  return str.replace(/^\s+|\s+$/g, '')
}

function toHex (n) {
  if (n < 16) return '0' + n.toString(16)
  return n.toString(16)
}

function utf8ToBytes (string, units) {
  units = units || Infinity
  var codePoint
  var length = string.length
  var leadSurrogate = null
  var bytes = []

  for (var i = 0; i < length; ++i) {
    codePoint = string.charCodeAt(i)

    // is surrogate component
    if (codePoint > 0xD7FF && codePoint < 0xE000) {
      // last char was a lead
      if (!leadSurrogate) {
        // no lead yet
        if (codePoint > 0xDBFF) {
          // unexpected trail
          if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
          continue
        } else if (i + 1 === length) {
          // unpaired lead
          if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
          continue
        }

        // valid lead
        leadSurrogate = codePoint

        continue
      }

      // 2 leads in a row
      if (codePoint < 0xDC00) {
        if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
        leadSurrogate = codePoint
        continue
      }

      // valid surrogate pair
      codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000
    } else if (leadSurrogate) {
      // valid bmp char, but last char was a lead
      if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
    }

    leadSurrogate = null

    // encode utf8
    if (codePoint < 0x80) {
      if ((units -= 1) < 0) break
      bytes.push(codePoint)
    } else if (codePoint < 0x800) {
      if ((units -= 2) < 0) break
      bytes.push(
        codePoint >> 0x6 | 0xC0,
        codePoint & 0x3F | 0x80
      )
    } else if (codePoint < 0x10000) {
      if ((units -= 3) < 0) break
      bytes.push(
        codePoint >> 0xC | 0xE0,
        codePoint >> 0x6 & 0x3F | 0x80,
        codePoint & 0x3F | 0x80
      )
    } else if (codePoint < 0x110000) {
      if ((units -= 4) < 0) break
      bytes.push(
        codePoint >> 0x12 | 0xF0,
        codePoint >> 0xC & 0x3F | 0x80,
        codePoint >> 0x6 & 0x3F | 0x80,
        codePoint & 0x3F | 0x80
      )
    } else {
      throw new Error('Invalid code point')
    }
  }

  return bytes
}

function asciiToBytes (str) {
  var byteArray = []
  for (var i = 0; i < str.length; ++i) {
    // Node's code seems to be doing this and not & 0x7F..
    byteArray.push(str.charCodeAt(i) & 0xFF)
  }
  return byteArray
}

function utf16leToBytes (str, units) {
  var c, hi, lo
  var byteArray = []
  for (var i = 0; i < str.length; ++i) {
    if ((units -= 2) < 0) break

    c = str.charCodeAt(i)
    hi = c >> 8
    lo = c % 256
    byteArray.push(lo)
    byteArray.push(hi)
  }

  return byteArray
}

function base64ToBytes (str) {
  return base64.toByteArray(base64clean(str))
}

function blitBuffer (src, dst, offset, length) {
  for (var i = 0; i < length; ++i) {
    if ((i + offset >= dst.length) || (i >= src.length)) break
    dst[i + offset] = src[i]
  }
  return i
}

function isnan (val) {
  return val !== val // eslint-disable-line no-self-compare
}

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ 3)))

/***/ }),

/***/ 59:
/*!*****************************************!*\
  !*** ./node_modules/base64-js/index.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


exports.byteLength = byteLength
exports.toByteArray = toByteArray
exports.fromByteArray = fromByteArray

var lookup = []
var revLookup = []
var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array

var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
for (var i = 0, len = code.length; i < len; ++i) {
  lookup[i] = code[i]
  revLookup[code.charCodeAt(i)] = i
}

// Support decoding URL-safe base64 strings, as Node.js does.
// See: https://en.wikipedia.org/wiki/Base64#URL_applications
revLookup['-'.charCodeAt(0)] = 62
revLookup['_'.charCodeAt(0)] = 63

function getLens (b64) {
  var len = b64.length

  if (len % 4 > 0) {
    throw new Error('Invalid string. Length must be a multiple of 4')
  }

  // Trim off extra bytes after placeholder bytes are found
  // See: https://github.com/beatgammit/base64-js/issues/42
  var validLen = b64.indexOf('=')
  if (validLen === -1) validLen = len

  var placeHoldersLen = validLen === len
    ? 0
    : 4 - (validLen % 4)

  return [validLen, placeHoldersLen]
}

// base64 is 4/3 + up to two characters of the original data
function byteLength (b64) {
  var lens = getLens(b64)
  var validLen = lens[0]
  var placeHoldersLen = lens[1]
  return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen
}

function _byteLength (b64, validLen, placeHoldersLen) {
  return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen
}

function toByteArray (b64) {
  var tmp
  var lens = getLens(b64)
  var validLen = lens[0]
  var placeHoldersLen = lens[1]

  var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))

  var curByte = 0

  // if there are placeholders, only get up to the last complete 4 chars
  var len = placeHoldersLen > 0
    ? validLen - 4
    : validLen

  var i
  for (i = 0; i < len; i += 4) {
    tmp =
      (revLookup[b64.charCodeAt(i)] << 18) |
      (revLookup[b64.charCodeAt(i + 1)] << 12) |
      (revLookup[b64.charCodeAt(i + 2)] << 6) |
      revLookup[b64.charCodeAt(i + 3)]
    arr[curByte++] = (tmp >> 16) & 0xFF
    arr[curByte++] = (tmp >> 8) & 0xFF
    arr[curByte++] = tmp & 0xFF
  }

  if (placeHoldersLen === 2) {
    tmp =
      (revLookup[b64.charCodeAt(i)] << 2) |
      (revLookup[b64.charCodeAt(i + 1)] >> 4)
    arr[curByte++] = tmp & 0xFF
  }

  if (placeHoldersLen === 1) {
    tmp =
      (revLookup[b64.charCodeAt(i)] << 10) |
      (revLookup[b64.charCodeAt(i + 1)] << 4) |
      (revLookup[b64.charCodeAt(i + 2)] >> 2)
    arr[curByte++] = (tmp >> 8) & 0xFF
    arr[curByte++] = tmp & 0xFF
  }

  return arr
}

function tripletToBase64 (num) {
  return lookup[num >> 18 & 0x3F] +
    lookup[num >> 12 & 0x3F] +
    lookup[num >> 6 & 0x3F] +
    lookup[num & 0x3F]
}

function encodeChunk (uint8, start, end) {
  var tmp
  var output = []
  for (var i = start; i < end; i += 3) {
    tmp =
      ((uint8[i] << 16) & 0xFF0000) +
      ((uint8[i + 1] << 8) & 0xFF00) +
      (uint8[i + 2] & 0xFF)
    output.push(tripletToBase64(tmp))
  }
  return output.join('')
}

function fromByteArray (uint8) {
  var tmp
  var len = uint8.length
  var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes
  var parts = []
  var maxChunkLength = 16383 // must be multiple of 3

  // go through the array every three bytes, we'll deal with trailing stuff later
  for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
    parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))
  }

  // pad the end with zeros, but make sure to not forget the extra bytes
  if (extraBytes === 1) {
    tmp = uint8[len - 1]
    parts.push(
      lookup[tmp >> 2] +
      lookup[(tmp << 4) & 0x3F] +
      '=='
    )
  } else if (extraBytes === 2) {
    tmp = (uint8[len - 2] << 8) + uint8[len - 1]
    parts.push(
      lookup[tmp >> 10] +
      lookup[(tmp >> 4) & 0x3F] +
      lookup[(tmp << 2) & 0x3F] +
      '='
    )
  }

  return parts.join('')
}


/***/ }),

/***/ 6:
/*!***************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/arrayWithHoles.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _arrayWithHoles(arr) {
  if (Array.isArray(arr)) return arr;
}
module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 60:
/*!***************************************!*\
  !*** ./node_modules/ieee754/index.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
exports.read = function (buffer, offset, isLE, mLen, nBytes) {
  var e, m
  var eLen = (nBytes * 8) - mLen - 1
  var eMax = (1 << eLen) - 1
  var eBias = eMax >> 1
  var nBits = -7
  var i = isLE ? (nBytes - 1) : 0
  var d = isLE ? -1 : 1
  var s = buffer[offset + i]

  i += d

  e = s & ((1 << (-nBits)) - 1)
  s >>= (-nBits)
  nBits += eLen
  for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}

  m = e & ((1 << (-nBits)) - 1)
  e >>= (-nBits)
  nBits += mLen
  for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}

  if (e === 0) {
    e = 1 - eBias
  } else if (e === eMax) {
    return m ? NaN : ((s ? -1 : 1) * Infinity)
  } else {
    m = m + Math.pow(2, mLen)
    e = e - eBias
  }
  return (s ? -1 : 1) * m * Math.pow(2, e - mLen)
}

exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
  var e, m, c
  var eLen = (nBytes * 8) - mLen - 1
  var eMax = (1 << eLen) - 1
  var eBias = eMax >> 1
  var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)
  var i = isLE ? 0 : (nBytes - 1)
  var d = isLE ? 1 : -1
  var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0

  value = Math.abs(value)

  if (isNaN(value) || value === Infinity) {
    m = isNaN(value) ? 1 : 0
    e = eMax
  } else {
    e = Math.floor(Math.log(value) / Math.LN2)
    if (value * (c = Math.pow(2, -e)) < 1) {
      e--
      c *= 2
    }
    if (e + eBias >= 1) {
      value += rt / c
    } else {
      value += rt * Math.pow(2, 1 - eBias)
    }
    if (value * c >= 2) {
      e++
      c /= 2
    }

    if (e + eBias >= eMax) {
      m = 0
      e = eMax
    } else if (e + eBias >= 1) {
      m = ((value * c) - 1) * Math.pow(2, mLen)
      e = e + eBias
    } else {
      m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)
      e = 0
    }
  }

  for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}

  e = (e << mLen) | m
  eLen += mLen
  for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}

  buffer[offset + i - d] |= s * 128
}


/***/ }),

/***/ 61:
/*!***************************************!*\
  !*** ./node_modules/isarray/index.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports) {

var toString = {}.toString;

module.exports = Array.isArray || function (arr) {
  return toString.call(arr) == '[object Array]';
};


/***/ }),

/***/ 62:
/*!*******************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/util/route.js ***!
  \*******************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 63));
var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 65));
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ 23));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ 24));
/**
 * 路由跳转方法，该方法相对于直接使用uni.xxx的好处是使用更加简单快捷
 * 并且带有路由拦截功能
 */
var Router = /*#__PURE__*/function () {
  function Router() {
    (0, _classCallCheck2.default)(this, Router);
    // 原始属性定义
    this.config = {
      type: 'navigateTo',
      url: '',
      delta: 1,
      // navigateBack页面后退时,回退的层数
      params: {},
      // 传递的参数
      animationType: 'pop-in',
      // 窗口动画,只在APP有效
      animationDuration: 300,
      // 窗口动画持续时间,单位毫秒,只在APP有效
      intercept: false // 是否需要拦截
    };
    // 因为route方法是需要对外赋值给另外的对象使用，同时route内部有使用this，会导致route失去上下文
    // 这里在构造函数中进行this绑定
    this.route = this.route.bind(this);
  }

  // 判断url前面是否有"/"，如果没有则加上，否则无法跳转
  (0, _createClass2.default)(Router, [{
    key: "addRootPath",
    value: function addRootPath(url) {
      return url[0] === '/' ? url : "/".concat(url);
    }

    // 整合路由参数
  }, {
    key: "mixinParam",
    value: function mixinParam(url, params) {
      url = url && this.addRootPath(url);

      // 使用正则匹配，主要依据是判断是否有"/","?","="等，如“/page/index/index?name=mary"
      // 如果有url中有get参数，转换后无需带上"?"
      var query = '';
      if (/.*\/.*\?.*=.*/.test(url)) {
        // object对象转为get类型的参数
        query = uni.$u.queryParams(params, false);
        // 因为已有get参数,所以后面拼接的参数需要带上"&"隔开
        return url += "&".concat(query);
      }
      // 直接拼接参数，因为此处url中没有后面的query参数，也就没有"?/&"之类的符号
      query = uni.$u.queryParams(params);
      return url += query;
    }

    // 对外的方法名称
  }, {
    key: "route",
    value: function () {
      var _route = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
        var options,
          params,
          mergeConfig,
          isNext,
          _args = arguments;
        return _regenerator.default.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                options = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
                params = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
                // 合并用户的配置和内部的默认配置
                mergeConfig = {};
                if (typeof options === 'string') {
                  // 如果options为字符串，则为route(url, params)的形式
                  mergeConfig.url = this.mixinParam(options, params);
                  mergeConfig.type = 'navigateTo';
                } else {
                  mergeConfig = uni.$u.deepMerge(this.config, options);
                  // 否则正常使用mergeConfig中的url和params进行拼接
                  mergeConfig.url = this.mixinParam(options.url, options.params);
                }

                // 如果本次跳转的路径和本页面路径一致，不执行跳转，防止用户快速点击跳转按钮，造成多次跳转同一个页面的问题
                if (!(mergeConfig.url === uni.$u.page())) {
                  _context.next = 6;
                  break;
                }
                return _context.abrupt("return");
              case 6:
                if (params.intercept) {
                  this.config.intercept = params.intercept;
                }
                // params参数也带给拦截器
                mergeConfig.params = params;
                // 合并内外部参数
                mergeConfig = uni.$u.deepMerge(this.config, mergeConfig);
                // 判断用户是否定义了拦截器
                if (!(typeof uni.$u.routeIntercept === 'function')) {
                  _context.next = 16;
                  break;
                }
                _context.next = 12;
                return new Promise(function (resolve, reject) {
                  uni.$u.routeIntercept(mergeConfig, resolve);
                });
              case 12:
                isNext = _context.sent;
                // 如果isNext为true，则执行路由跳转
                isNext && this.openPage(mergeConfig);
                _context.next = 17;
                break;
              case 16:
                this.openPage(mergeConfig);
              case 17:
              case "end":
                return _context.stop();
            }
          }
        }, _callee, this);
      }));
      function route() {
        return _route.apply(this, arguments);
      }
      return route;
    }() // 执行路由跳转
  }, {
    key: "openPage",
    value: function openPage(config) {
      // 解构参数
      var url = config.url,
        type = config.type,
        delta = config.delta,
        animationType = config.animationType,
        animationDuration = config.animationDuration;
      if (config.type == 'navigateTo' || config.type == 'to') {
        uni.navigateTo({
          url: url,
          animationType: animationType,
          animationDuration: animationDuration
        });
      }
      if (config.type == 'redirectTo' || config.type == 'redirect') {
        uni.redirectTo({
          url: url
        });
      }
      if (config.type == 'switchTab' || config.type == 'tab') {
        uni.switchTab({
          url: url
        });
      }
      if (config.type == 'reLaunch' || config.type == 'launch') {
        uni.reLaunch({
          url: url
        });
      }
      if (config.type == 'navigateBack' || config.type == 'back') {
        uni.navigateBack({
          delta: delta
        });
      }
    }
  }]);
  return Router;
}();
var _default = new Router().route;
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 63:
/*!************************************************************************************************!*\
  !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/@babel/runtime/regenerator/index.js ***!
  \************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

// TODO(Babel 8): Remove this file.

var runtime = __webpack_require__(/*! @babel/runtime/helpers/regeneratorRuntime */ 64)();
module.exports = runtime;

/***/ }),

/***/ 64:
/*!*******************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js ***!
  \*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var _typeof = __webpack_require__(/*! ./typeof.js */ 13)["default"];
function _regeneratorRuntime() {
  "use strict";

  /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
  module.exports = _regeneratorRuntime = function _regeneratorRuntime() {
    return exports;
  }, module.exports.__esModule = true, module.exports["default"] = module.exports;
  var exports = {},
    Op = Object.prototype,
    hasOwn = Op.hasOwnProperty,
    defineProperty = Object.defineProperty || function (obj, key, desc) {
      obj[key] = desc.value;
    },
    $Symbol = "function" == typeof Symbol ? Symbol : {},
    iteratorSymbol = $Symbol.iterator || "@@iterator",
    asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator",
    toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
  function define(obj, key, value) {
    return Object.defineProperty(obj, key, {
      value: value,
      enumerable: !0,
      configurable: !0,
      writable: !0
    }), obj[key];
  }
  try {
    define({}, "");
  } catch (err) {
    define = function define(obj, key, value) {
      return obj[key] = value;
    };
  }
  function wrap(innerFn, outerFn, self, tryLocsList) {
    var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,
      generator = Object.create(protoGenerator.prototype),
      context = new Context(tryLocsList || []);
    return defineProperty(generator, "_invoke", {
      value: makeInvokeMethod(innerFn, self, context)
    }), generator;
  }
  function tryCatch(fn, obj, arg) {
    try {
      return {
        type: "normal",
        arg: fn.call(obj, arg)
      };
    } catch (err) {
      return {
        type: "throw",
        arg: err
      };
    }
  }
  exports.wrap = wrap;
  var ContinueSentinel = {};
  function Generator() {}
  function GeneratorFunction() {}
  function GeneratorFunctionPrototype() {}
  var IteratorPrototype = {};
  define(IteratorPrototype, iteratorSymbol, function () {
    return this;
  });
  var getProto = Object.getPrototypeOf,
    NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);
  var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);
  function defineIteratorMethods(prototype) {
    ["next", "throw", "return"].forEach(function (method) {
      define(prototype, method, function (arg) {
        return this._invoke(method, arg);
      });
    });
  }
  function AsyncIterator(generator, PromiseImpl) {
    function invoke(method, arg, resolve, reject) {
      var record = tryCatch(generator[method], generator, arg);
      if ("throw" !== record.type) {
        var result = record.arg,
          value = result.value;
        return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) {
          invoke("next", value, resolve, reject);
        }, function (err) {
          invoke("throw", err, resolve, reject);
        }) : PromiseImpl.resolve(value).then(function (unwrapped) {
          result.value = unwrapped, resolve(result);
        }, function (error) {
          return invoke("throw", error, resolve, reject);
        });
      }
      reject(record.arg);
    }
    var previousPromise;
    defineProperty(this, "_invoke", {
      value: function value(method, arg) {
        function callInvokeWithMethodAndArg() {
          return new PromiseImpl(function (resolve, reject) {
            invoke(method, arg, resolve, reject);
          });
        }
        return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
      }
    });
  }
  function makeInvokeMethod(innerFn, self, context) {
    var state = "suspendedStart";
    return function (method, arg) {
      if ("executing" === state) throw new Error("Generator is already running");
      if ("completed" === state) {
        if ("throw" === method) throw arg;
        return doneResult();
      }
      for (context.method = method, context.arg = arg;;) {
        var delegate = context.delegate;
        if (delegate) {
          var delegateResult = maybeInvokeDelegate(delegate, context);
          if (delegateResult) {
            if (delegateResult === ContinueSentinel) continue;
            return delegateResult;
          }
        }
        if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) {
          if ("suspendedStart" === state) throw state = "completed", context.arg;
          context.dispatchException(context.arg);
        } else "return" === context.method && context.abrupt("return", context.arg);
        state = "executing";
        var record = tryCatch(innerFn, self, context);
        if ("normal" === record.type) {
          if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue;
          return {
            value: record.arg,
            done: context.done
          };
        }
        "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg);
      }
    };
  }
  function maybeInvokeDelegate(delegate, context) {
    var methodName = context.method,
      method = delegate.iterator[methodName];
    if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel;
    var record = tryCatch(method, delegate.iterator, context.arg);
    if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel;
    var info = record.arg;
    return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel);
  }
  function pushTryEntry(locs) {
    var entry = {
      tryLoc: locs[0]
    };
    1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);
  }
  function resetTryEntry(entry) {
    var record = entry.completion || {};
    record.type = "normal", delete record.arg, entry.completion = record;
  }
  function Context(tryLocsList) {
    this.tryEntries = [{
      tryLoc: "root"
    }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);
  }
  function values(iterable) {
    if (iterable) {
      var iteratorMethod = iterable[iteratorSymbol];
      if (iteratorMethod) return iteratorMethod.call(iterable);
      if ("function" == typeof iterable.next) return iterable;
      if (!isNaN(iterable.length)) {
        var i = -1,
          next = function next() {
            for (; ++i < iterable.length;) {
              if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;
            }
            return next.value = undefined, next.done = !0, next;
          };
        return next.next = next;
      }
    }
    return {
      next: doneResult
    };
  }
  function doneResult() {
    return {
      value: undefined,
      done: !0
    };
  }
  return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", {
    value: GeneratorFunctionPrototype,
    configurable: !0
  }), defineProperty(GeneratorFunctionPrototype, "constructor", {
    value: GeneratorFunction,
    configurable: !0
  }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) {
    var ctor = "function" == typeof genFun && genFun.constructor;
    return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name));
  }, exports.mark = function (genFun) {
    return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun;
  }, exports.awrap = function (arg) {
    return {
      __await: arg
    };
  }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {
    return this;
  }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {
    void 0 === PromiseImpl && (PromiseImpl = Promise);
    var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);
    return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {
      return result.done ? result.value : iter.next();
    });
  }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () {
    return this;
  }), define(Gp, "toString", function () {
    return "[object Generator]";
  }), exports.keys = function (val) {
    var object = Object(val),
      keys = [];
    for (var key in object) {
      keys.push(key);
    }
    return keys.reverse(), function next() {
      for (; keys.length;) {
        var key = keys.pop();
        if (key in object) return next.value = key, next.done = !1, next;
      }
      return next.done = !0, next;
    };
  }, exports.values = values, Context.prototype = {
    constructor: Context,
    reset: function reset(skipTempReset) {
      if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) {
        "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);
      }
    },
    stop: function stop() {
      this.done = !0;
      var rootRecord = this.tryEntries[0].completion;
      if ("throw" === rootRecord.type) throw rootRecord.arg;
      return this.rval;
    },
    dispatchException: function dispatchException(exception) {
      if (this.done) throw exception;
      var context = this;
      function handle(loc, caught) {
        return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught;
      }
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i],
          record = entry.completion;
        if ("root" === entry.tryLoc) return handle("end");
        if (entry.tryLoc <= this.prev) {
          var hasCatch = hasOwn.call(entry, "catchLoc"),
            hasFinally = hasOwn.call(entry, "finallyLoc");
          if (hasCatch && hasFinally) {
            if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
            if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
          } else if (hasCatch) {
            if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);
          } else {
            if (!hasFinally) throw new Error("try statement without catch or finally");
            if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);
          }
        }
      }
    },
    abrupt: function abrupt(type, arg) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) {
          var finallyEntry = entry;
          break;
        }
      }
      finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);
      var record = finallyEntry ? finallyEntry.completion : {};
      return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);
    },
    complete: function complete(record, afterLoc) {
      if ("throw" === record.type) throw record.arg;
      return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;
    },
    finish: function finish(finallyLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;
      }
    },
    "catch": function _catch(tryLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc === tryLoc) {
          var record = entry.completion;
          if ("throw" === record.type) {
            var thrown = record.arg;
            resetTryEntry(entry);
          }
          return thrown;
        }
      }
      throw new Error("illegal catch attempt");
    },
    delegateYield: function delegateYield(iterable, resultName, nextLoc) {
      return this.delegate = {
        iterator: values(iterable),
        resultName: resultName,
        nextLoc: nextLoc
      }, "next" === this.method && (this.arg = undefined), ContinueSentinel;
    }
  }, exports;
}
module.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 65:
/*!*****************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/asyncToGenerator.js ***!
  \*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

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);
    });
  };
}
module.exports = _asyncToGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 66:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/function/colorGradient.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/**
 * 求两个颜色之间的渐变值
 * @param {string} startColor 开始的颜色
 * @param {string} endColor 结束的颜色
 * @param {number} step 颜色等分的份额
 * */
function colorGradient() {
  var startColor = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'rgb(0, 0, 0)';
  var endColor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'rgb(255, 255, 255)';
  var step = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 10;
  var startRGB = hexToRgb(startColor, false); // 转换为rgb数组模式
  var startR = startRGB[0];
  var startG = startRGB[1];
  var startB = startRGB[2];
  var endRGB = hexToRgb(endColor, false);
  var endR = endRGB[0];
  var endG = endRGB[1];
  var endB = endRGB[2];
  var sR = (endR - startR) / step; // 总差值
  var sG = (endG - startG) / step;
  var sB = (endB - startB) / step;
  var colorArr = [];
  for (var i = 0; i < step; i++) {
    // 计算每一步的hex值
    var hex = rgbToHex("rgb(".concat(Math.round(sR * i + startR), ",").concat(Math.round(sG * i + startG), ",").concat(Math.round(sB * i + startB), ")"));
    // 确保第一个颜色值为startColor的值
    if (i === 0) hex = rgbToHex(startColor);
    // 确保最后一个颜色值为endColor的值
    if (i === step - 1) hex = rgbToHex(endColor);
    colorArr.push(hex);
  }
  return colorArr;
}

// 将hex表示方式转换为rgb表示方式(这里返回rgb数组模式)
function hexToRgb(sColor) {
  var str = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
  sColor = String(sColor).toLowerCase();
  if (sColor && reg.test(sColor)) {
    if (sColor.length === 4) {
      var sColorNew = '#';
      for (var i = 1; i < 4; i += 1) {
        sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));
      }
      sColor = sColorNew;
    }
    // 处理六位的颜色值
    var sColorChange = [];
    for (var _i = 1; _i < 7; _i += 2) {
      sColorChange.push(parseInt("0x".concat(sColor.slice(_i, _i + 2))));
    }
    if (!str) {
      return sColorChange;
    }
    return "rgb(".concat(sColorChange[0], ",").concat(sColorChange[1], ",").concat(sColorChange[2], ")");
  }
  if (/^(rgb|RGB)/.test(sColor)) {
    var arr = sColor.replace(/(?:\(|\)|rgb|RGB)*/g, '').split(',');
    return arr.map(function (val) {
      return Number(val);
    });
  }
  return sColor;
}

// 将rgb表示方式转换为hex表示方式
function rgbToHex(rgb) {
  var _this = rgb;
  var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
  if (/^(rgb|RGB)/.test(_this)) {
    var aColor = _this.replace(/(?:\(|\)|rgb|RGB)*/g, '').split(',');
    var strHex = '#';
    for (var i = 0; i < aColor.length; i++) {
      var hex = Number(aColor[i]).toString(16);
      hex = String(hex).length == 1 ? "".concat(0, hex) : hex; // 保证每个rgb的值为2位
      if (hex === '0') {
        hex += hex;
      }
      strHex += hex;
    }
    if (strHex.length !== 7) {
      strHex = _this;
    }
    return strHex;
  }
  if (reg.test(_this)) {
    var aNum = _this.replace(/#/, '').split('');
    if (aNum.length === 6) {
      return _this;
    }
    if (aNum.length === 3) {
      var numHex = '#';
      for (var _i2 = 0; _i2 < aNum.length; _i2 += 1) {
        numHex += aNum[_i2] + aNum[_i2];
      }
      return numHex;
    }
  } else {
    return _this;
  }
}

/**
* JS颜色十六进制转换为rgb或rgba,返回的格式为 rgba（255，255，255，0.5）字符串
* sHex为传入的十六进制的色值
* alpha为rgba的透明度
*/
function colorToRgba(color, alpha) {
  color = rgbToHex(color);
  // 十六进制颜色值的正则表达式
  var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
  /* 16进制颜色转为RGB格式 */
  var sColor = String(color).toLowerCase();
  if (sColor && reg.test(sColor)) {
    if (sColor.length === 4) {
      var sColorNew = '#';
      for (var i = 1; i < 4; i += 1) {
        sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));
      }
      sColor = sColorNew;
    }
    // 处理六位的颜色值
    var sColorChange = [];
    for (var _i3 = 1; _i3 < 7; _i3 += 2) {
      sColorChange.push(parseInt("0x".concat(sColor.slice(_i3, _i3 + 2))));
    }
    // return sColorChange.join(',')
    return "rgba(".concat(sColorChange.join(','), ",").concat(alpha, ")");
  }
  return sColor;
}
var _default = {
  colorGradient: colorGradient,
  hexToRgb: hexToRgb,
  rgbToHex: rgbToHex,
  colorToRgba: colorToRgba
};
exports.default = _default;

/***/ }),

/***/ 67:
/*!**********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/function/test.js ***!
  \**********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
/**
 * 验证电子邮箱格式
 */
function email(value) {
  return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(value);
}

/**
 * 验证手机格式
 */
function mobile(value) {
  return /^1([3589]\d|4[5-9]|6[1-2,4-7]|7[0-8])\d{8}$/.test(value);
}

/**
 * 验证URL格式
 */
function url(value) {
  return /^((https|http|ftp|rtsp|mms):\/\/)(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?(([0-9]{1,3}.){3}[0-9]{1,3}|([0-9a-zA-Z_!~*'()-]+.)*([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z].[a-zA-Z]{2,6})(:[0-9]{1,4})?((\/?)|(\/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+\/?)$/.test(value);
}

/**
 * 验证日期格式
 */
function date(value) {
  if (!value) return false;
  // 判断是否数值或者字符串数值(意味着为时间戳)，转为数值，否则new Date无法识别字符串时间戳
  if (number(value)) value = +value;
  return !/Invalid|NaN/.test(new Date(value).toString());
}

/**
 * 验证ISO类型的日期格式
 */
function dateISO(value) {
  return /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(value);
}

/**
 * 验证十进制数字
 */
function number(value) {
  return /^[\+-]?(\d+\.?\d*|\.\d+|\d\.\d+e\+\d+)$/.test(value);
}

/**
 * 验证字符串
 */
function string(value) {
  return typeof value === 'string';
}

/**
 * 验证整数
 */
function digits(value) {
  return /^\d+$/.test(value);
}

/**
 * 验证身份证号码
 */
function idCard(value) {
  return /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test(value);
}

/**
 * 是否车牌号
 */
function carNo(value) {
  // 新能源车牌
  var xreg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/;
  // 旧车牌
  var creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/;
  if (value.length === 7) {
    return creg.test(value);
  }
  if (value.length === 8) {
    return xreg.test(value);
  }
  return false;
}

/**
 * 金额,只允许2位小数
 */
function amount(value) {
  // 金额，只允许保留两位小数
  return /^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0\.\d{1,2}$/.test(value);
}

/**
 * 中文
 */
function chinese(value) {
  var reg = /^[\u4e00-\u9fa5]+$/gi;
  return reg.test(value);
}

/**
 * 只能输入字母
 */
function letter(value) {
  return /^[a-zA-Z]*$/.test(value);
}

/**
 * 只能是字母或者数字
 */
function enOrNum(value) {
  // 英文或者数字
  var reg = /^[0-9a-zA-Z]*$/g;
  return reg.test(value);
}

/**
 * 验证是否包含某个值
 */
function contains(value, param) {
  return value.indexOf(param) >= 0;
}

/**
 * 验证一个值范围[min, max]
 */
function range(value, param) {
  return value >= param[0] && value <= param[1];
}

/**
 * 验证一个长度范围[min, max]
 */
function rangeLength(value, param) {
  return value.length >= param[0] && value.length <= param[1];
}

/**
 * 是否固定电话
 */
function landline(value) {
  var reg = /^\d{3,4}-\d{7,8}(-\d{3,4})?$/;
  return reg.test(value);
}

/**
 * 判断是否为空
 */
function empty(value) {
  switch ((0, _typeof2.default)(value)) {
    case 'undefined':
      return true;
    case 'string':
      if (value.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, '').length == 0) return true;
      break;
    case 'boolean':
      if (!value) return true;
      break;
    case 'number':
      if (value === 0 || isNaN(value)) return true;
      break;
    case 'object':
      if (value === null || value.length === 0) return true;
      for (var i in value) {
        return false;
      }
      return true;
  }
  return false;
}

/**
 * 是否json字符串
 */
function jsonString(value) {
  if (typeof value === 'string') {
    try {
      var obj = JSON.parse(value);
      if ((0, _typeof2.default)(obj) === 'object' && obj) {
        return true;
      }
      return false;
    } catch (e) {
      return false;
    }
  }
  return false;
}

/**
 * 是否数组
 */
function array(value) {
  if (typeof Array.isArray === 'function') {
    return Array.isArray(value);
  }
  return Object.prototype.toString.call(value) === '[object Array]';
}

/**
 * 是否对象
 */
function object(value) {
  return Object.prototype.toString.call(value) === '[object Object]';
}

/**
 * 是否短信验证码
 */
function code(value) {
  var len = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 6;
  return new RegExp("^\\d{".concat(len, "}$")).test(value);
}

/**
 * 是否函数方法
 * @param {Object} value
 */
function func(value) {
  return typeof value === 'function';
}

/**
 * 是否promise对象
 * @param {Object} value
 */
function promise(value) {
  return object(value) && func(value.then) && func(value.catch);
}

/** 是否图片格式
 * @param {Object} value
 */
function image(value) {
  var newValue = value.split('?')[0];
  var IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i;
  return IMAGE_REGEXP.test(newValue);
}

/**
 * 是否视频格式
 * @param {Object} value
 */
function video(value) {
  var VIDEO_REGEXP = /\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i;
  return VIDEO_REGEXP.test(value);
}

/**
 * 是否为正则对象
 * @param {Object}
 * @return {Boolean}
 */
function regExp(o) {
  return o && Object.prototype.toString.call(o) === '[object RegExp]';
}
var _default = {
  email: email,
  mobile: mobile,
  url: url,
  date: date,
  dateISO: dateISO,
  number: number,
  digits: digits,
  idCard: idCard,
  carNo: carNo,
  amount: amount,
  chinese: chinese,
  letter: letter,
  enOrNum: enOrNum,
  contains: contains,
  range: range,
  rangeLength: rangeLength,
  empty: empty,
  isEmpty: empty,
  jsonString: jsonString,
  landline: landline,
  object: object,
  array: array,
  code: code,
  func: func,
  promise: promise,
  video: video,
  image: image,
  regExp: regExp,
  string: string
};
exports.default = _default;

/***/ }),

/***/ 68:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/function/debounce.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var timeout = null;

/**
 * 防抖原理：一定时间内，只有最后一次操作，再过wait毫秒后才执行函数
 *
 * @param {Function} func 要执行的回调函数
 * @param {Number} wait 延时的时间
 * @param {Boolean} immediate 是否立即执行
 * @return null
 */
function debounce(func) {
  var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
  var immediate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
  // 清除定时器
  if (timeout !== null) clearTimeout(timeout);
  // 立即执行，此类情况一般用不到
  if (immediate) {
    var callNow = !timeout;
    timeout = setTimeout(function () {
      timeout = null;
    }, wait);
    if (callNow) typeof func === 'function' && func();
  } else {
    // 设置定时器，当最后一次操作后，timeout不会再被清除，所以在延时wait毫秒后执行func回调方法
    timeout = setTimeout(function () {
      typeof func === 'function' && func();
    }, wait);
  }
}
var _default = debounce;
exports.default = _default;

/***/ }),

/***/ 69:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/function/throttle.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var timer;
var flag;
/**
 * 节流原理：在一定时间内，只能触发一次
 *
 * @param {Function} func 要执行的回调函数
 * @param {Number} wait 延时的时间
 * @param {Boolean} immediate 是否立即执行
 * @return null
 */
function throttle(func) {
  var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
  var immediate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
  if (immediate) {
    if (!flag) {
      flag = true;
      // 如果是立即执行，则在wait毫秒内开始时执行
      typeof func === 'function' && func();
      timer = setTimeout(function () {
        flag = false;
      }, wait);
    }
  } else if (!flag) {
    flag = true;
    // 如果是非立即执行，则在wait毫秒内的结束处执行
    timer = setTimeout(function () {
      flag = false;
      typeof func === 'function' && func();
    }, wait);
  }
}
var _default = throttle;
exports.default = _default;

/***/ }),

/***/ 7:
/*!*********************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***!
  \*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _iterableToArrayLimit(arr, i) {
  var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
  if (null != _i) {
    var _s,
      _e,
      _x,
      _r,
      _arr = [],
      _n = !0,
      _d = !1;
    try {
      if (_x = (_i = _i.call(arr)).next, 0 === i) {
        if (Object(_i) !== _i) return;
        _n = !1;
      } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) {
        ;
      }
    } catch (err) {
      _d = !0, _e = err;
    } finally {
      try {
        if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return;
      } finally {
        if (_d) throw _e;
      }
    }
    return _arr;
  }
}
module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 70:
/*!***********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/function/index.js ***!
  \***********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ 5));
var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
var _test = _interopRequireDefault(__webpack_require__(/*! ./test.js */ 67));
var _digit = __webpack_require__(/*! ./digit.js */ 71);
/**
 * @description 如果value小于min，取min；如果value大于max，取max
 * @param {number} min
 * @param {number} max
 * @param {number} value
 */
function range() {
  var min = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
  var max = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
  return Math.max(min, Math.min(max, Number(value)));
}

/**
 * @description 用于获取用户传递值的px值  如果用户传递了"xxpx"或者"xxrpx"，取出其数值部分，如果是"xxxrpx"还需要用过uni.upx2px进行转换
 * @param {number|string} value 用户传递值的px值
 * @param {boolean} unit
 * @returns {number|string}
 */
function getPx(value) {
  var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  if (_test.default.number(value)) {
    return unit ? "".concat(value, "px") : Number(value);
  }
  // 如果带有rpx，先取出其数值部分，再转为px值
  if (/(rpx|upx)$/.test(value)) {
    return unit ? "".concat(uni.upx2px(parseInt(value)), "px") : Number(uni.upx2px(parseInt(value)));
  }
  return unit ? "".concat(parseInt(value), "px") : parseInt(value);
}

/**
 * @description 进行延时，以达到可以简写代码的目的 比如: await uni.$u.sleep(20)将会阻塞20ms
 * @param {number} value 堵塞时间 单位ms 毫秒
 * @returns {Promise} 返回promise
 */
function sleep() {
  var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 30;
  return new Promise(function (resolve) {
    setTimeout(function () {
      resolve();
    }, value);
  });
}
/**
 * @description 运行期判断平台
 * @returns {string} 返回所在平台(小写)
 * @link 运行期判断平台 https://uniapp.dcloud.io/frame?id=判断平台
 */
function os() {
  return uni.getSystemInfoSync().platform.toLowerCase();
}
/**
 * @description 获取系统信息同步接口
 * @link 获取系统信息同步接口 https://uniapp.dcloud.io/api/system/info?id=getsysteminfosync
 */
function sys() {
  return uni.getSystemInfoSync();
}

/**
 * @description 取一个区间数
 * @param {Number} min 最小值
 * @param {Number} max 最大值
 */
function random(min, max) {
  if (min >= 0 && max > 0 && max >= min) {
    var gab = max - min + 1;
    return Math.floor(Math.random() * gab + min);
  }
  return 0;
}

/**
 * @param {Number} len uuid的长度
 * @param {Boolean} firstU 将返回的首字母置为"u"
 * @param {Nubmer} radix 生成uuid的基数(意味着返回的字符串都是这个基数),2-二进制,8-八进制,10-十进制,16-十六进制
 */
function guid() {
  var len = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 32;
  var firstU = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  var radix = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
  var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
  var uuid = [];
  radix = radix || chars.length;
  if (len) {
    // 如果指定uuid长度,只是取随机的字符,0|x为位运算,能去掉x的小数位,返回整数位
    for (var i = 0; i < len; i++) {
      uuid[i] = chars[0 | Math.random() * radix];
    }
  } else {
    var r;
    // rfc4122标准要求返回的uuid中,某些位为固定的字符
    uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-';
    uuid[14] = '4';
    for (var _i = 0; _i < 36; _i++) {
      if (!uuid[_i]) {
        r = 0 | Math.random() * 16;
        uuid[_i] = chars[_i == 19 ? r & 0x3 | 0x8 : r];
      }
    }
  }
  // 移除第一个字符,并用u替代,因为第一个字符为数值时,该guuid不能用作id或者class
  if (firstU) {
    uuid.shift();
    return "u".concat(uuid.join(''));
  }
  return uuid.join('');
}

/**
* @description 获取父组件的参数，因为支付宝小程序不支持provide/inject的写法
   this.$parent在非H5中，可以准确获取到父组件，但是在H5中，需要多次this.$parent.$parent.xxx
   这里默认值等于undefined有它的含义，因为最顶层元素(组件)的$parent就是undefined，意味着不传name
   值(默认为undefined)，就是查找最顶层的$parent
*  @param {string|undefined} name 父组件的参数名
*/
function $parent() {
  var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : undefined;
  var parent = this.$parent;
  // 通过while历遍，这里主要是为了H5需要多层解析的问题
  while (parent) {
    // 父组件
    if (parent.$options && parent.$options.name !== name) {
      // 如果组件的name不相等，继续上一级寻找
      parent = parent.$parent;
    } else {
      return parent;
    }
  }
  return false;
}

/**
 * @description 样式转换
 * 对象转字符串，或者字符串转对象
 * @param {object | string} customStyle 需要转换的目标
 * @param {String} target 转换的目的，object-转为对象，string-转为字符串
 * @returns {object|string}
 */
function addStyle(customStyle) {
  var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'object';
  // 字符串转字符串，对象转对象情形，直接返回
  if (_test.default.empty(customStyle) || (0, _typeof2.default)(customStyle) === 'object' && target === 'object' || target === 'string' && typeof customStyle === 'string') {
    return customStyle;
  }
  // 字符串转对象
  if (target === 'object') {
    // 去除字符串样式中的两端空格(中间的空格不能去掉，比如padding: 20px 0如果去掉了就错了)，空格是无用的
    customStyle = trim(customStyle);
    // 根据";"将字符串转为数组形式
    var styleArray = customStyle.split(';');
    var style = {};
    // 历遍数组，拼接成对象
    for (var i = 0; i < styleArray.length; i++) {
      // 'font-size:20px;color:red;'，如此最后字符串有";"的话，会导致styleArray最后一个元素为空字符串，这里需要过滤
      if (styleArray[i]) {
        var item = styleArray[i].split(':');
        style[trim(item[0])] = trim(item[1]);
      }
    }
    return style;
  }
  // 这里为对象转字符串形式
  var string = '';
  for (var _i2 in customStyle) {
    // 驼峰转为中划线的形式，否则css内联样式，无法识别驼峰样式属性名
    var key = _i2.replace(/([A-Z])/g, '-$1').toLowerCase();
    string += "".concat(key, ":").concat(customStyle[_i2], ";");
  }
  // 去除两端空格
  return trim(string);
}

/**
 * @description 添加单位，如果有rpx，upx，%，px等单位结尾或者值为auto，直接返回，否则加上px单位结尾
 * @param {string|number} value 需要添加单位的值
 * @param {string} unit 添加的单位名 比如px
 */
function addUnit() {
  var _uni$$u$config$unit, _uni, _uni$$u, _uni$$u$config;
  var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'auto';
  var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : (_uni$$u$config$unit = (_uni = uni) === null || _uni === void 0 ? void 0 : (_uni$$u = _uni.$u) === null || _uni$$u === void 0 ? void 0 : (_uni$$u$config = _uni$$u.config) === null || _uni$$u$config === void 0 ? void 0 : _uni$$u$config.unit) !== null && _uni$$u$config$unit !== void 0 ? _uni$$u$config$unit : 'px';
  value = String(value);
  // 用uView内置验证规则中的number判断是否为数值
  return _test.default.number(value) ? "".concat(value).concat(unit) : value;
}

/**
 * @description 深度克隆
 * @param {object} obj 需要深度克隆的对象
 * @param cache 缓存
 * @returns {*} 克隆后的对象或者原值（不是对象）
 */
function deepClone(obj) {
  var cache = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new WeakMap();
  if (obj === null || (0, _typeof2.default)(obj) !== 'object') return obj;
  if (cache.has(obj)) return cache.get(obj);
  var clone;
  if (obj instanceof Date) {
    clone = new Date(obj.getTime());
  } else if (obj instanceof RegExp) {
    clone = new RegExp(obj);
  } else if (obj instanceof Map) {
    clone = new Map(Array.from(obj, function (_ref) {
      var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
        key = _ref2[0],
        value = _ref2[1];
      return [key, deepClone(value, cache)];
    }));
  } else if (obj instanceof Set) {
    clone = new Set(Array.from(obj, function (value) {
      return deepClone(value, cache);
    }));
  } else if (Array.isArray(obj)) {
    clone = obj.map(function (value) {
      return deepClone(value, cache);
    });
  } else if (Object.prototype.toString.call(obj) === '[object Object]') {
    clone = Object.create(Object.getPrototypeOf(obj));
    cache.set(obj, clone);
    for (var _i3 = 0, _Object$entries = Object.entries(obj); _i3 < _Object$entries.length; _i3++) {
      var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i3], 2),
        key = _Object$entries$_i[0],
        value = _Object$entries$_i[1];
      clone[key] = deepClone(value, cache);
    }
  } else {
    clone = Object.assign({}, obj);
  }
  cache.set(obj, clone);
  return clone;
}

/**
 * @description JS对象深度合并
 * @param {object} target 需要拷贝的对象
 * @param {object} source 拷贝的来源对象
 * @returns {object|boolean} 深度合并后的对象或者false（入参有不是对象）
 */
function deepMerge() {
  var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  var source = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  target = deepClone(target);
  if ((0, _typeof2.default)(target) !== 'object' || target === null || (0, _typeof2.default)(source) !== 'object' || source === null) return target;
  var merged = Array.isArray(target) ? target.slice() : Object.assign({}, target);
  for (var prop in source) {
    if (!source.hasOwnProperty(prop)) continue;
    var sourceValue = source[prop];
    var targetValue = merged[prop];
    if (sourceValue instanceof Date) {
      merged[prop] = new Date(sourceValue);
    } else if (sourceValue instanceof RegExp) {
      merged[prop] = new RegExp(sourceValue);
    } else if (sourceValue instanceof Map) {
      merged[prop] = new Map(sourceValue);
    } else if (sourceValue instanceof Set) {
      merged[prop] = new Set(sourceValue);
    } else if ((0, _typeof2.default)(sourceValue) === 'object' && sourceValue !== null) {
      merged[prop] = deepMerge(targetValue, sourceValue);
    } else {
      merged[prop] = sourceValue;
    }
  }
  return merged;
}

/**
 * @description error提示
 * @param {*} err 错误内容
 */
function error(err) {
  // 开发环境才提示，生产环境不会提示
  if (true) {
    console.error("uView\u63D0\u793A\uFF1A".concat(err));
  }
}

/**
 * @description 打乱数组
 * @param {array} array 需要打乱的数组
 * @returns {array} 打乱后的数组
 */
function randomArray() {
  var array = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
  // 原理是sort排序,Math.random()产生0<= x < 1之间的数,会导致x-0.05大于或者小于0
  return array.sort(function () {
    return Math.random() - 0.5;
  });
}

// padStart 的 polyfill，因为某些机型或情况，还无法支持es7的padStart，比如电脑版的微信小程序
// 所以这里做一个兼容polyfill的兼容处理
if (!String.prototype.padStart) {
  // 为了方便表示这里 fillString 用了ES6 的默认参数，不影响理解
  String.prototype.padStart = function (maxLength) {
    var fillString = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ' ';
    if (Object.prototype.toString.call(fillString) !== '[object String]') {
      throw new TypeError('fillString must be String');
    }
    var str = this;
    // 返回 String(str) 这里是为了使返回的值是字符串字面量，在控制台中更符合直觉
    if (str.length >= maxLength) return String(str);
    var fillLength = maxLength - str.length;
    var times = Math.ceil(fillLength / fillString.length);
    while (times >>= 1) {
      fillString += fillString;
      if (times === 1) {
        fillString += fillString;
      }
    }
    return fillString.slice(0, fillLength) + str;
  };
}

/**
 * @description 格式化时间
 * @param {String|Number} dateTime 需要格式化的时间戳
 * @param {String} fmt 格式化规则 yyyy:mm:dd|yyyy:mm|yyyy年mm月dd日|yyyy年mm月dd日 hh时MM分等,可自定义组合 默认yyyy-mm-dd
 * @returns {string} 返回格式化后的字符串
 */
function timeFormat() {
  var dateTime = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
  var formatStr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'yyyy-mm-dd';
  var date;
  // 若传入时间为假值，则取当前时间
  if (!dateTime) {
    date = new Date();
  }
  // 若为unix秒时间戳，则转为毫秒时间戳（逻辑有点奇怪，但不敢改，以保证历史兼容）
  else if (/^\d{10}$/.test(dateTime === null || dateTime === void 0 ? void 0 : dateTime.toString().trim())) {
    date = new Date(dateTime * 1000);
  }
  // 若用户传入字符串格式时间戳，new Date无法解析，需做兼容
  else if (typeof dateTime === 'string' && /^\d+$/.test(dateTime.trim())) {
    date = new Date(Number(dateTime));
  }
  // 处理平台性差异，在Safari/Webkit中，new Date仅支持/作为分割符的字符串时间
  // 处理 '2022-07-10 01:02:03'，跳过 '2022-07-10T01:02:03'
  else if (typeof dateTime === 'string' && dateTime.includes('-') && !dateTime.includes('T')) {
    date = new Date(dateTime.replace(/-/g, '/'));
  }
  // 其他都认为符合 RFC 2822 规范
  else {
    date = new Date(dateTime);
  }
  var timeSource = {
    'y': date.getFullYear().toString(),
    // 年
    'm': (date.getMonth() + 1).toString().padStart(2, '0'),
    // 月
    'd': date.getDate().toString().padStart(2, '0'),
    // 日
    'h': date.getHours().toString().padStart(2, '0'),
    // 时
    'M': date.getMinutes().toString().padStart(2, '0'),
    // 分
    's': date.getSeconds().toString().padStart(2, '0') // 秒
    // 有其他格式化字符需求可以继续添加，必须转化成字符串
  };

  for (var key in timeSource) {
    var _ref3 = new RegExp("".concat(key, "+")).exec(formatStr) || [],
      _ref4 = (0, _slicedToArray2.default)(_ref3, 1),
      ret = _ref4[0];
    if (ret) {
      // 年可能只需展示两位
      var beginIndex = key === 'y' && ret.length === 2 ? 2 : 0;
      formatStr = formatStr.replace(ret, timeSource[key].slice(beginIndex));
    }
  }
  return formatStr;
}

/**
 * @description 时间戳转为多久之前
 * @param {String|Number} timestamp 时间戳
 * @param {String|Boolean} format
 * 格式化规则如果为时间格式字符串，超出一定时间范围，返回固定的时间格式；
 * 如果为布尔值false，无论什么时间，都返回多久以前的格式
 * @returns {string} 转化后的内容
 */
function timeFrom() {
  var timestamp = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
  var format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'yyyy-mm-dd';
  if (timestamp == null) timestamp = Number(new Date());
  timestamp = parseInt(timestamp);
  // 判断用户输入的时间戳是秒还是毫秒,一般前端js获取的时间戳是毫秒(13位),后端传过来的为秒(10位)
  if (timestamp.toString().length == 10) timestamp *= 1000;
  var timer = new Date().getTime() - timestamp;
  timer = parseInt(timer / 1000);
  // 如果小于5分钟,则返回"刚刚",其他以此类推
  var tips = '';
  switch (true) {
    case timer < 300:
      tips = '刚刚';
      break;
    case timer >= 300 && timer < 3600:
      tips = "".concat(parseInt(timer / 60), "\u5206\u949F\u524D");
      break;
    case timer >= 3600 && timer < 86400:
      tips = "".concat(parseInt(timer / 3600), "\u5C0F\u65F6\u524D");
      break;
    case timer >= 86400 && timer < 2592000:
      tips = "".concat(parseInt(timer / 86400), "\u5929\u524D");
      break;
    default:
      // 如果format为false，则无论什么时间戳，都显示xx之前
      if (format === false) {
        if (timer >= 2592000 && timer < 365 * 86400) {
          tips = "".concat(parseInt(timer / (86400 * 30)), "\u4E2A\u6708\u524D");
        } else {
          tips = "".concat(parseInt(timer / (86400 * 365)), "\u5E74\u524D");
        }
      } else {
        tips = timeFormat(timestamp, format);
      }
  }
  return tips;
}

/**
 * @description 去除空格
 * @param String str 需要去除空格的字符串
 * @param String pos both(左右)|left|right|all 默认both
 */
function trim(str) {
  var pos = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'both';
  str = String(str);
  if (pos == 'both') {
    return str.replace(/^\s+|\s+$/g, '');
  }
  if (pos == 'left') {
    return str.replace(/^\s*/, '');
  }
  if (pos == 'right') {
    return str.replace(/(\s*$)/g, '');
  }
  if (pos == 'all') {
    return str.replace(/\s+/g, '');
  }
  return str;
}

/**
 * @description 对象转url参数
 * @param {object} data,对象
 * @param {Boolean} isPrefix,是否自动加上"?"
 * @param {string} arrayFormat 规则 indices|brackets|repeat|comma
 */
function queryParams() {
  var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  var isPrefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  var arrayFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'brackets';
  var prefix = isPrefix ? '?' : '';
  var _result = [];
  if (['indices', 'brackets', 'repeat', 'comma'].indexOf(arrayFormat) == -1) arrayFormat = 'brackets';
  var _loop = function _loop(key) {
    var value = data[key];
    // 去掉为空的参数
    if (['', undefined, null].indexOf(value) >= 0) {
      return "continue";
    }
    // 如果值为数组，另行处理
    if (value.constructor === Array) {
      // e.g. {ids: [1, 2, 3]}
      switch (arrayFormat) {
        case 'indices':
          // 结果: ids[0]=1&ids[1]=2&ids[2]=3
          for (var i = 0; i < value.length; i++) {
            _result.push("".concat(key, "[").concat(i, "]=").concat(value[i]));
          }
          break;
        case 'brackets':
          // 结果: ids[]=1&ids[]=2&ids[]=3
          value.forEach(function (_value) {
            _result.push("".concat(key, "[]=").concat(_value));
          });
          break;
        case 'repeat':
          // 结果: ids=1&ids=2&ids=3
          value.forEach(function (_value) {
            _result.push("".concat(key, "=").concat(_value));
          });
          break;
        case 'comma':
          // 结果: ids=1,2,3
          var commaStr = '';
          value.forEach(function (_value) {
            commaStr += (commaStr ? ',' : '') + _value;
          });
          _result.push("".concat(key, "=").concat(commaStr));
          break;
        default:
          value.forEach(function (_value) {
            _result.push("".concat(key, "[]=").concat(_value));
          });
      }
    } else {
      _result.push("".concat(key, "=").concat(value));
    }
  };
  for (var key in data) {
    var _ret = _loop(key);
    if (_ret === "continue") continue;
  }
  return _result.length ? prefix + _result.join('&') : '';
}

/**
 * 显示消息提示框
 * @param {String} title 提示的内容，长度与 icon 取值有关。
 * @param {Number} duration 提示的延迟时间，单位毫秒，默认：2000
 */
function toast(title) {
  var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2000;
  uni.showToast({
    title: String(title),
    icon: 'none',
    duration: duration
  });
}

/**
 * @description 根据主题type值,获取对应的图标
 * @param {String} type 主题名称,primary|info|error|warning|success
 * @param {boolean} fill 是否使用fill填充实体的图标
 */
function type2icon() {
  var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'success';
  var fill = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  // 如果非预置值,默认为success
  if (['primary', 'info', 'error', 'warning', 'success'].indexOf(type) == -1) type = 'success';
  var iconName = '';
  // 目前(2019-12-12),info和primary使用同一个图标
  switch (type) {
    case 'primary':
      iconName = 'info-circle';
      break;
    case 'info':
      iconName = 'info-circle';
      break;
    case 'error':
      iconName = 'close-circle';
      break;
    case 'warning':
      iconName = 'error-circle';
      break;
    case 'success':
      iconName = 'checkmark-circle';
      break;
    default:
      iconName = 'checkmark-circle';
  }
  // 是否是实体类型,加上-fill,在icon组件库中,实体的类名是后面加-fill的
  if (fill) iconName += '-fill';
  return iconName;
}

/**
 * @description 数字格式化
 * @param {number|string} number 要格式化的数字
 * @param {number} decimals 保留几位小数
 * @param {string} decimalPoint 小数点符号
 * @param {string} thousandsSeparator 千分位符号
 * @returns {string} 格式化后的数字
 */
function priceFormat(number) {
  var decimals = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
  var decimalPoint = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '.';
  var thousandsSeparator = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : ',';
  number = "".concat(number).replace(/[^0-9+-Ee.]/g, '');
  var n = !isFinite(+number) ? 0 : +number;
  var prec = !isFinite(+decimals) ? 0 : Math.abs(decimals);
  var sep = typeof thousandsSeparator === 'undefined' ? ',' : thousandsSeparator;
  var dec = typeof decimalPoint === 'undefined' ? '.' : decimalPoint;
  var s = '';
  s = (prec ? (0, _digit.round)(n, prec) + '' : "".concat(Math.round(n))).split('.');
  var re = /(-?\d+)(\d{3})/;
  while (re.test(s[0])) {
    s[0] = s[0].replace(re, "$1".concat(sep, "$2"));
  }
  if ((s[1] || '').length < prec) {
    s[1] = s[1] || '';
    s[1] += new Array(prec - s[1].length + 1).join('0');
  }
  return s.join(dec);
}

/**
 * @description 获取duration值
 * 如果带有ms或者s直接返回，如果大于一定值，认为是ms单位，小于一定值，认为是s单位
 * 比如以30位阈值，那么300大于30，可以理解为用户想要的是300ms，而不是想花300s去执行一个动画
 * @param {String|number} value 比如: "1s"|"100ms"|1|100
 * @param {boolean} unit  提示: 如果是false 默认返回number
 * @return {string|number}
 */
function getDuration(value) {
  var unit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  var valueNum = parseInt(value);
  if (unit) {
    if (/s$/.test(value)) return value;
    return value > 30 ? "".concat(value, "ms") : "".concat(value, "s");
  }
  if (/ms$/.test(value)) return valueNum;
  if (/s$/.test(value)) return valueNum > 30 ? valueNum : valueNum * 1000;
  return valueNum;
}

/**
 * @description 日期的月或日补零操作
 * @param {String} value 需要补零的值
 */
function padZero(value) {
  return "00".concat(value).slice(-2);
}

/**
 * @description 在u-form的子组件内容发生变化，或者失去焦点时，尝试通知u-form执行校验方法
 * @param {*} instance
 * @param {*} event
 */
function formValidate(instance, event) {
  var formItem = uni.$u.$parent.call(instance, 'u-form-item');
  var form = uni.$u.$parent.call(instance, 'u-form');
  // 如果发生变化的input或者textarea等，其父组件中有u-form-item或者u-form等，就执行form的validate方法
  // 同时将form-item的pros传递给form，让其进行精确对象验证
  if (formItem && form) {
    form.validateField(formItem.prop, function () {}, event);
  }
}

/**
 * @description 获取某个对象下的属性，用于通过类似'a.b.c'的形式去获取一个对象的的属性的形式
 * @param {object} obj 对象
 * @param {string} key 需要获取的属性字段
 * @returns {*}
 */
function getProperty(obj, key) {
  if (!obj) {
    return;
  }
  if (typeof key !== 'string' || key === '') {
    return '';
  }
  if (key.indexOf('.') !== -1) {
    var keys = key.split('.');
    var firstObj = obj[keys[0]] || {};
    for (var i = 1; i < keys.length; i++) {
      if (firstObj) {
        firstObj = firstObj[keys[i]];
      }
    }
    return firstObj;
  }
  return obj[key];
}

/**
 * @description 设置对象的属性值，如果'a.b.c'的形式进行设置
 * @param {object} obj 对象
 * @param {string} key 需要设置的属性
 * @param {string} value 设置的值
 */
function setProperty(obj, key, value) {
  if (!obj) {
    return;
  }
  // 递归赋值
  var inFn = function inFn(_obj, keys, v) {
    // 最后一个属性key
    if (keys.length === 1) {
      _obj[keys[0]] = v;
      return;
    }
    // 0~length-1个key
    while (keys.length > 1) {
      var k = keys[0];
      if (!_obj[k] || (0, _typeof2.default)(_obj[k]) !== 'object') {
        _obj[k] = {};
      }
      var _key = keys.shift();
      // 自调用判断是否存在属性，不存在则自动创建对象
      inFn(_obj[k], keys, v);
    }
  };
  if (typeof key !== 'string' || key === '') {} else if (key.indexOf('.') !== -1) {
    // 支持多层级赋值操作
    var keys = key.split('.');
    inFn(obj, keys, value);
  } else {
    obj[key] = value;
  }
}

/**
 * @description 获取当前页面路径
 */
function page() {
  var _pages$route, _pages;
  var pages = getCurrentPages();
  // 某些特殊情况下(比如页面进行redirectTo时的一些时机)，pages可能为空数组
  return "/".concat((_pages$route = (_pages = pages[pages.length - 1]) === null || _pages === void 0 ? void 0 : _pages.route) !== null && _pages$route !== void 0 ? _pages$route : '');
}

/**
 * @description 获取当前路由栈实例数组
 */
function pages() {
  var pages = getCurrentPages();
  return pages;
}

/**
 * 获取页面历史栈指定层实例
 * @param back {number} [0] - 0或者负数，表示获取历史栈的哪一层，0表示获取当前页面实例，-1 表示获取上一个页面实例。默认0。
 */
function getHistoryPage() {
  var back = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
  var pages = getCurrentPages();
  var len = pages.length;
  return pages[len - 1 + back];
}

/**
 * @description 修改uView内置属性值
 * @param {object} props 修改内置props属性
 * @param {object} config 修改内置config属性
 * @param {object} color 修改内置color属性
 * @param {object} zIndex 修改内置zIndex属性
 */
function setConfig(_ref5) {
  var _ref5$props = _ref5.props,
    props = _ref5$props === void 0 ? {} : _ref5$props,
    _ref5$config = _ref5.config,
    config = _ref5$config === void 0 ? {} : _ref5$config,
    _ref5$color = _ref5.color,
    color = _ref5$color === void 0 ? {} : _ref5$color,
    _ref5$zIndex = _ref5.zIndex,
    zIndex = _ref5$zIndex === void 0 ? {} : _ref5$zIndex;
  var deepMerge = uni.$u.deepMerge;
  uni.$u.config = deepMerge(uni.$u.config, config);
  uni.$u.props = deepMerge(uni.$u.props, props);
  uni.$u.color = deepMerge(uni.$u.color, color);
  uni.$u.zIndex = deepMerge(uni.$u.zIndex, zIndex);
}
var _default = {
  range: range,
  getPx: getPx,
  sleep: sleep,
  os: os,
  sys: sys,
  random: random,
  guid: guid,
  $parent: $parent,
  addStyle: addStyle,
  addUnit: addUnit,
  deepClone: deepClone,
  deepMerge: deepMerge,
  error: error,
  randomArray: randomArray,
  timeFormat: timeFormat,
  timeFrom: timeFrom,
  trim: trim,
  queryParams: queryParams,
  toast: toast,
  type2icon: type2icon,
  priceFormat: priceFormat,
  getDuration: getDuration,
  padZero: padZero,
  formValidate: formValidate,
  getProperty: getProperty,
  setProperty: setProperty,
  page: page,
  pages: pages,
  getHistoryPage: getHistoryPage,
  setConfig: setConfig
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 71:
/*!***********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/function/digit.js ***!
  \***********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
exports.divide = divide;
exports.enableBoundaryChecking = enableBoundaryChecking;
exports.minus = minus;
exports.plus = plus;
exports.round = round;
exports.times = times;
var _toArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toArray */ 72));
var _boundaryCheckingState = true; // 是否进行越界检查的全局开关

/**
 * 把错误的数据转正
 * @private
 * @example strip(0.09999999999999998)=0.1
 */
function strip(num) {
  var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 15;
  return +parseFloat(Number(num).toPrecision(precision));
}

/**
 * Return digits length of a number
 * @private
 * @param {*number} num Input number
 */
function digitLength(num) {
  // Get digit length of e
  var eSplit = num.toString().split(/[eE]/);
  var len = (eSplit[0].split('.')[1] || '').length - +(eSplit[1] || 0);
  return len > 0 ? len : 0;
}

/**
 * 把小数转成整数,如果是小数则放大成整数
 * @private
 * @param {*number} num 输入数
 */
function float2Fixed(num) {
  if (num.toString().indexOf('e') === -1) {
    return Number(num.toString().replace('.', ''));
  }
  var dLen = digitLength(num);
  return dLen > 0 ? strip(Number(num) * Math.pow(10, dLen)) : Number(num);
}

/**
 * 检测数字是否越界，如果越界给出提示
 * @private
 * @param {*number} num 输入数
 */
function checkBoundary(num) {
  if (_boundaryCheckingState) {
    if (num > Number.MAX_SAFE_INTEGER || num < Number.MIN_SAFE_INTEGER) {
      console.warn("".concat(num, " \u8D85\u51FA\u4E86\u7CBE\u5EA6\u9650\u5236\uFF0C\u7ED3\u679C\u53EF\u80FD\u4E0D\u6B63\u786E"));
    }
  }
}

/**
 * 把递归操作扁平迭代化
 * @param {number[]} arr 要操作的数字数组
 * @param {function} operation 迭代操作
 * @private
 */
function iteratorOperation(arr, operation) {
  var _arr = (0, _toArray2.default)(arr),
    num1 = _arr[0],
    num2 = _arr[1],
    others = _arr.slice(2);
  var res = operation(num1, num2);
  others.forEach(function (num) {
    res = operation(res, num);
  });
  return res;
}

/**
 * 高精度乘法
 * @export
 */
function times() {
  for (var _len = arguments.length, nums = new Array(_len), _key = 0; _key < _len; _key++) {
    nums[_key] = arguments[_key];
  }
  if (nums.length > 2) {
    return iteratorOperation(nums, times);
  }
  var num1 = nums[0],
    num2 = nums[1];
  var num1Changed = float2Fixed(num1);
  var num2Changed = float2Fixed(num2);
  var baseNum = digitLength(num1) + digitLength(num2);
  var leftValue = num1Changed * num2Changed;
  checkBoundary(leftValue);
  return leftValue / Math.pow(10, baseNum);
}

/**
 * 高精度加法
 * @export
 */
function plus() {
  for (var _len2 = arguments.length, nums = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
    nums[_key2] = arguments[_key2];
  }
  if (nums.length > 2) {
    return iteratorOperation(nums, plus);
  }
  var num1 = nums[0],
    num2 = nums[1];
  // 取最大的小数位
  var baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2)));
  // 把小数都转为整数然后再计算
  return (times(num1, baseNum) + times(num2, baseNum)) / baseNum;
}

/**
 * 高精度减法
 * @export
 */
function minus() {
  for (var _len3 = arguments.length, nums = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
    nums[_key3] = arguments[_key3];
  }
  if (nums.length > 2) {
    return iteratorOperation(nums, minus);
  }
  var num1 = nums[0],
    num2 = nums[1];
  var baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2)));
  return (times(num1, baseNum) - times(num2, baseNum)) / baseNum;
}

/**
 * 高精度除法
 * @export
 */
function divide() {
  for (var _len4 = arguments.length, nums = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
    nums[_key4] = arguments[_key4];
  }
  if (nums.length > 2) {
    return iteratorOperation(nums, divide);
  }
  var num1 = nums[0],
    num2 = nums[1];
  var num1Changed = float2Fixed(num1);
  var num2Changed = float2Fixed(num2);
  checkBoundary(num1Changed);
  checkBoundary(num2Changed);
  // 重要，这里必须用strip进行修正
  return times(num1Changed / num2Changed, strip(Math.pow(10, digitLength(num2) - digitLength(num1))));
}

/**
 * 四舍五入
 * @export
 */
function round(num, ratio) {
  var base = Math.pow(10, ratio);
  var result = divide(Math.round(Math.abs(times(num, base))), base);
  if (num < 0 && result !== 0) {
    result = times(result, -1);
  }
  // 位数不足则补0
  return result;
}

/**
 * 是否进行边界检查，默认开启
 * @param flag 标记开关，true 为开启，false 为关闭，默认为 true
 * @export
 */
function enableBoundaryChecking() {
  var flag = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
  _boundaryCheckingState = flag;
}
var _default = {
  times: times,
  plus: plus,
  minus: minus,
  divide: divide,
  round: round,
  enableBoundaryChecking: enableBoundaryChecking
};
exports.default = _default;

/***/ }),

/***/ 72:
/*!********************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/toArray.js ***!
  \********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ 6);
var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ 20);
var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ 8);
var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ 10);
function _toArray(arr) {
  return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();
}
module.exports = _toArray, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 73:
/*!**********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/config.js ***!
  \**********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
// 此版本发布于2023-03-27
var version = '2.0.36';

// 开发环境才提示，生产环境不会提示
if (true) {
  console.log("\n %c uView V".concat(version, " %c https://uviewui.com/ \n\n"), 'color: #ffffff; background: #3c9cff; padding:5px 0; border-radius: 5px;');
}
var _default = {
  v: version,
  version: version,
  // 主题名称
  type: ['primary', 'success', 'info', 'error', 'warning'],
  // 颜色部分，本来可以通过scss的:export导出供js使用，但是奈何nvue不支持
  color: {
    'u-primary': '#2979ff',
    'u-warning': '#ff9900',
    'u-success': '#19be6b',
    'u-error': '#fa3534',
    'u-info': '#909399',
    'u-main-color': '#303133',
    'u-content-color': '#606266',
    'u-tips-color': '#909399',
    'u-light-color': '#c0c4cc'
  },
  // 默认单位，可以通过配置为rpx，那么在用于传入组件大小参数为数值时，就默认为rpx
  unit: 'px'
};
exports.default = _default;

/***/ }),

/***/ 74:
/*!*********************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props.js ***!
  \*********************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
var _config = _interopRequireDefault(__webpack_require__(/*! ./config */ 73));
var _actionSheet = _interopRequireDefault(__webpack_require__(/*! ./props/actionSheet.js */ 75));
var _album = _interopRequireDefault(__webpack_require__(/*! ./props/album.js */ 76));
var _alert = _interopRequireDefault(__webpack_require__(/*! ./props/alert.js */ 77));
var _avatar = _interopRequireDefault(__webpack_require__(/*! ./props/avatar */ 78));
var _avatarGroup = _interopRequireDefault(__webpack_require__(/*! ./props/avatarGroup */ 79));
var _backtop = _interopRequireDefault(__webpack_require__(/*! ./props/backtop */ 80));
var _badge = _interopRequireDefault(__webpack_require__(/*! ./props/badge */ 81));
var _button = _interopRequireDefault(__webpack_require__(/*! ./props/button */ 82));
var _calendar = _interopRequireDefault(__webpack_require__(/*! ./props/calendar */ 83));
var _carKeyboard = _interopRequireDefault(__webpack_require__(/*! ./props/carKeyboard */ 84));
var _cell = _interopRequireDefault(__webpack_require__(/*! ./props/cell */ 85));
var _cellGroup = _interopRequireDefault(__webpack_require__(/*! ./props/cellGroup */ 86));
var _checkbox = _interopRequireDefault(__webpack_require__(/*! ./props/checkbox */ 87));
var _checkboxGroup = _interopRequireDefault(__webpack_require__(/*! ./props/checkboxGroup */ 88));
var _circleProgress = _interopRequireDefault(__webpack_require__(/*! ./props/circleProgress */ 89));
var _code = _interopRequireDefault(__webpack_require__(/*! ./props/code */ 90));
var _codeInput = _interopRequireDefault(__webpack_require__(/*! ./props/codeInput */ 91));
var _col = _interopRequireDefault(__webpack_require__(/*! ./props/col */ 92));
var _collapse = _interopRequireDefault(__webpack_require__(/*! ./props/collapse */ 93));
var _collapseItem = _interopRequireDefault(__webpack_require__(/*! ./props/collapseItem */ 94));
var _columnNotice = _interopRequireDefault(__webpack_require__(/*! ./props/columnNotice */ 95));
var _countDown = _interopRequireDefault(__webpack_require__(/*! ./props/countDown */ 96));
var _countTo = _interopRequireDefault(__webpack_require__(/*! ./props/countTo */ 97));
var _datetimePicker = _interopRequireDefault(__webpack_require__(/*! ./props/datetimePicker */ 98));
var _divider = _interopRequireDefault(__webpack_require__(/*! ./props/divider */ 99));
var _empty = _interopRequireDefault(__webpack_require__(/*! ./props/empty */ 100));
var _form = _interopRequireDefault(__webpack_require__(/*! ./props/form */ 101));
var _formItem = _interopRequireDefault(__webpack_require__(/*! ./props/formItem */ 102));
var _gap = _interopRequireDefault(__webpack_require__(/*! ./props/gap */ 103));
var _grid = _interopRequireDefault(__webpack_require__(/*! ./props/grid */ 104));
var _gridItem = _interopRequireDefault(__webpack_require__(/*! ./props/gridItem */ 105));
var _icon = _interopRequireDefault(__webpack_require__(/*! ./props/icon */ 106));
var _image = _interopRequireDefault(__webpack_require__(/*! ./props/image */ 107));
var _indexAnchor = _interopRequireDefault(__webpack_require__(/*! ./props/indexAnchor */ 108));
var _indexList = _interopRequireDefault(__webpack_require__(/*! ./props/indexList */ 109));
var _input = _interopRequireDefault(__webpack_require__(/*! ./props/input */ 110));
var _keyboard = _interopRequireDefault(__webpack_require__(/*! ./props/keyboard */ 111));
var _line = _interopRequireDefault(__webpack_require__(/*! ./props/line */ 112));
var _lineProgress = _interopRequireDefault(__webpack_require__(/*! ./props/lineProgress */ 113));
var _link = _interopRequireDefault(__webpack_require__(/*! ./props/link */ 114));
var _list = _interopRequireDefault(__webpack_require__(/*! ./props/list */ 115));
var _listItem = _interopRequireDefault(__webpack_require__(/*! ./props/listItem */ 116));
var _loadingIcon = _interopRequireDefault(__webpack_require__(/*! ./props/loadingIcon */ 117));
var _loadingPage = _interopRequireDefault(__webpack_require__(/*! ./props/loadingPage */ 118));
var _loadmore = _interopRequireDefault(__webpack_require__(/*! ./props/loadmore */ 119));
var _modal = _interopRequireDefault(__webpack_require__(/*! ./props/modal */ 120));
var _navbar = _interopRequireDefault(__webpack_require__(/*! ./props/navbar */ 121));
var _noNetwork = _interopRequireDefault(__webpack_require__(/*! ./props/noNetwork */ 123));
var _noticeBar = _interopRequireDefault(__webpack_require__(/*! ./props/noticeBar */ 124));
var _notify = _interopRequireDefault(__webpack_require__(/*! ./props/notify */ 125));
var _numberBox = _interopRequireDefault(__webpack_require__(/*! ./props/numberBox */ 126));
var _numberKeyboard = _interopRequireDefault(__webpack_require__(/*! ./props/numberKeyboard */ 127));
var _overlay = _interopRequireDefault(__webpack_require__(/*! ./props/overlay */ 128));
var _parse = _interopRequireDefault(__webpack_require__(/*! ./props/parse */ 129));
var _picker = _interopRequireDefault(__webpack_require__(/*! ./props/picker */ 130));
var _popup = _interopRequireDefault(__webpack_require__(/*! ./props/popup */ 131));
var _radio = _interopRequireDefault(__webpack_require__(/*! ./props/radio */ 132));
var _radioGroup = _interopRequireDefault(__webpack_require__(/*! ./props/radioGroup */ 133));
var _rate = _interopRequireDefault(__webpack_require__(/*! ./props/rate */ 134));
var _readMore = _interopRequireDefault(__webpack_require__(/*! ./props/readMore */ 135));
var _row = _interopRequireDefault(__webpack_require__(/*! ./props/row */ 136));
var _rowNotice = _interopRequireDefault(__webpack_require__(/*! ./props/rowNotice */ 137));
var _scrollList = _interopRequireDefault(__webpack_require__(/*! ./props/scrollList */ 138));
var _search = _interopRequireDefault(__webpack_require__(/*! ./props/search */ 139));
var _section = _interopRequireDefault(__webpack_require__(/*! ./props/section */ 140));
var _skeleton = _interopRequireDefault(__webpack_require__(/*! ./props/skeleton */ 141));
var _slider = _interopRequireDefault(__webpack_require__(/*! ./props/slider */ 142));
var _statusBar = _interopRequireDefault(__webpack_require__(/*! ./props/statusBar */ 143));
var _steps = _interopRequireDefault(__webpack_require__(/*! ./props/steps */ 144));
var _stepsItem = _interopRequireDefault(__webpack_require__(/*! ./props/stepsItem */ 145));
var _sticky = _interopRequireDefault(__webpack_require__(/*! ./props/sticky */ 146));
var _subsection = _interopRequireDefault(__webpack_require__(/*! ./props/subsection */ 147));
var _swipeAction = _interopRequireDefault(__webpack_require__(/*! ./props/swipeAction */ 148));
var _swipeActionItem = _interopRequireDefault(__webpack_require__(/*! ./props/swipeActionItem */ 149));
var _swiper = _interopRequireDefault(__webpack_require__(/*! ./props/swiper */ 150));
var _swipterIndicator = _interopRequireDefault(__webpack_require__(/*! ./props/swipterIndicator */ 151));
var _switch2 = _interopRequireDefault(__webpack_require__(/*! ./props/switch */ 152));
var _tabbar = _interopRequireDefault(__webpack_require__(/*! ./props/tabbar */ 153));
var _tabbarItem = _interopRequireDefault(__webpack_require__(/*! ./props/tabbarItem */ 154));
var _tabs = _interopRequireDefault(__webpack_require__(/*! ./props/tabs */ 155));
var _tag = _interopRequireDefault(__webpack_require__(/*! ./props/tag */ 156));
var _text = _interopRequireDefault(__webpack_require__(/*! ./props/text */ 157));
var _textarea = _interopRequireDefault(__webpack_require__(/*! ./props/textarea */ 158));
var _toast = _interopRequireDefault(__webpack_require__(/*! ./props/toast */ 159));
var _toolbar = _interopRequireDefault(__webpack_require__(/*! ./props/toolbar */ 160));
var _tooltip = _interopRequireDefault(__webpack_require__(/*! ./props/tooltip */ 161));
var _transition = _interopRequireDefault(__webpack_require__(/*! ./props/transition */ 162));
var _upload = _interopRequireDefault(__webpack_require__(/*! ./props/upload */ 163));
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
var color = _config.default.color;
var _default = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, _actionSheet.default), _album.default), _alert.default), _avatar.default), _avatarGroup.default), _backtop.default), _badge.default), _button.default), _calendar.default), _carKeyboard.default), _cell.default), _cellGroup.default), _checkbox.default), _checkboxGroup.default), _circleProgress.default), _code.default), _codeInput.default), _col.default), _collapse.default), _collapseItem.default), _columnNotice.default), _countDown.default), _countTo.default), _datetimePicker.default), _divider.default), _empty.default), _form.default), _formItem.default), _gap.default), _grid.default), _gridItem.default), _icon.default), _image.default), _indexAnchor.default), _indexList.default), _input.default), _keyboard.default), _line.default), _lineProgress.default), _link.default), _list.default), _listItem.default), _loadingIcon.default), _loadingPage.default), _loadmore.default), _modal.default), _navbar.default), _noNetwork.default), _noticeBar.default), _notify.default), _numberBox.default), _numberKeyboard.default), _overlay.default), _parse.default), _picker.default), _popup.default), _radio.default), _radioGroup.default), _rate.default), _readMore.default), _row.default), _rowNotice.default), _scrollList.default), _search.default), _section.default), _skeleton.default), _slider.default), _statusBar.default), _steps.default), _stepsItem.default), _sticky.default), _subsection.default), _swipeAction.default), _swipeActionItem.default), _swiper.default), _swipterIndicator.default), _switch2.default), _tabbar.default), _tabbarItem.default), _tabs.default), _tag.default), _text.default), _textarea.default), _toast.default), _toolbar.default), _tooltip.default), _transition.default), _upload.default);
exports.default = _default;

/***/ }),

/***/ 75:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/actionSheet.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:44:35
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/actionSheet.js
 */
var _default = {
  // action-sheet组件
  actionSheet: {
    show: false,
    title: '',
    description: '',
    actions: function actions() {
      return [];
    },
    index: '',
    cancelText: '',
    closeOnClickAction: true,
    safeAreaInsetBottom: true,
    openType: '',
    closeOnClickOverlay: true,
    round: 0
  }
};
exports.default = _default;

/***/ }),

/***/ 76:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/album.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:47:24
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/album.js
 */
var _default = {
  // album 组件
  album: {
    urls: function urls() {
      return [];
    },
    keyName: '',
    singleSize: 180,
    multipleSize: 70,
    space: 6,
    singleMode: 'scaleToFill',
    multipleMode: 'aspectFill',
    maxCount: 9,
    previewFullImage: true,
    rowCount: 3,
    showMore: true
  }
};
exports.default = _default;

/***/ }),

/***/ 77:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/alert.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:48:53
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/alert.js
 */
var _default = {
  // alert警告组件
  alert: {
    title: '',
    type: 'warning',
    description: '',
    closable: false,
    showIcon: false,
    effect: 'light',
    center: false,
    fontSize: 14
  }
};
exports.default = _default;

/***/ }),

/***/ 78:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/avatar.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:49:22
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/avatar.js
 */
var _default = {
  // avatar 组件
  avatar: {
    src: '',
    shape: 'circle',
    size: 40,
    mode: 'scaleToFill',
    text: '',
    bgColor: '#c0c4cc',
    color: '#ffffff',
    fontSize: 18,
    icon: '',
    mpAvatar: false,
    randomBgColor: false,
    defaultUrl: '',
    colorIndex: '',
    name: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 79:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/avatarGroup.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:49:55
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/avatarGroup.js
 */
var _default = {
  // avatarGroup 组件
  avatarGroup: {
    urls: function urls() {
      return [];
    },
    maxCount: 5,
    shape: 'circle',
    mode: 'scaleToFill',
    showMore: true,
    size: 40,
    keyName: '',
    gap: 0.5,
    extraValue: 0
  }
};
exports.default = _default;

/***/ }),

/***/ 8:
/*!***************************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***!
  \***************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ 9);
function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return Array.from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}
module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 80:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/backtop.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:50:18
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/backtop.js
 */
var _default = {
  // backtop组件
  backtop: {
    mode: 'circle',
    icon: 'arrow-upward',
    text: '',
    duration: 100,
    scrollTop: 0,
    top: 400,
    bottom: 100,
    right: 20,
    zIndex: 9,
    iconStyle: function iconStyle() {
      return {
        color: '#909399',
        fontSize: '19px'
      };
    }
  }
};
exports.default = _default;

/***/ }),

/***/ 81:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/badge.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-23 19:51:50
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/badge.js
 */
var _default = {
  // 徽标数组件
  badge: {
    isDot: false,
    value: '',
    show: true,
    max: 999,
    type: 'error',
    showZero: false,
    bgColor: null,
    color: null,
    shape: 'circle',
    numberType: 'overflow',
    offset: function offset() {
      return [];
    },
    inverted: false,
    absolute: false
  }
};
exports.default = _default;

/***/ }),

/***/ 82:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/button.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:51:27
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/button.js
 */
var _default = {
  // button组件
  button: {
    hairline: false,
    type: 'info',
    size: 'normal',
    shape: 'square',
    plain: false,
    disabled: false,
    loading: false,
    loadingText: '',
    loadingMode: 'spinner',
    loadingSize: 15,
    openType: '',
    formType: '',
    appParameter: '',
    hoverStopPropagation: true,
    lang: 'en',
    sessionFrom: '',
    sendMessageTitle: '',
    sendMessagePath: '',
    sendMessageImg: '',
    showMessageCard: false,
    dataName: '',
    throttleTime: 0,
    hoverStartTime: 0,
    hoverStayTime: 200,
    text: '',
    icon: '',
    iconColor: '',
    color: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 83:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/calendar.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:52:43
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/calendar.js
 */
var _default = {
  // calendar 组件
  calendar: {
    title: '日期选择',
    showTitle: true,
    showSubtitle: true,
    mode: 'single',
    startText: '开始',
    endText: '结束',
    customList: function customList() {
      return [];
    },
    color: '#3c9cff',
    minDate: 0,
    maxDate: 0,
    defaultDate: null,
    maxCount: Number.MAX_SAFE_INTEGER,
    // Infinity
    rowHeight: 56,
    formatter: null,
    showLunar: false,
    showMark: true,
    confirmText: '确定',
    confirmDisabledText: '确定',
    show: false,
    closeOnClickOverlay: false,
    readonly: false,
    showConfirm: true,
    maxRange: Number.MAX_SAFE_INTEGER,
    // Infinity
    rangePrompt: '',
    showRangePrompt: true,
    allowSameDay: false,
    round: 0,
    monthNum: 3
  }
};
exports.default = _default;

/***/ }),

/***/ 84:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/carKeyboard.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:53:20
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/carKeyboard.js
 */
var _default = {
  // 车牌号键盘
  carKeyboard: {
    random: false
  }
};
exports.default = _default;

/***/ }),

/***/ 85:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/cell.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-23 20:53:09
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/cell.js
 */
var _default = {
  // cell组件的props
  cell: {
    customClass: '',
    title: '',
    label: '',
    value: '',
    icon: '',
    disabled: false,
    border: true,
    center: false,
    url: '',
    linkType: 'navigateTo',
    clickable: false,
    isLink: false,
    required: false,
    arrowDirection: '',
    iconStyle: {},
    rightIconStyle: {},
    rightIcon: 'arrow-right',
    titleStyle: {},
    size: '',
    stop: true,
    name: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 858:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-navbar/props.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否开启顶部安全区适配
    safeAreaInsetTop: {
      type: Boolean,
      default: uni.$u.props.navbar.safeAreaInsetTop
    },
    // 固定在顶部时，是否生成一个等高元素，以防止塌陷
    placeholder: {
      type: Boolean,
      default: uni.$u.props.navbar.placeholder
    },
    // 是否固定在顶部
    fixed: {
      type: Boolean,
      default: uni.$u.props.navbar.fixed
    },
    // 是否显示下边框
    border: {
      type: Boolean,
      default: uni.$u.props.navbar.border
    },
    // 左边的图标
    leftIcon: {
      type: String,
      default: uni.$u.props.navbar.leftIcon
    },
    // 左边的提示文字
    leftText: {
      type: String,
      default: uni.$u.props.navbar.leftText
    },
    // 左右的提示文字
    rightText: {
      type: String,
      default: uni.$u.props.navbar.rightText
    },
    // 右边的图标
    rightIcon: {
      type: String,
      default: uni.$u.props.navbar.rightIcon
    },
    // 标题
    title: {
      type: [String, Number],
      default: uni.$u.props.navbar.title
    },
    // 背景颜色
    bgColor: {
      type: String,
      default: uni.$u.props.navbar.bgColor
    },
    // 标题的宽度
    titleWidth: {
      type: [String, Number],
      default: uni.$u.props.navbar.titleWidth
    },
    // 导航栏高度
    height: {
      type: [String, Number],
      default: uni.$u.props.navbar.height
    },
    // 左侧返回图标的大小
    leftIconSize: {
      type: [String, Number],
      default: uni.$u.props.navbar.leftIconSize
    },
    // 左侧返回图标的颜色
    leftIconColor: {
      type: String,
      default: uni.$u.props.navbar.leftIconColor
    },
    // 点击左侧区域(返回图标)，是否自动返回上一页
    autoBack: {
      type: Boolean,
      default: uni.$u.props.navbar.autoBack
    },
    // 标题的样式，对象或字符串
    titleStyle: {
      type: [String, Object],
      default: uni.$u.props.navbar.titleStyle
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 86:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/cellGroup.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:54:16
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/cellGroup.js
 */
var _default = {
  // cell-group组件的props
  cellGroup: {
    title: '',
    border: true,
    customStyle: {}
  }
};
exports.default = _default;

/***/ }),

/***/ 866:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-tabs/props.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 滑块的移动过渡时间，单位ms
    duration: {
      type: Number,
      default: uni.$u.props.tabs.duration
    },
    // tabs标签数组
    list: {
      type: Array,
      default: uni.$u.props.tabs.list
    },
    // 滑块颜色
    lineColor: {
      type: String,
      default: uni.$u.props.tabs.lineColor
    },
    // 菜单选择中时的样式
    activeStyle: {
      type: [String, Object],
      default: uni.$u.props.tabs.activeStyle
    },
    // 菜单非选中时的样式
    inactiveStyle: {
      type: [String, Object],
      default: uni.$u.props.tabs.inactiveStyle
    },
    // 滑块长度
    lineWidth: {
      type: [String, Number],
      default: uni.$u.props.tabs.lineWidth
    },
    // 滑块高度
    lineHeight: {
      type: [String, Number],
      default: uni.$u.props.tabs.lineHeight
    },
    // 滑块背景显示大小，当滑块背景设置为图片时使用
    lineBgSize: {
      type: String,
      default: uni.$u.props.tabs.lineBgSize
    },
    // 菜单item的样式
    itemStyle: {
      type: [String, Object],
      default: uni.$u.props.tabs.itemStyle
    },
    // 菜单是否可滚动
    scrollable: {
      type: Boolean,
      default: uni.$u.props.tabs.scrollable
    },
    // 当前选中标签的索引
    current: {
      type: [Number, String],
      default: uni.$u.props.tabs.current
    },
    // 默认读取的键名
    keyName: {
      type: String,
      default: uni.$u.props.tabs.keyName
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 87:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/checkbox.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-23 21:06:59
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/checkbox.js
 */
var _default = {
  // checkbox组件
  checkbox: {
    name: '',
    shape: '',
    size: '',
    checkbox: false,
    disabled: '',
    activeColor: '',
    inactiveColor: '',
    iconSize: '',
    iconColor: '',
    label: '',
    labelSize: '',
    labelColor: '',
    labelDisabled: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 874:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-icon/icons.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  'uicon-level': "\uE693",
  'uicon-column-line': "\uE68E",
  'uicon-checkbox-mark': "\uE807",
  'uicon-folder': "\uE7F5",
  'uicon-movie': "\uE7F6",
  'uicon-star-fill': "\uE669",
  'uicon-star': "\uE65F",
  'uicon-phone-fill': "\uE64F",
  'uicon-phone': "\uE622",
  'uicon-apple-fill': "\uE881",
  'uicon-chrome-circle-fill': "\uE885",
  'uicon-backspace': "\uE67B",
  'uicon-attach': "\uE632",
  'uicon-cut': "\uE948",
  'uicon-empty-car': "\uE602",
  'uicon-empty-coupon': "\uE682",
  'uicon-empty-address': "\uE646",
  'uicon-empty-favor': "\uE67C",
  'uicon-empty-permission': "\uE686",
  'uicon-empty-news': "\uE687",
  'uicon-empty-search': "\uE664",
  'uicon-github-circle-fill': "\uE887",
  'uicon-rmb': "\uE608",
  'uicon-person-delete-fill': "\uE66A",
  'uicon-reload': "\uE788",
  'uicon-order': "\uE68F",
  'uicon-server-man': "\uE6BC",
  'uicon-search': "\uE62A",
  'uicon-fingerprint': "\uE955",
  'uicon-more-dot-fill': "\uE630",
  'uicon-scan': "\uE662",
  'uicon-share-square': "\uE60B",
  'uicon-map': "\uE61D",
  'uicon-map-fill': "\uE64E",
  'uicon-tags': "\uE629",
  'uicon-tags-fill': "\uE651",
  'uicon-bookmark-fill': "\uE63B",
  'uicon-bookmark': "\uE60A",
  'uicon-eye': "\uE613",
  'uicon-eye-fill': "\uE641",
  'uicon-mic': "\uE64A",
  'uicon-mic-off': "\uE649",
  'uicon-calendar': "\uE66E",
  'uicon-calendar-fill': "\uE634",
  'uicon-trash': "\uE623",
  'uicon-trash-fill': "\uE658",
  'uicon-play-left': "\uE66D",
  'uicon-play-right': "\uE610",
  'uicon-minus': "\uE618",
  'uicon-plus': "\uE62D",
  'uicon-info': "\uE653",
  'uicon-info-circle': "\uE7D2",
  'uicon-info-circle-fill': "\uE64B",
  'uicon-question': "\uE715",
  'uicon-error': "\uE6D3",
  'uicon-close': "\uE685",
  'uicon-checkmark': "\uE6A8",
  'uicon-android-circle-fill': "\uE67E",
  'uicon-android-fill': "\uE67D",
  'uicon-ie': "\uE87B",
  'uicon-IE-circle-fill': "\uE889",
  'uicon-google': "\uE87A",
  'uicon-google-circle-fill': "\uE88A",
  'uicon-setting-fill': "\uE872",
  'uicon-setting': "\uE61F",
  'uicon-minus-square-fill': "\uE855",
  'uicon-plus-square-fill': "\uE856",
  'uicon-heart': "\uE7DF",
  'uicon-heart-fill': "\uE851",
  'uicon-camera': "\uE7D7",
  'uicon-camera-fill': "\uE870",
  'uicon-more-circle': "\uE63E",
  'uicon-more-circle-fill': "\uE645",
  'uicon-chat': "\uE620",
  'uicon-chat-fill': "\uE61E",
  'uicon-bag-fill': "\uE617",
  'uicon-bag': "\uE619",
  'uicon-error-circle-fill': "\uE62C",
  'uicon-error-circle': "\uE624",
  'uicon-close-circle': "\uE63F",
  'uicon-close-circle-fill': "\uE637",
  'uicon-checkmark-circle': "\uE63D",
  'uicon-checkmark-circle-fill': "\uE635",
  'uicon-question-circle-fill': "\uE666",
  'uicon-question-circle': "\uE625",
  'uicon-share': "\uE631",
  'uicon-share-fill': "\uE65E",
  'uicon-shopping-cart': "\uE621",
  'uicon-shopping-cart-fill': "\uE65D",
  'uicon-bell': "\uE609",
  'uicon-bell-fill': "\uE640",
  'uicon-list': "\uE650",
  'uicon-list-dot': "\uE616",
  'uicon-zhihu': "\uE6BA",
  'uicon-zhihu-circle-fill': "\uE709",
  'uicon-zhifubao': "\uE6B9",
  'uicon-zhifubao-circle-fill': "\uE6B8",
  'uicon-weixin-circle-fill': "\uE6B1",
  'uicon-weixin-fill': "\uE6B2",
  'uicon-twitter-circle-fill': "\uE6AB",
  'uicon-twitter': "\uE6AA",
  'uicon-taobao-circle-fill': "\uE6A7",
  'uicon-taobao': "\uE6A6",
  'uicon-weibo-circle-fill': "\uE6A5",
  'uicon-weibo': "\uE6A4",
  'uicon-qq-fill': "\uE6A1",
  'uicon-qq-circle-fill': "\uE6A0",
  'uicon-moments-circel-fill': "\uE69A",
  'uicon-moments': "\uE69B",
  'uicon-qzone': "\uE695",
  'uicon-qzone-circle-fill': "\uE696",
  'uicon-baidu-circle-fill': "\uE680",
  'uicon-baidu': "\uE681",
  'uicon-facebook-circle-fill': "\uE68A",
  'uicon-facebook': "\uE689",
  'uicon-car': "\uE60C",
  'uicon-car-fill': "\uE636",
  'uicon-warning-fill': "\uE64D",
  'uicon-warning': "\uE694",
  'uicon-clock-fill': "\uE638",
  'uicon-clock': "\uE60F",
  'uicon-edit-pen': "\uE612",
  'uicon-edit-pen-fill': "\uE66B",
  'uicon-email': "\uE611",
  'uicon-email-fill': "\uE642",
  'uicon-minus-circle': "\uE61B",
  'uicon-minus-circle-fill': "\uE652",
  'uicon-plus-circle': "\uE62E",
  'uicon-plus-circle-fill': "\uE661",
  'uicon-file-text': "\uE663",
  'uicon-file-text-fill': "\uE665",
  'uicon-pushpin': "\uE7E3",
  'uicon-pushpin-fill': "\uE86E",
  'uicon-grid': "\uE673",
  'uicon-grid-fill': "\uE678",
  'uicon-play-circle': "\uE647",
  'uicon-play-circle-fill': "\uE655",
  'uicon-pause-circle-fill': "\uE654",
  'uicon-pause': "\uE8FA",
  'uicon-pause-circle': "\uE643",
  'uicon-eye-off': "\uE648",
  'uicon-eye-off-outline': "\uE62B",
  'uicon-gift-fill': "\uE65C",
  'uicon-gift': "\uE65B",
  'uicon-rmb-circle-fill': "\uE657",
  'uicon-rmb-circle': "\uE677",
  'uicon-kefu-ermai': "\uE656",
  'uicon-server-fill': "\uE751",
  'uicon-coupon-fill': "\uE8C4",
  'uicon-coupon': "\uE8AE",
  'uicon-integral': "\uE704",
  'uicon-integral-fill': "\uE703",
  'uicon-home-fill': "\uE964",
  'uicon-home': "\uE965",
  'uicon-hourglass-half-fill': "\uE966",
  'uicon-hourglass': "\uE967",
  'uicon-account': "\uE628",
  'uicon-plus-people-fill': "\uE626",
  'uicon-minus-people-fill': "\uE615",
  'uicon-account-fill': "\uE614",
  'uicon-thumb-down-fill': "\uE726",
  'uicon-thumb-down': "\uE727",
  'uicon-thumb-up': "\uE733",
  'uicon-thumb-up-fill': "\uE72F",
  'uicon-lock-fill': "\uE979",
  'uicon-lock-open': "\uE973",
  'uicon-lock-opened-fill': "\uE974",
  'uicon-lock': "\uE97A",
  'uicon-red-packet-fill': "\uE690",
  'uicon-photo-fill': "\uE98B",
  'uicon-photo': "\uE98D",
  'uicon-volume-off-fill': "\uE659",
  'uicon-volume-off': "\uE644",
  'uicon-volume-fill': "\uE670",
  'uicon-volume': "\uE633",
  'uicon-red-packet': "\uE691",
  'uicon-download': "\uE63C",
  'uicon-arrow-up-fill': "\uE6B0",
  'uicon-arrow-down-fill': "\uE600",
  'uicon-play-left-fill': "\uE675",
  'uicon-play-right-fill': "\uE676",
  'uicon-rewind-left-fill': "\uE679",
  'uicon-rewind-right-fill': "\uE67A",
  'uicon-arrow-downward': "\uE604",
  'uicon-arrow-leftward': "\uE601",
  'uicon-arrow-rightward': "\uE603",
  'uicon-arrow-upward': "\uE607",
  'uicon-arrow-down': "\uE60D",
  'uicon-arrow-right': "\uE605",
  'uicon-arrow-left': "\uE60E",
  'uicon-arrow-up': "\uE606",
  'uicon-skip-back-left': "\uE674",
  'uicon-skip-forward-right': "\uE672",
  'uicon-rewind-right': "\uE66F",
  'uicon-rewind-left': "\uE671",
  'uicon-arrow-right-double': "\uE68D",
  'uicon-arrow-left-double': "\uE68C",
  'uicon-wifi-off': "\uE668",
  'uicon-wifi': "\uE667",
  'uicon-empty-data': "\uE62F",
  'uicon-empty-history': "\uE684",
  'uicon-empty-list': "\uE68B",
  'uicon-empty-page': "\uE627",
  'uicon-empty-order': "\uE639",
  'uicon-man': "\uE697",
  'uicon-woman': "\uE69C",
  'uicon-man-add': "\uE61C",
  'uicon-man-add-fill': "\uE64C",
  'uicon-man-delete': "\uE61A",
  'uicon-man-delete-fill': "\uE66A",
  'uicon-zh': "\uE70A",
  'uicon-en': "\uE692"
};
exports.default = _default;

/***/ }),

/***/ 875:
/*!***************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-icon/props.js ***!
  \***************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 图标类名
    name: {
      type: String,
      default: uni.$u.props.icon.name
    },
    // 图标颜色，可接受主题色
    color: {
      type: String,
      default: uni.$u.props.icon.color
    },
    // 字体大小，单位px
    size: {
      type: [String, Number],
      default: uni.$u.props.icon.size
    },
    // 是否显示粗体
    bold: {
      type: Boolean,
      default: uni.$u.props.icon.bold
    },
    // 点击图标的时候传递事件出去的index（用于区分点击了哪一个）
    index: {
      type: [String, Number],
      default: uni.$u.props.icon.index
    },
    // 触摸图标时的类名
    hoverClass: {
      type: String,
      default: uni.$u.props.icon.hoverClass
    },
    // 自定义扩展前缀，方便用户扩展自己的图标库
    customPrefix: {
      type: String,
      default: uni.$u.props.icon.customPrefix
    },
    // 图标右边或者下面的文字
    label: {
      type: [String, Number],
      default: uni.$u.props.icon.label
    },
    // label的位置，只能右边或者下边
    labelPos: {
      type: String,
      default: uni.$u.props.icon.labelPos
    },
    // label的大小
    labelSize: {
      type: [String, Number],
      default: uni.$u.props.icon.labelSize
    },
    // label的颜色
    labelColor: {
      type: String,
      default: uni.$u.props.icon.labelColor
    },
    // label与图标的距离
    space: {
      type: [String, Number],
      default: uni.$u.props.icon.space
    },
    // 图片的mode
    imgMode: {
      type: String,
      default: uni.$u.props.icon.imgMode
    },
    // 用于显示图片小图标时，图片的宽度
    width: {
      type: [String, Number],
      default: uni.$u.props.icon.width
    },
    // 用于显示图片小图标时，图片的高度
    height: {
      type: [String, Number],
      default: uni.$u.props.icon.height
    },
    // 用于解决某些情况下，让图标垂直居中的用途
    top: {
      type: [String, Number],
      default: uni.$u.props.icon.top
    },
    // 是否阻止事件传播
    stop: {
      type: Boolean,
      default: uni.$u.props.icon.stop
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 88:
/*!***********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/checkboxGroup.js ***!
  \***********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:54:47
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/checkboxGroup.js
 */
var _default = {
  // checkbox-group组件
  checkboxGroup: {
    name: '',
    value: function value() {
      return [];
    },
    shape: 'square',
    disabled: false,
    activeColor: '#2979ff',
    inactiveColor: '#c8c9cc',
    size: 18,
    placement: 'row',
    labelSize: 14,
    labelColor: '#303133',
    labelDisabled: false,
    iconColor: '#ffffff',
    iconSize: 12,
    iconPlacement: 'left',
    borderBottom: false
  }
};
exports.default = _default;

/***/ }),

/***/ 89:
/*!************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/circleProgress.js ***!
  \************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:55:02
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/circleProgress.js
 */
var _default = {
  // circleProgress 组件
  circleProgress: {
    percentage: 30
  }
};
exports.default = _default;

/***/ }),

/***/ 890:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-popup/props.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否展示弹窗
    show: {
      type: Boolean,
      default: uni.$u.props.popup.show
    },
    // 是否显示遮罩
    overlay: {
      type: Boolean,
      default: uni.$u.props.popup.overlay
    },
    // 弹出的方向，可选值为 top bottom right left center
    mode: {
      type: String,
      default: uni.$u.props.popup.mode
    },
    // 动画时长，单位ms
    duration: {
      type: [String, Number],
      default: uni.$u.props.popup.duration
    },
    // 是否显示关闭图标
    closeable: {
      type: Boolean,
      default: uni.$u.props.popup.closeable
    },
    // 自定义遮罩的样式
    overlayStyle: {
      type: [Object, String],
      default: uni.$u.props.popup.overlayStyle
    },
    // 点击遮罩是否关闭弹窗
    closeOnClickOverlay: {
      type: Boolean,
      default: uni.$u.props.popup.closeOnClickOverlay
    },
    // 层级
    zIndex: {
      type: [String, Number],
      default: uni.$u.props.popup.zIndex
    },
    // 是否为iPhoneX留出底部安全距离
    safeAreaInsetBottom: {
      type: Boolean,
      default: uni.$u.props.popup.safeAreaInsetBottom
    },
    // 是否留出顶部安全距离（状态栏高度）
    safeAreaInsetTop: {
      type: Boolean,
      default: uni.$u.props.popup.safeAreaInsetTop
    },
    // 自定义关闭图标位置，top-left为左上角，top-right为右上角，bottom-left为左下角，bottom-right为右下角
    closeIconPos: {
      type: String,
      default: uni.$u.props.popup.closeIconPos
    },
    // 是否显示圆角
    round: {
      type: [Boolean, String, Number],
      default: uni.$u.props.popup.round
    },
    // mode=center，也即中部弹出时，是否使用缩放模式
    zoom: {
      type: Boolean,
      default: uni.$u.props.popup.zoom
    },
    // 弹窗背景色，设置为transparent可去除白色背景
    bgColor: {
      type: String,
      default: uni.$u.props.popup.bgColor
    },
    // 遮罩的透明度，0-1之间
    overlayOpacity: {
      type: [Number, String],
      default: uni.$u.props.popup.overlayOpacity
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 9:
/*!*****************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***!
  \*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;
  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }
  return arr2;
}
module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;

/***/ }),

/***/ 90:
/*!**************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/code.js ***!
  \**************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:55:27
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/code.js
 */
var _default = {
  // code 组件
  code: {
    seconds: 60,
    startText: '获取验证码',
    changeText: 'X秒重新获取',
    endText: '重新获取',
    keepRunning: false,
    uniqueKey: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 905:
/*!*************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-checkbox-group/props.js ***!
  \*************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 标识符
    name: {
      type: String,
      default: uni.$u.props.checkboxGroup.name
    },
    // 绑定的值
    value: {
      type: Array,
      default: uni.$u.props.checkboxGroup.value
    },
    // 形状，circle-圆形，square-方形
    shape: {
      type: String,
      default: uni.$u.props.checkboxGroup.shape
    },
    // 是否禁用全部checkbox
    disabled: {
      type: Boolean,
      default: uni.$u.props.checkboxGroup.disabled
    },
    // 选中状态下的颜色，如设置此值，将会覆盖parent的activeColor值
    activeColor: {
      type: String,
      default: uni.$u.props.checkboxGroup.activeColor
    },
    // 未选中的颜色
    inactiveColor: {
      type: String,
      default: uni.$u.props.checkboxGroup.inactiveColor
    },
    // 整个组件的尺寸，默认px
    size: {
      type: [String, Number],
      default: uni.$u.props.checkboxGroup.size
    },
    // 布局方式，row-横向，column-纵向
    placement: {
      type: String,
      default: uni.$u.props.checkboxGroup.placement
    },
    // label的字体大小，px单位
    labelSize: {
      type: [String, Number],
      default: uni.$u.props.checkboxGroup.labelSize
    },
    // label的字体颜色
    labelColor: {
      type: [String],
      default: uni.$u.props.checkboxGroup.labelColor
    },
    // 是否禁止点击文本操作
    labelDisabled: {
      type: Boolean,
      default: uni.$u.props.checkboxGroup.labelDisabled
    },
    // 图标颜色
    iconColor: {
      type: String,
      default: uni.$u.props.checkboxGroup.iconColor
    },
    // 图标的大小，单位px
    iconSize: {
      type: [String, Number],
      default: uni.$u.props.checkboxGroup.iconSize
    },
    // 勾选图标的对齐方式，left-左边，right-右边
    iconPlacement: {
      type: String,
      default: uni.$u.props.checkboxGroup.iconPlacement
    },
    // 竖向配列时，是否显示下划线
    borderBottom: {
      type: Boolean,
      default: uni.$u.props.checkboxGroup.borderBottom
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 91:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/codeInput.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:55:58
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/codeInput.js
 */
var _default = {
  // codeInput 组件
  codeInput: {
    adjustPosition: true,
    maxlength: 6,
    dot: false,
    mode: 'box',
    hairline: false,
    space: 10,
    value: '',
    focus: false,
    bold: false,
    color: '#606266',
    fontSize: 18,
    size: 35,
    disabledKeyboard: false,
    borderColor: '#c9cacc',
    disabledDot: true
  }
};
exports.default = _default;

/***/ }),

/***/ 913:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-checkbox/props.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // checkbox的名称
    name: {
      type: [String, Number, Boolean],
      default: uni.$u.props.checkbox.name
    },
    // 形状，square为方形，circle为圆型
    shape: {
      type: String,
      default: uni.$u.props.checkbox.shape
    },
    // 整体的大小
    size: {
      type: [String, Number],
      default: uni.$u.props.checkbox.size
    },
    // 是否默认选中
    checked: {
      type: Boolean,
      default: uni.$u.props.checkbox.checked
    },
    // 是否禁用
    disabled: {
      type: [String, Boolean],
      default: uni.$u.props.checkbox.disabled
    },
    // 选中状态下的颜色，如设置此值，将会覆盖parent的activeColor值
    activeColor: {
      type: String,
      default: uni.$u.props.checkbox.activeColor
    },
    // 未选中的颜色
    inactiveColor: {
      type: String,
      default: uni.$u.props.checkbox.inactiveColor
    },
    // 图标的大小，单位px
    iconSize: {
      type: [String, Number],
      default: uni.$u.props.checkbox.iconSize
    },
    // 图标颜色
    iconColor: {
      type: String,
      default: uni.$u.props.checkbox.iconColor
    },
    // label提示文字，因为nvue下，直接slot进来的文字，由于特殊的结构，无法修改样式
    label: {
      type: [String, Number],
      default: uni.$u.props.checkbox.label
    },
    // label的字体大小，px单位
    labelSize: {
      type: [String, Number],
      default: uni.$u.props.checkbox.labelSize
    },
    // label的颜色
    labelColor: {
      type: String,
      default: uni.$u.props.checkbox.labelColor
    },
    // 是否禁止点击提示语选中复选框
    labelDisabled: {
      type: [String, Boolean],
      default: uni.$u.props.checkbox.labelDisabled
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 92:
/*!*************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/col.js ***!
  \*************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:56:12
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/col.js
 */
var _default = {
  // col 组件
  col: {
    span: 12,
    offset: 0,
    justify: 'start',
    align: 'stretch',
    textAlign: 'left'
  }
};
exports.default = _default;

/***/ }),

/***/ 921:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-badge/props.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否显示圆点
    isDot: {
      type: Boolean,
      default: uni.$u.props.badge.isDot
    },
    // 显示的内容
    value: {
      type: [Number, String],
      default: uni.$u.props.badge.value
    },
    // 是否显示
    show: {
      type: Boolean,
      default: uni.$u.props.badge.show
    },
    // 最大值，超过最大值会显示 '{max}+'
    max: {
      type: [Number, String],
      default: uni.$u.props.badge.max
    },
    // 主题类型，error|warning|success|primary
    type: {
      type: String,
      default: uni.$u.props.badge.type
    },
    // 当数值为 0 时，是否展示 Badge
    showZero: {
      type: Boolean,
      default: uni.$u.props.badge.showZero
    },
    // 背景颜色，优先级比type高，如设置，type参数会失效
    bgColor: {
      type: [String, null],
      default: uni.$u.props.badge.bgColor
    },
    // 字体颜色
    color: {
      type: [String, null],
      default: uni.$u.props.badge.color
    },
    // 徽标形状，circle-四角均为圆角，horn-左下角为直角
    shape: {
      type: String,
      default: uni.$u.props.badge.shape
    },
    // 设置数字的显示方式，overflow|ellipsis|limit
    // overflow会根据max字段判断，超出显示`${max}+`
    // ellipsis会根据max判断，超出显示`${max}...`
    // limit会依据1000作为判断条件，超出1000，显示`${value/1000}K`，比如2.2k、3.34w，最多保留2位小数
    numberType: {
      type: String,
      default: uni.$u.props.badge.numberType
    },
    // 设置badge的位置偏移，格式为 [x, y]，也即设置的为top和right的值，absolute为true时有效
    offset: {
      type: Array,
      default: uni.$u.props.badge.offset
    },
    // 是否反转背景和字体颜色
    inverted: {
      type: Boolean,
      default: uni.$u.props.badge.inverted
    },
    // 是否绝对定位
    absolute: {
      type: Boolean,
      default: uni.$u.props.badge.absolute
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 93:
/*!******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/collapse.js ***!
  \******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:56:30
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/collapse.js
 */
var _default = {
  // collapse 组件
  collapse: {
    value: null,
    accordion: false,
    border: true
  }
};
exports.default = _default;

/***/ }),

/***/ 936:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-empty/props.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 内置图标名称，或图片路径，建议绝对路径
    icon: {
      type: String,
      default: uni.$u.props.empty.icon
    },
    // 提示文字
    text: {
      type: String,
      default: uni.$u.props.empty.text
    },
    // 文字颜色
    textColor: {
      type: String,
      default: uni.$u.props.empty.textColor
    },
    // 文字大小
    textSize: {
      type: [String, Number],
      default: uni.$u.props.empty.textSize
    },
    // 图标的颜色
    iconColor: {
      type: String,
      default: uni.$u.props.empty.iconColor
    },
    // 图标的大小
    iconSize: {
      type: [String, Number],
      default: uni.$u.props.empty.iconSize
    },
    // 选择预置的图标类型
    mode: {
      type: String,
      default: uni.$u.props.empty.mode
    },
    //  图标宽度，单位px
    width: {
      type: [String, Number],
      default: uni.$u.props.empty.width
    },
    // 图标高度，单位px
    height: {
      type: [String, Number],
      default: uni.$u.props.empty.height
    },
    // 是否显示组件
    show: {
      type: Boolean,
      default: uni.$u.props.empty.show
    },
    // 组件距离上一个元素之间的距离，默认px单位
    marginTop: {
      type: [String, Number],
      default: uni.$u.props.empty.marginTop
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 94:
/*!**********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/collapseItem.js ***!
  \**********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:56:42
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/collapseItem.js
 */
var _default = {
  // collapseItem 组件
  collapseItem: {
    title: '',
    value: '',
    label: '',
    disabled: false,
    isLink: true,
    clickable: true,
    border: true,
    align: 'left',
    name: '',
    icon: '',
    duration: 300
  }
};
exports.default = _default;

/***/ }),

/***/ 944:
/*!**********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-radio-group/props.js ***!
  \**********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 绑定的值
    value: {
      type: [String, Number, Boolean],
      default: uni.$u.props.radioGroup.value
    },
    // 是否禁用全部radio
    disabled: {
      type: Boolean,
      default: uni.$u.props.radioGroup.disabled
    },
    // 形状，circle-圆形，square-方形
    shape: {
      type: String,
      default: uni.$u.props.radioGroup.shape
    },
    // 选中状态下的颜色，如设置此值，将会覆盖parent的activeColor值
    activeColor: {
      type: String,
      default: uni.$u.props.radioGroup.activeColor
    },
    // 未选中的颜色
    inactiveColor: {
      type: String,
      default: uni.$u.props.radioGroup.inactiveColor
    },
    // 标识符
    name: {
      type: String,
      default: uni.$u.props.radioGroup.name
    },
    // 整个组件的尺寸，默认px
    size: {
      type: [String, Number],
      default: uni.$u.props.radioGroup.size
    },
    // 布局方式，row-横向，column-纵向
    placement: {
      type: String,
      default: uni.$u.props.radioGroup.placement
    },
    // label的文本
    label: {
      type: [String],
      default: uni.$u.props.radioGroup.label
    },
    // label的颜色 （默认 '#303133' ）
    labelColor: {
      type: [String],
      default: uni.$u.props.radioGroup.labelColor
    },
    // label的字体大小，px单位
    labelSize: {
      type: [String, Number],
      default: uni.$u.props.radioGroup.labelSize
    },
    // 是否禁止点击文本操作checkbox(默认 false )
    labelDisabled: {
      type: Boolean,
      default: uni.$u.props.radioGroup.labelDisabled
    },
    // 图标颜色
    iconColor: {
      type: String,
      default: uni.$u.props.radioGroup.iconColor
    },
    // 图标的大小，单位px
    iconSize: {
      type: [String, Number],
      default: uni.$u.props.radioGroup.iconSize
    },
    // 竖向配列时，是否显示下划线
    borderBottom: {
      type: Boolean,
      default: uni.$u.props.radioGroup.borderBottom
    },
    // 图标与文字的对齐方式
    iconPlacement: {
      type: String,
      default: uni.$u.props.radio.iconPlacement
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 95:
/*!**********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/columnNotice.js ***!
  \**********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:57:16
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/columnNotice.js
 */
var _default = {
  // columnNotice 组件
  columnNotice: {
    text: '',
    icon: 'volume',
    mode: '',
    color: '#f9ae3d',
    bgColor: '#fdf6ec',
    fontSize: 14,
    speed: 80,
    step: false,
    duration: 1500,
    disableTouch: true
  }
};
exports.default = _default;

/***/ }),

/***/ 952:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-radio/props.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // radio的名称
    name: {
      type: [String, Number, Boolean],
      default: uni.$u.props.radio.name
    },
    // 形状，square为方形，circle为圆型
    shape: {
      type: String,
      default: uni.$u.props.radio.shape
    },
    // 是否禁用
    disabled: {
      type: [String, Boolean],
      default: uni.$u.props.radio.disabled
    },
    // 是否禁止点击提示语选中单选框
    labelDisabled: {
      type: [String, Boolean],
      default: uni.$u.props.radio.labelDisabled
    },
    // 选中状态下的颜色，如设置此值，将会覆盖parent的activeColor值
    activeColor: {
      type: String,
      default: uni.$u.props.radio.activeColor
    },
    // 未选中的颜色
    inactiveColor: {
      type: String,
      default: uni.$u.props.radio.inactiveColor
    },
    // 图标的大小，单位px
    iconSize: {
      type: [String, Number],
      default: uni.$u.props.radio.iconSize
    },
    // label的字体大小，px单位
    labelSize: {
      type: [String, Number],
      default: uni.$u.props.radio.labelSize
    },
    // label提示文字，因为nvue下，直接slot进来的文字，由于特殊的结构，无法修改样式
    label: {
      type: [String, Number],
      default: uni.$u.props.radio.label
    },
    // 整体的大小
    size: {
      type: [String, Number],
      default: uni.$u.props.radio.size
    },
    // 图标颜色
    color: {
      type: String,
      default: uni.$u.props.radio.color
    },
    // label的颜色
    labelColor: {
      type: String,
      default: uni.$u.props.radio.labelColor
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 96:
/*!*******************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/countDown.js ***!
  \*******************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 17:11:29
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/countDown.js
 */
var _default = {
  // u-count-down 计时器组件
  countDown: {
    time: 0,
    format: 'HH:mm:ss',
    autoStart: true,
    millisecond: false
  }
};
exports.default = _default;

/***/ }),

/***/ 960:
/*!****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-input/props.js ***!
  \****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 输入的值
    value: {
      type: [String, Number],
      default: uni.$u.props.input.value
    },
    // 输入框类型
    // number-数字输入键盘，app-vue下可以输入浮点数，app-nvue和小程序平台下只能输入整数
    // idcard-身份证输入键盘，微信、支付宝、百度、QQ小程序
    // digit-带小数点的数字键盘，App的nvue页面、微信、支付宝、百度、头条、QQ小程序
    // text-文本输入键盘
    type: {
      type: String,
      default: uni.$u.props.input.type
    },
    // 如果 textarea 是在一个 position:fixed 的区域，需要显示指定属性 fixed 为 true，
    // 兼容性：微信小程序、百度小程序、字节跳动小程序、QQ小程序
    fixed: {
      type: Boolean,
      default: uni.$u.props.input.fixed
    },
    // 是否禁用输入框
    disabled: {
      type: Boolean,
      default: uni.$u.props.input.disabled
    },
    // 禁用状态时的背景色
    disabledColor: {
      type: String,
      default: uni.$u.props.input.disabledColor
    },
    // 是否显示清除控件
    clearable: {
      type: Boolean,
      default: uni.$u.props.input.clearable
    },
    // 是否密码类型
    password: {
      type: Boolean,
      default: uni.$u.props.input.password
    },
    // 最大输入长度，设置为 -1 的时候不限制最大长度
    maxlength: {
      type: [String, Number],
      default: uni.$u.props.input.maxlength
    },
    // 	输入框为空时的占位符
    placeholder: {
      type: String,
      default: uni.$u.props.input.placeholder
    },
    // 指定placeholder的样式类，注意页面或组件的style中写了scoped时，需要在类名前写/deep/
    placeholderClass: {
      type: String,
      default: uni.$u.props.input.placeholderClass
    },
    // 指定placeholder的样式
    placeholderStyle: {
      type: [String, Object],
      default: uni.$u.props.input.placeholderStyle
    },
    // 是否显示输入字数统计，只在 type ="text"或type ="textarea"时有效
    showWordLimit: {
      type: Boolean,
      default: uni.$u.props.input.showWordLimit
    },
    // 设置右下角按钮的文字，有效值：send|search|next|go|done，兼容性详见uni-app文档
    // https://uniapp.dcloud.io/component/input
    // https://uniapp.dcloud.io/component/textarea
    confirmType: {
      type: String,
      default: uni.$u.props.input.confirmType
    },
    // 点击键盘右下角按钮时是否保持键盘不收起，H5无效
    confirmHold: {
      type: Boolean,
      default: uni.$u.props.input.confirmHold
    },
    // focus时，点击页面的时候不收起键盘，微信小程序有效
    holdKeyboard: {
      type: Boolean,
      default: uni.$u.props.input.holdKeyboard
    },
    // 自动获取焦点
    // 在 H5 平台能否聚焦以及软键盘是否跟随弹出，取决于当前浏览器本身的实现。nvue 页面不支持，需使用组件的 focus()、blur() 方法控制焦点
    focus: {
      type: Boolean,
      default: uni.$u.props.input.focus
    },
    // 键盘收起时，是否自动失去焦点，目前仅App3.0.0+有效
    autoBlur: {
      type: Boolean,
      default: uni.$u.props.input.autoBlur
    },
    // 是否去掉 iOS 下的默认内边距，仅微信小程序，且type=textarea时有效
    disableDefaultPadding: {
      type: Boolean,
      default: uni.$u.props.input.disableDefaultPadding
    },
    // 指定focus时光标的位置
    cursor: {
      type: [String, Number],
      default: uni.$u.props.input.cursor
    },
    // 输入框聚焦时底部与键盘的距离
    cursorSpacing: {
      type: [String, Number],
      default: uni.$u.props.input.cursorSpacing
    },
    // 光标起始位置，自动聚集时有效，需与selection-end搭配使用
    selectionStart: {
      type: [String, Number],
      default: uni.$u.props.input.selectionStart
    },
    // 光标结束位置，自动聚集时有效，需与selection-start搭配使用
    selectionEnd: {
      type: [String, Number],
      default: uni.$u.props.input.selectionEnd
    },
    // 键盘弹起时，是否自动上推页面
    adjustPosition: {
      type: Boolean,
      default: uni.$u.props.input.adjustPosition
    },
    // 输入框内容对齐方式，可选值为：left|center|right
    inputAlign: {
      type: String,
      default: uni.$u.props.input.inputAlign
    },
    // 输入框字体的大小
    fontSize: {
      type: [String, Number],
      default: uni.$u.props.input.fontSize
    },
    // 输入框字体颜色
    color: {
      type: String,
      default: uni.$u.props.input.color
    },
    // 输入框前置图标
    prefixIcon: {
      type: String,
      default: uni.$u.props.input.prefixIcon
    },
    // 前置图标样式，对象或字符串
    prefixIconStyle: {
      type: [String, Object],
      default: uni.$u.props.input.prefixIconStyle
    },
    // 输入框后置图标
    suffixIcon: {
      type: String,
      default: uni.$u.props.input.suffixIcon
    },
    // 后置图标样式，对象或字符串
    suffixIconStyle: {
      type: [String, Object],
      default: uni.$u.props.input.suffixIconStyle
    },
    // 边框类型，surround-四周边框，bottom-底部边框，none-无边框
    border: {
      type: String,
      default: uni.$u.props.input.border
    },
    // 是否只读，与disabled不同之处在于disabled会置灰组件，而readonly则不会
    readonly: {
      type: Boolean,
      default: uni.$u.props.input.readonly
    },
    // 输入框形状，circle-圆形，square-方形
    shape: {
      type: String,
      default: uni.$u.props.input.shape
    },
    // 用于处理或者过滤输入框内容的方法
    formatter: {
      type: [Function, null],
      default: uni.$u.props.input.formatter
    },
    // 是否忽略组件内对文本合成系统事件的处理
    ignoreCompositionEvent: {
      type: Boolean,
      default: true
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 966:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-picker/props.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否展示picker弹窗
    show: {
      type: Boolean,
      default: uni.$u.props.picker.show
    },
    // 是否展示顶部的操作栏
    showToolbar: {
      type: Boolean,
      default: uni.$u.props.picker.showToolbar
    },
    // 顶部标题
    title: {
      type: String,
      default: uni.$u.props.picker.title
    },
    // 对象数组，设置每一列的数据
    columns: {
      type: Array,
      default: uni.$u.props.picker.columns
    },
    // 是否显示加载中状态
    loading: {
      type: Boolean,
      default: uni.$u.props.picker.loading
    },
    // 各列中，单个选项的高度
    itemHeight: {
      type: [String, Number],
      default: uni.$u.props.picker.itemHeight
    },
    // 取消按钮的文字
    cancelText: {
      type: String,
      default: uni.$u.props.picker.cancelText
    },
    // 确认按钮的文字
    confirmText: {
      type: String,
      default: uni.$u.props.picker.confirmText
    },
    // 取消按钮的颜色
    cancelColor: {
      type: String,
      default: uni.$u.props.picker.cancelColor
    },
    // 确认按钮的颜色
    confirmColor: {
      type: String,
      default: uni.$u.props.picker.confirmColor
    },
    // 每列中可见选项的数量
    visibleItemCount: {
      type: [String, Number],
      default: uni.$u.props.picker.visibleItemCount
    },
    // 选项对象中，需要展示的属性键名
    keyName: {
      type: String,
      default: uni.$u.props.picker.keyName
    },
    // 是否允许点击遮罩关闭选择器
    closeOnClickOverlay: {
      type: Boolean,
      default: uni.$u.props.picker.closeOnClickOverlay
    },
    // 各列的默认索引
    defaultIndex: {
      type: Array,
      default: uni.$u.props.picker.defaultIndex
    },
    // 是否在手指松开时立即触发 change 事件。若不开启则会在滚动动画结束后触发 change 事件，只在微信2.21.1及以上有效
    immediateChange: {
      type: Boolean,
      default: uni.$u.props.picker.immediateChange
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 97:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/countTo.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:57:32
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/countTo.js
 */
var _default = {
  // countTo 组件
  countTo: {
    startVal: 0,
    endVal: 0,
    duration: 2000,
    autoplay: true,
    decimals: 0,
    useEasing: true,
    decimal: '.',
    color: '#606266',
    fontSize: 22,
    bold: false,
    separator: ''
  }
};
exports.default = _default;

/***/ }),

/***/ 974:
/*!**************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-datetime-picker/props.js ***!
  \**************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 是否打开组件
    show: {
      type: Boolean,
      default: uni.$u.props.datetimePicker.show
    },
    // 是否展示顶部的操作栏
    showToolbar: {
      type: Boolean,
      default: uni.$u.props.datetimePicker.showToolbar
    },
    // 绑定值
    value: {
      type: [String, Number],
      default: uni.$u.props.datetimePicker.value
    },
    // 顶部标题
    title: {
      type: String,
      default: uni.$u.props.datetimePicker.title
    },
    // 展示格式，mode=date为日期选择，mode=time为时间选择，mode=year-month为年月选择，mode=datetime为日期时间选择
    mode: {
      type: String,
      default: uni.$u.props.datetimePicker.mode
    },
    // 可选的最大时间
    maxDate: {
      type: Number,
      // 最大默认值为后10年
      default: uni.$u.props.datetimePicker.maxDate
    },
    // 可选的最小时间
    minDate: {
      type: Number,
      // 最小默认值为前10年
      default: uni.$u.props.datetimePicker.minDate
    },
    // 可选的最小小时，仅mode=time有效
    minHour: {
      type: Number,
      default: uni.$u.props.datetimePicker.minHour
    },
    // 可选的最大小时，仅mode=time有效
    maxHour: {
      type: Number,
      default: uni.$u.props.datetimePicker.maxHour
    },
    // 可选的最小分钟，仅mode=time有效
    minMinute: {
      type: Number,
      default: uni.$u.props.datetimePicker.minMinute
    },
    // 可选的最大分钟，仅mode=time有效
    maxMinute: {
      type: Number,
      default: uni.$u.props.datetimePicker.maxMinute
    },
    // 选项过滤函数
    filter: {
      type: [Function, null],
      default: uni.$u.props.datetimePicker.filter
    },
    // 选项格式化函数
    formatter: {
      type: [Function, null],
      default: uni.$u.props.datetimePicker.formatter
    },
    // 是否显示加载中状态
    loading: {
      type: Boolean,
      default: uni.$u.props.datetimePicker.loading
    },
    // 各列中，单个选项的高度
    itemHeight: {
      type: [String, Number],
      default: uni.$u.props.datetimePicker.itemHeight
    },
    // 取消按钮的文字
    cancelText: {
      type: String,
      default: uni.$u.props.datetimePicker.cancelText
    },
    // 确认按钮的文字
    confirmText: {
      type: String,
      default: uni.$u.props.datetimePicker.confirmText
    },
    // 取消按钮的颜色
    cancelColor: {
      type: String,
      default: uni.$u.props.datetimePicker.cancelColor
    },
    // 确认按钮的颜色
    confirmColor: {
      type: String,
      default: uni.$u.props.datetimePicker.confirmColor
    },
    // 每列中可见选项的数量
    visibleItemCount: {
      type: [String, Number],
      default: uni.$u.props.datetimePicker.visibleItemCount
    },
    // 是否允许点击遮罩关闭选择器
    closeOnClickOverlay: {
      type: Boolean,
      default: uni.$u.props.datetimePicker.closeOnClickOverlay
    },
    // 各列的默认索引
    defaultIndex: {
      type: Array,
      default: uni.$u.props.datetimePicker.defaultIndex
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 975:
/*!*******************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/util/dayjs.js ***!
  \*******************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 13);
!function (t, e) {
  ( false ? undefined : _typeof(exports)) === 'object' && typeof module !== 'undefined' ? module.exports = e() :  true ? !(__WEBPACK_AMD_DEFINE_FACTORY__ = (e),
				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
				(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :
				__WEBPACK_AMD_DEFINE_FACTORY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : undefined;
}(this, function () {
  'use strict';

  var t = 'millisecond';
  var e = 'second';
  var n = 'minute';
  var r = 'hour';
  var i = 'day';
  var s = 'week';
  var u = 'month';
  var a = 'quarter';
  var o = 'year';
  var f = 'date';
  var h = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d+)?$/;
  var c = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g;
  var d = {
    name: 'en',
    weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
    months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_')
  };
  var $ = function $(t, e, n) {
    var r = String(t);
    return !r || r.length >= e ? t : "".concat(Array(e + 1 - r.length).join(n)).concat(t);
  };
  var l = {
    s: $,
    z: function z(t) {
      var e = -t.utcOffset();
      var n = Math.abs(e);
      var r = Math.floor(n / 60);
      var i = n % 60;
      return "".concat((e <= 0 ? '+' : '-') + $(r, 2, '0'), ":").concat($(i, 2, '0'));
    },
    m: function t(e, n) {
      if (e.date() < n.date()) return -t(n, e);
      var r = 12 * (n.year() - e.year()) + (n.month() - e.month());
      var i = e.clone().add(r, u);
      var s = n - i < 0;
      var a = e.clone().add(r + (s ? -1 : 1), u);
      return +(-(r + (n - i) / (s ? i - a : a - i)) || 0);
    },
    a: function a(t) {
      return t < 0 ? Math.ceil(t) || 0 : Math.floor(t);
    },
    p: function p(h) {
      return {
        M: u,
        y: o,
        w: s,
        d: i,
        D: f,
        h: r,
        m: n,
        s: e,
        ms: t,
        Q: a
      }[h] || String(h || '').toLowerCase().replace(/s$/, '');
    },
    u: function u(t) {
      return void 0 === t;
    }
  };
  var y = 'en';
  var M = {};
  M[y] = d;
  var m = function m(t) {
    return t instanceof S;
  };
  var D = function D(t, e, n) {
    var r;
    if (!t) return y;
    if (typeof t === 'string') M[t] && (r = t), e && (M[t] = e, r = t);else {
      var _i = t.name;
      M[_i] = t, r = _i;
    }
    return !n && r && (y = r), r || !n && y;
  };
  var v = function v(t, e) {
    if (m(t)) return t.clone();
    var n = _typeof(e) === 'object' ? e : {};
    return n.date = t, n.args = arguments, new S(n);
  };
  var g = l;
  g.l = D, g.i = m, g.w = function (t, e) {
    return v(t, {
      locale: e.$L,
      utc: e.$u,
      x: e.$x,
      $offset: e.$offset
    });
  };
  var S = function () {
    function d(t) {
      this.$L = D(t.locale, null, !0), this.parse(t);
    }
    var $ = d.prototype;
    return $.parse = function (t) {
      this.$d = function (t) {
        var e = t.date;
        var n = t.utc;
        if (e === null) return new Date(NaN);
        if (g.u(e)) return new Date();
        if (e instanceof Date) return new Date(e);
        if (typeof e === 'string' && !/Z$/i.test(e)) {
          var _r = e.match(h);
          if (_r) {
            var _i2 = _r[2] - 1 || 0;
            var _s = (_r[7] || '0').substring(0, 3);
            return n ? new Date(Date.UTC(_r[1], _i2, _r[3] || 1, _r[4] || 0, _r[5] || 0, _r[6] || 0, _s)) : new Date(_r[1], _i2, _r[3] || 1, _r[4] || 0, _r[5] || 0, _r[6] || 0, _s);
          }
        }
        return new Date(e);
      }(t), this.$x = t.x || {}, this.init();
    }, $.init = function () {
      var t = this.$d;
      this.$y = t.getFullYear(), this.$M = t.getMonth(), this.$D = t.getDate(), this.$W = t.getDay(), this.$H = t.getHours(), this.$m = t.getMinutes(), this.$s = t.getSeconds(), this.$ms = t.getMilliseconds();
    }, $.$utils = function () {
      return g;
    }, $.isValid = function () {
      return !(this.$d.toString() === 'Invalid Date');
    }, $.isSame = function (t, e) {
      var n = v(t);
      return this.startOf(e) <= n && n <= this.endOf(e);
    }, $.isAfter = function (t, e) {
      return v(t) < this.startOf(e);
    }, $.isBefore = function (t, e) {
      return this.endOf(e) < v(t);
    }, $.$g = function (t, e, n) {
      return g.u(t) ? this[e] : this.set(n, t);
    }, $.unix = function () {
      return Math.floor(this.valueOf() / 1e3);
    }, $.valueOf = function () {
      return this.$d.getTime();
    }, $.startOf = function (t, a) {
      var h = this;
      var c = !!g.u(a) || a;
      var d = g.p(t);
      var $ = function $(t, e) {
        var n = g.w(h.$u ? Date.UTC(h.$y, e, t) : new Date(h.$y, e, t), h);
        return c ? n : n.endOf(i);
      };
      var l = function l(t, e) {
        return g.w(h.toDate()[t].apply(h.toDate('s'), (c ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(e)), h);
      };
      var y = this.$W;
      var M = this.$M;
      var m = this.$D;
      var D = "set".concat(this.$u ? 'UTC' : '');
      switch (d) {
        case o:
          return c ? $(1, 0) : $(31, 11);
        case u:
          return c ? $(1, M) : $(0, M + 1);
        case s:
          var v = this.$locale().weekStart || 0;
          var S = (y < v ? y + 7 : y) - v;
          return $(c ? m - S : m + (6 - S), M);
        case i:
        case f:
          return l("".concat(D, "Hours"), 0);
        case r:
          return l("".concat(D, "Minutes"), 1);
        case n:
          return l("".concat(D, "Seconds"), 2);
        case e:
          return l("".concat(D, "Milliseconds"), 3);
        default:
          return this.clone();
      }
    }, $.endOf = function (t) {
      return this.startOf(t, !1);
    }, $.$set = function (s, a) {
      var h;
      var c = g.p(s);
      var d = "set".concat(this.$u ? 'UTC' : '');
      var $ = (h = {}, h[i] = "".concat(d, "Date"), h[f] = "".concat(d, "Date"), h[u] = "".concat(d, "Month"), h[o] = "".concat(d, "FullYear"), h[r] = "".concat(d, "Hours"), h[n] = "".concat(d, "Minutes"), h[e] = "".concat(d, "Seconds"), h[t] = "".concat(d, "Milliseconds"), h)[c];
      var l = c === i ? this.$D + (a - this.$W) : a;
      if (c === u || c === o) {
        var _y = this.clone().set(f, 1);
        _y.$d[$](l), _y.init(), this.$d = _y.set(f, Math.min(this.$D, _y.daysInMonth())).$d;
      } else $ && this.$d[$](l);
      return this.init(), this;
    }, $.set = function (t, e) {
      return this.clone().$set(t, e);
    }, $.get = function (t) {
      return this[g.p(t)]();
    }, $.add = function (t, a) {
      var f;
      var h = this;
      t = Number(t);
      var c = g.p(a);
      var d = function d(e) {
        var n = v(h);
        return g.w(n.date(n.date() + Math.round(e * t)), h);
      };
      if (c === u) return this.set(u, this.$M + t);
      if (c === o) return this.set(o, this.$y + t);
      if (c === i) return d(1);
      if (c === s) return d(7);
      var $ = (f = {}, f[n] = 6e4, f[r] = 36e5, f[e] = 1e3, f)[c] || 1;
      var l = this.$d.getTime() + t * $;
      return g.w(l, this);
    }, $.subtract = function (t, e) {
      return this.add(-1 * t, e);
    }, $.format = function (t) {
      var e = this;
      if (!this.isValid()) return 'Invalid Date';
      var n = t || 'YYYY-MM-DDTHH:mm:ssZ';
      var r = g.z(this);
      var i = this.$locale();
      var s = this.$H;
      var u = this.$m;
      var a = this.$M;
      var o = i.weekdays;
      var f = i.months;
      var h = function h(t, r, i, s) {
        return t && (t[r] || t(e, n)) || i[r].substr(0, s);
      };
      var d = function d(t) {
        return g.s(s % 12 || 12, t, '0');
      };
      var $ = i.meridiem || function (t, e, n) {
        var r = t < 12 ? 'AM' : 'PM';
        return n ? r.toLowerCase() : r;
      };
      var l = {
        YY: String(this.$y).slice(-2),
        YYYY: this.$y,
        M: a + 1,
        MM: g.s(a + 1, 2, '0'),
        MMM: h(i.monthsShort, a, f, 3),
        MMMM: h(f, a),
        D: this.$D,
        DD: g.s(this.$D, 2, '0'),
        d: String(this.$W),
        dd: h(i.weekdaysMin, this.$W, o, 2),
        ddd: h(i.weekdaysShort, this.$W, o, 3),
        dddd: o[this.$W],
        H: String(s),
        HH: g.s(s, 2, '0'),
        h: d(1),
        hh: d(2),
        a: $(s, u, !0),
        A: $(s, u, !1),
        m: String(u),
        mm: g.s(u, 2, '0'),
        s: String(this.$s),
        ss: g.s(this.$s, 2, '0'),
        SSS: g.s(this.$ms, 3, '0'),
        Z: r
      };
      return n.replace(c, function (t, e) {
        return e || l[t] || r.replace(':', '');
      });
    }, $.utcOffset = function () {
      return 15 * -Math.round(this.$d.getTimezoneOffset() / 15);
    }, $.diff = function (t, f, h) {
      var c;
      var d = g.p(f);
      var $ = v(t);
      var l = 6e4 * ($.utcOffset() - this.utcOffset());
      var y = this - $;
      var M = g.m(this, $);
      return M = (c = {}, c[o] = M / 12, c[u] = M, c[a] = M / 3, c[s] = (y - l) / 6048e5, c[i] = (y - l) / 864e5, c[r] = y / 36e5, c[n] = y / 6e4, c[e] = y / 1e3, c)[d] || y, h ? M : g.a(M);
    }, $.daysInMonth = function () {
      return this.endOf(u).$D;
    }, $.$locale = function () {
      return M[this.$L];
    }, $.locale = function (t, e) {
      if (!t) return this.$L;
      var n = this.clone();
      var r = D(t, e, !0);
      return r && (n.$L = r), n;
    }, $.clone = function () {
      return g.w(this.$d, this);
    }, $.toDate = function () {
      return new Date(this.valueOf());
    }, $.toJSON = function () {
      return this.isValid() ? this.toISOString() : null;
    }, $.toISOString = function () {
      return this.$d.toISOString();
    }, $.toString = function () {
      return this.$d.toUTCString();
    }, d;
  }();
  var p = S.prototype;
  return v.prototype = p, [['$ms', t], ['$s', e], ['$m', n], ['$H', r], ['$W', i], ['$M', u], ['$y', o], ['$D', f]].forEach(function (t) {
    p[t[1]] = function (e) {
      return this.$g(e, t[0], t[1]);
    };
  }), v.extend = function (t, e) {
    return t.$i || (t(e, S, v), t.$i = !0), v;
  }, v.locale = D, v.isDayjs = m, v.unix = function (t) {
    return v(1e3 * t);
  }, v.en = M[y], v.Ls = M, v.p = {}, v;
});

/***/ }),

/***/ 98:
/*!************************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/datetimePicker.js ***!
  \************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:57:48
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/datetimePicker.js
 */
var _default = {
  // datetimePicker 组件
  datetimePicker: {
    show: false,
    showToolbar: true,
    value: '',
    title: '',
    mode: 'datetime',
    maxDate: new Date(new Date().getFullYear() + 10, 0, 1).getTime(),
    minDate: new Date(new Date().getFullYear() - 10, 0, 1).getTime(),
    minHour: 0,
    maxHour: 23,
    minMinute: 0,
    maxMinute: 59,
    filter: null,
    formatter: null,
    loading: false,
    itemHeight: 44,
    cancelText: '取消',
    confirmText: '确认',
    cancelColor: '#909193',
    confirmColor: '#3c9cff',
    visibleItemCount: 5,
    closeOnClickOverlay: false,
    defaultIndex: function defaultIndex() {
      return [];
    }
  }
};
exports.default = _default;

/***/ }),

/***/ 99:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/libs/config/props/divider.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
/*
 * @Author       : LQ
 * @Description  :
 * @version      : 1.0
 * @Date         : 2021-08-20 16:44:21
 * @LastAuthor   : LQ
 * @lastTime     : 2021-08-20 16:58:03
 * @FilePath     : /u-view2.0/uview-ui/libs/config/props/divider.js
 */
var _default = {
  // divider组件
  divider: {
    dashed: false,
    hairline: true,
    dot: false,
    textPosition: 'center',
    text: '',
    textSize: 14,
    textColor: '#909399',
    lineColor: '#dcdfe6'
  }
};
exports.default = _default;

/***/ }),

/***/ 990:
/*!*********************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-subsection/props.js ***!
  \*********************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // tab的数据
    list: {
      type: Array,
      default: uni.$u.props.subsection.list
    },
    // 当前活动的tab的index
    current: {
      type: [String, Number],
      default: uni.$u.props.subsection.current
    },
    // 激活的颜色
    activeColor: {
      type: String,
      default: uni.$u.props.subsection.activeColor
    },
    // 未激活的颜色
    inactiveColor: {
      type: String,
      default: uni.$u.props.subsection.inactiveColor
    },
    // 模式选择，mode=button为按钮形式，mode=subsection时为分段模式
    mode: {
      type: String,
      default: uni.$u.props.subsection.mode
    },
    // 字体大小
    fontSize: {
      type: [String, Number],
      default: uni.$u.props.subsection.fontSize
    },
    // 激活tab的字体是否加粗
    bold: {
      type: Boolean,
      default: uni.$u.props.subsection.bold
    },
    // mode = button时，组件背景颜色
    bgColor: {
      type: String,
      default: uni.$u.props.subsection.bgColor
    },
    // 从list元素对象中读取的键名
    keyName: {
      type: String,
      default: uni.$u.props.subsection.keyName
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ }),

/***/ 998:
/*!*****************************************************************************************************************!*\
  !*** C:/Users/Administrator/Desktop/yswc/hire-wx-houxuanren/node_modules/uview-ui/components/u-search/props.js ***!
  \*****************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(uni) {

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var _default = {
  props: {
    // 搜索框形状，round-圆形，square-方形
    shape: {
      type: String,
      default: uni.$u.props.search.shape
    },
    // 搜索框背景色，默认值#f2f2f2
    bgColor: {
      type: String,
      default: uni.$u.props.search.bgColor
    },
    // 占位提示文字
    placeholder: {
      type: String,
      default: uni.$u.props.search.placeholder
    },
    // 是否启用清除控件
    clearabled: {
      type: Boolean,
      default: uni.$u.props.search.clearabled
    },
    // 是否自动聚焦
    focus: {
      type: Boolean,
      default: uni.$u.props.search.focus
    },
    // 是否在搜索框右侧显示取消按钮
    showAction: {
      type: Boolean,
      default: uni.$u.props.search.showAction
    },
    // 右边控件的样式
    actionStyle: {
      type: Object,
      default: uni.$u.props.search.actionStyle
    },
    // 取消按钮文字
    actionText: {
      type: String,
      default: uni.$u.props.search.actionText
    },
    // 输入框内容对齐方式，可选值为 left|center|right
    inputAlign: {
      type: String,
      default: uni.$u.props.search.inputAlign
    },
    // input输入框的样式，可以定义文字颜色，大小等，对象形式
    inputStyle: {
      type: Object,
      default: uni.$u.props.search.inputStyle
    },
    // 是否启用输入框
    disabled: {
      type: Boolean,
      default: uni.$u.props.search.disabled
    },
    // 边框颜色
    borderColor: {
      type: String,
      default: uni.$u.props.search.borderColor
    },
    // 搜索图标的颜色，默认同输入框字体颜色
    searchIconColor: {
      type: String,
      default: uni.$u.props.search.searchIconColor
    },
    // 输入框字体颜色
    color: {
      type: String,
      default: uni.$u.props.search.color
    },
    // placeholder的颜色
    placeholderColor: {
      type: String,
      default: uni.$u.props.search.placeholderColor
    },
    // 左边输入框的图标，可以为uView图标名称或图片路径
    searchIcon: {
      type: String,
      default: uni.$u.props.search.searchIcon
    },
    searchIconSize: {
      type: [Number, String],
      default: uni.$u.props.search.searchIconSize
    },
    // 组件与其他上下左右元素之间的距离，带单位的字符串形式，如"30px"、"30px 20px"等写法
    margin: {
      type: String,
      default: uni.$u.props.search.margin
    },
    // 开启showAction时，是否在input获取焦点时才显示
    animation: {
      type: Boolean,
      default: uni.$u.props.search.animation
    },
    // 输入框的初始化内容
    value: {
      type: String,
      default: uni.$u.props.search.value
    },
    // 输入框最大能输入的长度，-1为不限制长度(来自uniapp文档)
    maxlength: {
      type: [String, Number],
      default: uni.$u.props.search.maxlength
    },
    // 搜索框高度，单位px
    height: {
      type: [String, Number],
      default: uni.$u.props.search.height
    },
    // 搜索框左侧文本
    label: {
      type: [String, Number, null],
      default: uni.$u.props.search.label
    }
  }
};
exports.default = _default;
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"]))

/***/ })

}]);
//# sourceMappingURL=../../.sourcemap/mp-weixin/common/vendor.js.map