From 2de42f2297242a040230da788a21fcb085e64571 Mon Sep 17 00:00:00 2001 From: weipengfei <2187978347@qq.com> Date: Tue, 26 Sep 2023 11:47:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/index/index.vue | 6 +- .../dist/dev/app-plus/app-config-service.js | 4 +- unpackage/dist/dev/app-plus/app-service.js | 140 ++------------ unpackage/dist/dev/app-plus/app-view.js | 180 +----------------- unpackage/dist/dev/app-plus/manifest.json | 2 +- unpackage/dist/dev/app-plus/static/avatar.png | Bin 15926 -> 12891 bytes unpackage/dist/dev/app-plus/static/iat.png | Bin 5090 -> 0 bytes .../dist/dev/app-plus/static/iat_active.png | Bin 5228 -> 0 bytes unpackage/dist/dev/app-plus/static/ise.png | Bin 10569 -> 0 bytes .../dist/dev/app-plus/static/ise_active.png | Bin 10854 -> 0 bytes unpackage/dist/dev/app-plus/static/logo.png | Bin 4023 -> 0 bytes unpackage/dist/dev/app-plus/static/tts.png | Bin 5219 -> 0 bytes .../dist/dev/app-plus/static/tts_avtive.png | Bin 5340 -> 0 bytes 13 files changed, 28 insertions(+), 304 deletions(-) delete mode 100644 unpackage/dist/dev/app-plus/static/iat.png delete mode 100644 unpackage/dist/dev/app-plus/static/iat_active.png delete mode 100644 unpackage/dist/dev/app-plus/static/ise.png delete mode 100644 unpackage/dist/dev/app-plus/static/ise_active.png delete mode 100644 unpackage/dist/dev/app-plus/static/logo.png delete mode 100644 unpackage/dist/dev/app-plus/static/tts.png delete mode 100644 unpackage/dist/dev/app-plus/static/tts_avtive.png diff --git a/pages/index/index.vue b/pages/index/index.vue index b3e08a3..e83ea64 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -52,6 +52,8 @@ }, data() { return { + wssType: 'nongye', // 网络连接类型 + avatarType: "/static/icon/ny.png", // AI头像类型 talkList: [], ajax: { rows: 15, //每页数量 @@ -316,7 +318,7 @@ "id": new Date().getTime(), "content": '', "type": 2, - "pic": "/static/icon/ny.png" + "pic": this.avatarType }); this.n_content = ''; this.c_content = ''; @@ -339,7 +341,7 @@ let realThis = this; this.socketTask = uni.connectSocket({ //url: encodeURI(encodeURI(myUrl).replace(/\+/g, '%2B')), - url: `wss://chat.lihaink.cn/chat?type=农业咨询×tamp=${Date.now()}`, + url: `wss://chat.lihaink.cn/chat?type=${this.wssType}×tamp=${Date.now()}`, method: 'GET', token: '', success: res => { diff --git a/unpackage/dist/dev/app-plus/app-config-service.js b/unpackage/dist/dev/app-plus/app-config-service.js index 02db4d8..6280a94 100644 --- a/unpackage/dist/dev/app-plus/app-config-service.js +++ b/unpackage/dist/dev/app-plus/app-config-service.js @@ -1,8 +1,8 @@ var isReady=false;var onReadyCallbacks=[]; var isServiceReady=false;var onServiceReadyCallbacks=[]; -var __uniConfig = {"pages":["pages/index/index","pages/index/chat"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"人工智能","navigationBarBackgroundColor":"#F8F8F8","backgroundColor":"#F8F8F8"},"darkmode":false,"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"xunfeiAi","compilerVersion":"3.8.12","entryPagePath":"pages/index/index","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}}; -var __uniRoutes = [{"path":"/pages/index/index","meta":{"isQuit":true},"window":{"navigationBarTitleText":"讯飞AI","bounce":"none"}},{"path":"/pages/index/chat","meta":{},"window":{"navigationBarTitleText":"讯飞星火","bounce":"none"}}]; +var __uniConfig = {"pages":["pages/index/index"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"人工智能","navigationBarBackgroundColor":"#F8F8F8","backgroundColor":"#F8F8F8"},"darkmode":false,"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"农业咨询","compilerVersion":"3.8.12","entryPagePath":"pages/index/index","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}}; +var __uniRoutes = [{"path":"/pages/index/index","meta":{"isQuit":true},"window":{"navigationBarTitleText":"农业咨询","bounce":"none"}}]; __uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}}); __uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}}); service.register("uni-app-config",{create(a,b,c){if(!__uniConfig.viewport){var d=b.weex.config.env.scale,e=b.weex.config.env.deviceWidth,f=Math.ceil(e/d);Object.assign(__uniConfig,{viewport:f,defaultFontSize:Math.round(f/20)})}return{instance:{__uniConfig:__uniConfig,__uniRoutes:__uniRoutes,global:void 0,window:void 0,document:void 0,frames:void 0,self:void 0,location:void 0,navigator:void 0,localStorage:void 0,history:void 0,Caches:void 0,screen:void 0,alert:void 0,confirm:void 0,prompt:void 0,fetch:void 0,XMLHttpRequest:void 0,WebSocket:void 0,webkit:void 0,print:void 0}}}}); diff --git a/unpackage/dist/dev/app-plus/app-service.js b/unpackage/dist/dev/app-plus/app-service.js index 9b20895..6c6f8ea 100644 --- a/unpackage/dist/dev/app-plus/app-service.js +++ b/unpackage/dist/dev/app-plus/app-service.js @@ -7,7 +7,7 @@ /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\n__webpack_require__(/*! uni-pages */ 6);\nvar _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 213));\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 216));\n__webpack_require__(/*! ./uni.promisify.adaptor */ 217);\nfunction 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; }\nfunction _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; }\n_vue.default.config.productionTip = false;\n_App.default.mpType = 'app';\nvar app = new _vue.default(_objectSpread({}, _App.default));\napp.$mount();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vbWFpbi5qcyJdLCJuYW1lcyI6WyJWdWUiLCJjb25maWciLCJwcm9kdWN0aW9uVGlwIiwiQXBwIiwibXBUeXBlIiwiYXBwIiwiJG1vdW50Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFBbUI7QUFHbkI7QUFDQTtBQUFnQztBQUFBO0FBQ2hDQSxZQUFHLENBQUNDLE1BQU0sQ0FBQ0MsYUFBYSxHQUFHLEtBQUs7QUFDaENDLFlBQUcsQ0FBQ0MsTUFBTSxHQUFHLEtBQUs7QUFDbEIsSUFBTUMsR0FBRyxHQUFHLElBQUlMLFlBQUcsbUJBQ2RHLFlBQUcsRUFDTjtBQUNGRSxHQUFHLENBQUNDLE1BQU0sRUFBRSIsImZpbGUiOiIwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICd1bmktcGFnZXMnO2ltcG9ydCBBcHAgZnJvbSAnLi9BcHAnXG5cblxuaW1wb3J0IFZ1ZSBmcm9tICd2dWUnXG5pbXBvcnQgJy4vdW5pLnByb21pc2lmeS5hZGFwdG9yJ1xuVnVlLmNvbmZpZy5wcm9kdWN0aW9uVGlwID0gZmFsc2VcbkFwcC5tcFR5cGUgPSAnYXBwJ1xuY29uc3QgYXBwID0gbmV3IFZ1ZSh7XG4gIC4uLkFwcFxufSlcbmFwcC4kbW91bnQoKVxuXG5cblxuXG5cblxuXG5cblxuXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///0\n"); +eval("\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nvar _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 2));\n__webpack_require__(/*! uni-pages */ 6);\nvar _App = _interopRequireDefault(__webpack_require__(/*! ./App */ 208));\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ 211));\n__webpack_require__(/*! ./uni.promisify.adaptor */ 212);\nfunction 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; }\nfunction _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; }\n_vue.default.config.productionTip = false;\n_App.default.mpType = 'app';\nvar app = new _vue.default(_objectSpread({}, _App.default));\napp.$mount();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vbWFpbi5qcyJdLCJuYW1lcyI6WyJWdWUiLCJjb25maWciLCJwcm9kdWN0aW9uVGlwIiwiQXBwIiwibXBUeXBlIiwiYXBwIiwiJG1vdW50Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFBbUI7QUFHbkI7QUFDQTtBQUFnQztBQUFBO0FBQ2hDQSxZQUFHLENBQUNDLE1BQU0sQ0FBQ0MsYUFBYSxHQUFHLEtBQUs7QUFDaENDLFlBQUcsQ0FBQ0MsTUFBTSxHQUFHLEtBQUs7QUFDbEIsSUFBTUMsR0FBRyxHQUFHLElBQUlMLFlBQUcsbUJBQ2RHLFlBQUcsRUFDTjtBQUNGRSxHQUFHLENBQUNDLE1BQU0sRUFBRSIsImZpbGUiOiIwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICd1bmktcGFnZXMnO2ltcG9ydCBBcHAgZnJvbSAnLi9BcHAnXG5cblxuaW1wb3J0IFZ1ZSBmcm9tICd2dWUnXG5pbXBvcnQgJy4vdW5pLnByb21pc2lmeS5hZGFwdG9yJ1xuVnVlLmNvbmZpZy5wcm9kdWN0aW9uVGlwID0gZmFsc2VcbkFwcC5tcFR5cGUgPSAnYXBwJ1xuY29uc3QgYXBwID0gbmV3IFZ1ZSh7XG4gIC4uLkFwcFxufSlcbmFwcC4kbW91bnQoKVxuXG5cblxuXG5cblxuXG5cblxuXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///0\n"); /***/ }), /* 1 */ @@ -148,9 +148,6 @@ if (uni.restoreGlobal) { __definePage('pages/index/index', function () { return Vue.extend(__webpack_require__(/*! pages/index/index.vue?mpType=page */ 7).default); }); -__definePage('pages/index/chat', function () { - return Vue.extend(__webpack_require__(/*! pages/index/chat.vue?mpType=page */ 208).default); -}); /***/ }), /* 7 */ @@ -293,7 +290,11 @@ var render = function () { _c("image", { staticClass: _vm._$s("7-" + $30, "sc", "pic"), attrs: { - src: _vm._$s("7-" + $30, "a-src", item.pic), + src: _vm._$s( + "7-" + $30, + "a-src", + item.type == 1 ? _vm.avatar : item.pic + ), _i: "7-" + $30, }, }), @@ -1057,7 +1058,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _HBu /***/ (function(module, exports, __webpack_require__) { "use strict"; -eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nvar _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 4);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 33));\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 22));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 35));\nvar base64 = _interopRequireWildcard(__webpack_require__(/*! base-64 */ 36));\nvar _cryptoJs = _interopRequireDefault(__webpack_require__(/*! ../../static/crypto-js/crypto-js.js */ 40));\nvar _parser = _interopRequireDefault(__webpack_require__(/*! ../../static/fast-xml-parser/src/parser */ 198));\nvar utf8 = _interopRequireWildcard(__webpack_require__(/*! utf8 */ 207));\nvar _bingMath = _interopRequireDefault(__webpack_require__(/*! @/components/bing-math/bing-math.vue */ 10));\nfunction _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); }\nfunction _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; }\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n components: {\n 'bing-math': _bingMath.default\n },\n data: function data() {\n return {\n talkList: [],\n ajax: {\n rows: 15,\n //每页数量\n page: 1,\n //页码\n flag: false,\n // 请求开关\n loading: false,\n // 加载中\n loadText: '正在获取消息'\n },\n keyboardHeight: 0,\n showplc: true,\n content: '',\n c_content: '',\n n_content: '',\n params: [],\n // 发送的消息内容\n timer: '',\n socketTask: {},\n TEXT: '',\n historyTextList: [],\n // 历史会话信息,由于最大token12000,可以结合实际使用,进行移出\n tempRes: '',\n // 临时答复保存\n socketing: false,\n // 是否正在接收\n showStop: false,\n // 是否显示中断按钮\n scrollTop: 0,\n shouldScrollToBottom: true\n };\n },\n mounted: function mounted() {\n var _this = this;\n this.$nextTick(function () {\n _this.getHistoryMsg();\n });\n uni.onKeyboardHeightChange(function (e) {\n var h = _this.keyboardHeight;\n _this.keyboardHeight = e.height;\n _this.$nextTick(function () {\n setTimeout(function () {\n uni.pageScrollTo({\n scrollTop: 9999999,\n // 当前位置向下滚动\n duration: 300 // 滚动过渡时间为300ms,默认值为300ms\n });\n }, 0);\n });\n });\n },\n beforeDestroy: function beforeDestroy() {\n uni.offKeyboardHeightChange();\n },\n onPageScroll: function onPageScroll(e) {\n if (e.scrollTop < 5) {\n this.getHistoryMsg();\n }\n },\n watch: {\n n_content: function n_content(n, o) {\n var _this2 = this;\n // this.c_content = n;\n if (this.timer) clearInterval(this.timer);\n var cl = this.c_content.length;\n var nc = this.n_content.split('');\n this.timer = setInterval(function () {\n if (cl < nc.length) {\n _this2.c_content += nc[cl];\n cl++;\n if (cl % 6 == 0) _this2.$nextTick(function () {\n uni.pageScrollTo({\n scrollTop: 999999\n });\n });\n } else {\n // console.log(this.socketing==false, cl == nc.length);\n if (_this2.socketing == false) _this2.showStop = false;\n clearInterval(_this2.timer);\n _this2.$nextTick(function () {\n uni.pageScrollTo({\n scrollTop: 9999999\n });\n });\n }\n }, 60);\n }\n },\n methods: {\n copyText: function copyText(str) {\n uni.setClipboardData({\n data: str,\n success: function success() {\n uni.showToast({\n icon: 'none',\n title: '复制成功'\n });\n }\n });\n },\n // 获取历史消息\n getHistoryMsg: function getHistoryMsg() {\n var _this3 = this;\n return;\n if (this.ajax.flag) {\n return; //\n }\n\n var get = /*#__PURE__*/function () {\n var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var data, selector;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this3.hideLoadTips();\n _this3.ajax.flag = false;\n _context.next = 4;\n return _this3.joinHistoryMsg();\n case 4:\n data = _context.sent;\n __f__(\"log\", '----- 模拟数据格式,供参考 -----', \" at pages/index/index.vue:159\");\n __f__(\"log\", data, \" at pages/index/index.vue:160\"); // 查看请求返回的数据结构 \n\n // 获取待滚动元素选择器,解决插入数据后,滚动条定位时使用\n selector = '';\n if (_this3.ajax.page > 1) {\n // 非第一页,则取历史消息数据的第一条信息元素\n selector = \"#msg-\".concat(_this3.talkList[0].id);\n } else {\n // 第一页,则取当前消息数据的最后一条信息元素\n selector = \"#msg-\".concat(data[data.length - 1].id);\n }\n\n // 将获取到的消息数据合并到消息数组中\n _this3.talkList = [].concat((0, _toConsumableArray2.default)(data), (0, _toConsumableArray2.default)(_this3.talkList));\n\n // 数据挂载后执行,不懂的请自行阅读 Vue.js 文档对 Vue.nextTick 函数说明。\n _this3.$nextTick(function () {\n // 设置当前滚动的位置\n _this3.setPageScrollTo(selector);\n _this3.hideLoadTips(true);\n if (data.length < _this3.ajax.rows) {\n // 当前消息数据条数小于请求要求条数时,则无更多消息,不再允许请求。\n // 可在此处编写无更多消息数据时的逻辑\n } else {\n _this3.ajax.page++;\n\n // 延迟 200ms ,以保证设置窗口滚动已完成\n setTimeout(function () {\n _this3.ajax.flag = true;\n }, 200);\n }\n });\n case 11:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return function get() {\n return _ref.apply(this, arguments);\n };\n }();\n get();\n },\n // 拼接历史记录消息\n joinHistoryMsg: function joinHistoryMsg() {\n var _this4 = this;\n var join = function join() {\n var arr = [];\n\n //通过当前页码及页数,模拟数据内容\n var startIndex = (_this4.ajax.page - 1) * _this4.ajax.rows;\n var endIndex = startIndex + _this4.ajax.rows;\n for (var i = startIndex; i < endIndex; i++) {\n arr.push({\n \"id\": i,\n // 消息的ID\n \"content\": \"\\u8FD9\\u662F\\u5386\\u53F2\\u8BB0\\u5F55\\u7684\\u7B2C\".concat(i + 1, \"\\u6761\\u6D88\\u606F\"),\n // 消息内容\n \"type\": Math.random() > 0.5 ? 1 : 0,\n // 此为消息类别,设 1 为发出去的消息,0 为收到对方的消息,\n \"pic\": \"/static/avatar.png\" // 头像\n });\n }\n\n /*\n \t颠倒数组中元素的顺序。将最新的数据排在本次接口返回数据的最后面。\n \t后端接口按 消息的时间降序查找出当前页的数据后,再将本页数据按消息时间降序排序返回。\n \t这是数据的重点,因为页面滚动条和上拉加载历史的问题。\n */\n arr.reverse();\n return arr;\n };\n\n // 此处用到 ES6 的 Promise 知识,不懂的请自行学习。\n return new Promise(function (done, fail) {\n // 无数据请求接口,由 setTimeout 模拟,正式项目替换为 ajax 即可。\n setTimeout(function () {\n var data = join();\n done(data);\n }, 1500);\n });\n },\n focus: function focus() {\n // this.$nextTick(()=>{\n // setTimeout(()=>{\n // uni.pageScrollTo({\n // scrollTop: 9999999, // 当前位置向下滚动\n // duration: 300 // 滚动过渡时间为300ms,默认值为300ms\n // });\n // }, 0)\n // })\n },\n // 设置页面滚动位置\n setPageScrollTo: function setPageScrollTo(selector) {\n var view = uni.createSelectorQuery().in(this).select(selector);\n view.boundingClientRect(function (res) {\n uni.pageScrollTo({\n scrollTop: res.top - 30,\n // -30 为多显示出大半个消息的高度,示意上面还有信息。\n duration: 0\n });\n }).exec();\n },\n // 隐藏加载提示\n hideLoadTips: function hideLoadTips(flag) {\n var _this5 = this;\n if (flag) {\n this.ajax.loadText = '消息获取成功';\n setTimeout(function () {\n _this5.ajax.loading = false;\n }, 300);\n } else {\n this.ajax.loading = true;\n this.ajax.loadText = '正在获取消息';\n }\n },\n // 关闭连接\n closeSocketTask: function closeSocketTask() {\n var _this6 = this;\n try {\n clearInterval(this.timer);\n this.talkList[this.talkList.length - 1].content = this.c_content + '';\n // console.log(this.talkList[this.talkList.length - 1].content);\n // this.c_content = '';\n // this.n_content = '';\n this.socketTask.close({\n code: 500,\n // APP端存在BUG,正常关闭的code为1000,无法正常关闭,需要将code换为其他值\n complete: function complete(res) {\n _this6.showStop = false;\n __f__(\"log\", '主动断开', res, \" at pages/index/index.vue:279\");\n _this6.wsLiveFlag = false;\n }\n });\n } catch (e) {\n //TODO handle the exception\n }\n },\n // 发送信息\n send: function send() {\n var _this7 = this;\n if (!this.content) {\n uni.showToast({\n title: '请输入有效的内容',\n icon: 'none'\n });\n return;\n }\n this.showStop = true;\n // 将当前发送信息 添加到消息列表。\n var data = {\n \"id\": new Date().getTime(),\n \"content\": this.content,\n \"type\": 1,\n \"pic\": \"/static/avatar.png\"\n };\n this.TEXT = this.content;\n this.talkList.push(data);\n this.talkList.push({\n \"id\": new Date().getTime(),\n \"content\": '',\n \"type\": 2,\n \"pic\": \"/static/avatar.png\"\n });\n this.n_content = '';\n this.c_content = '';\n this.socketing = true;\n // return ;\n this.$nextTick(function () {\n // 清空内容框中的内容\n _this7.content = '';\n // uni.pageScrollTo({\n // scrollTop: 999999, // 设置一个超大值,以保证滚动条滚动到底部\n // duration: 0\n // });\n });\n\n this.sendToSpark();\n },\n sendToSpark: function sendToSpark() {\n var _this8 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var realThis;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n // let myUrl = await this.getWebSocketUrl();\n _this8.tempRes = \"\";\n realThis = _this8;\n _this8.socketTask = uni.connectSocket({\n //url: encodeURI(encodeURI(myUrl).replace(/\\+/g, '%2B')),\n url: 'wss://chat.lihaink.cn/chat' + '?timestamp=' + Date.now(),\n method: 'GET',\n success: function success(res) {\n __f__(\"log\", res, \"ws成功连接...\", \" at pages/index/index.vue:336\");\n realThis.wsLiveFlag = true;\n }\n });\n realThis.socketTask.onError(function (res) {\n __f__(\"log\", \"连接发生错误,请检查appid是否填写\", res, \" at pages/index/index.vue:341\");\n });\n realThis.socketTask.onOpen(function (res) {\n _this8.historyTextList.push({\n \"role\": \"user\",\n \"content\": _this8.TEXT\n });\n // 第一帧..........................................\n __f__(\"log\", '连接成功...', \" at pages/index/index.vue:349\");\n // let params = {\n // \"header\": {\n // \"app_id\": this.APPID,\n // \"uid\": \"aef9f963-7\"\n // },\n // \"parameter\": {\n // \"chat\": {\n // \"domain\": \"generalv2\",\n // \"temperature\": 0.5,\n // \"max_tokens\": 1024\n // }\n // },\n // \"payload\": {\n // \"message\": {\n // \"text\": this.historyTextList\n // }\n // }\n // };\n if (_this8.historyTextList.length > 9) _this8.params = JSON.parse(JSON.stringify(_this8.historyTextList.splice(-9)));else _this8.params = JSON.parse(JSON.stringify(_this8.historyTextList));\n _this8.isSurpass();\n realThis.socketTask.send({\n // 发送消息,,都用uni的官方版本\n data: JSON.stringify(_this8.params),\n success: function success() {\n __f__(\"log\", '第一帧发送成功', \" at pages/index/index.vue:375\");\n }\n });\n });\n\n // 接受到消息时\n realThis.socketTask.onMessage(function (res) {\n __f__(\"log\", '收到API返回的内容:', res.data, \" at pages/index/index.vue:382\");\n var obj = JSON.parse(res.data);\n // console.log(\"我打印的\"+obj.payload);\n if (!realThis.wsLiveFlag) return;\n var dataArray = obj.payload.choices.text;\n for (var i = 0; i < dataArray.length; i++) {\n _this8.talkList[_this8.talkList.length - 1].content += dataArray[i].content;\n _this8.n_content = _this8.talkList[_this8.talkList.length - 1].content;\n realThis.tempRes = realThis.tempRes + dataArray[i].content;\n }\n var temp = JSON.parse(res.data);\n // console.log(\"0726\",temp.header.code)\n if (temp.header.code !== 0) {\n _this8.socketing = false;\n __f__(\"log\", \"\".concat(temp.header.code, \":\").concat(temp.message), \" at pages/index/index.vue:396\");\n realThis.socketTask.close({\n success: function success(res) {\n __f__(\"log\", '关闭成功', res, \" at pages/index/index.vue:399\");\n realThis.wsLiveFlag = false;\n },\n fail: function fail(err) {\n __f__(\"log\", '关闭失败', err, \" at pages/index/index.vue:403\");\n }\n });\n }\n if (temp.header.code === 0) {\n if (res.data && temp.header.status === 2) {\n _this8.socketing = false;\n _this8.historyTextList.push({\n \"role\": \"assistant\",\n \"content\": _this8.tempRes\n });\n setTimeout(function () {\n realThis.socketTask.close({\n success: function success(res) {\n __f__(\"log\", '关闭成功', res, \" at pages/index/index.vue:417\");\n realThis.wsLiveFlag = false;\n },\n fail: function fail(err) {\n // console.log('关闭失败', err)\n }\n });\n }, 1000);\n }\n }\n });\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n // 判断文字是否超过五千字\n isSurpass: function isSurpass() {\n var sum = this.params.reduce(function (accumulator, currentValue) {\n return accumulator + currentValue.content;\n }, '');\n if (sum.length > 5000) {\n this.params.shift();\n return this.isSurpass();\n } else {\n __f__(\"log\", \"\\u672C\\u6B21\\u53D1\\u9001\".concat(sum.length, \"\\u5B57\"), \" at pages/index/index.vue:438\");\n return sum;\n }\n },\n // 鉴权\n getWebSocketUrl: function getWebSocketUrl() {\n var _this9 = this;\n return new Promise(function (resolve, reject) {\n // https://spark-api.xf-yun.com/v1.1/chat V1.5 domain general\n // https://spark-api.xf-yun.com/v2.1/chat V2.0 domain generalv2\n var url = \"wss://spark-api.xf-yun.com/v2.1/chat\";\n var host = \"spark-api.xf-yun.com\";\n var apiKeyName = \"api_key\";\n var date = new Date().toGMTString();\n var algorithm = \"hmac-sha256\";\n var headers = \"host date request-line\";\n var signatureOrigin = \"host: \".concat(host, \"\\ndate: \").concat(date, \"\\nGET /v2.1/chat HTTP/1.1\");\n var signatureSha = _cryptoJs.default.HmacSHA256(signatureOrigin, _this9.APISecret);\n var signature = _cryptoJs.default.enc.Base64.stringify(signatureSha);\n var authorizationOrigin = \"\".concat(apiKeyName, \"=\\\"\").concat(_this9.APIKey, \"\\\", algorithm=\\\"\").concat(algorithm, \"\\\", headers=\\\"\").concat(headers, \"\\\", signature=\\\"\").concat(signature, \"\\\"\");\n var authorization = base64.encode(authorizationOrigin);\n url = \"\".concat(url, \"?authorization=\").concat(authorization, \"&date=\").concat(encodeURI(date), \"&host=\").concat(host);\n\n // console.log(url)\n resolve(url);\n });\n },\n // 滚动到头部\n bindScroll: function bindScroll() {\n if (this.userId == 0) {\n this.getHistory();\n this.getproductInfo();\n this.getOrderInfo();\n this.getRefundDetail();\n this.getStoreDetail();\n } else {\n this.getMerHistory();\n }\n },\n // 当滑动页面时,收起键盘,与微信聊天效果保持一致\n touchmove: function touchmove(e) {\n uni.hideKeyboard();\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 21)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvaW5kZXgvaW5kZXgudnVlIl0sIm5hbWVzIjpbImNvbXBvbmVudHMiLCJkYXRhIiwidGFsa0xpc3QiLCJhamF4Iiwicm93cyIsInBhZ2UiLCJmbGFnIiwibG9hZGluZyIsImxvYWRUZXh0Iiwia2V5Ym9hcmRIZWlnaHQiLCJzaG93cGxjIiwiY29udGVudCIsImNfY29udGVudCIsIm5fY29udGVudCIsInBhcmFtcyIsInRpbWVyIiwic29ja2V0VGFzayIsIlRFWFQiLCJoaXN0b3J5VGV4dExpc3QiLCJ0ZW1wUmVzIiwic29ja2V0aW5nIiwic2hvd1N0b3AiLCJzY3JvbGxUb3AiLCJzaG91bGRTY3JvbGxUb0JvdHRvbSIsIm1vdW50ZWQiLCJ1bmkiLCJzZXRUaW1lb3V0IiwiZHVyYXRpb24iLCJiZWZvcmVEZXN0cm95Iiwib25QYWdlU2Nyb2xsIiwid2F0Y2giLCJjbCIsImNsZWFySW50ZXJ2YWwiLCJtZXRob2RzIiwiY29weVRleHQiLCJzdWNjZXNzIiwiaWNvbiIsInRpdGxlIiwiZ2V0SGlzdG9yeU1zZyIsInNlbGVjdG9yIiwiZ2V0Iiwiam9pbkhpc3RvcnlNc2ciLCJhcnIiLCJkb25lIiwiZm9jdXMiLCJzZXRQYWdlU2Nyb2xsVG8iLCJ2aWV3IiwiaGlkZUxvYWRUaXBzIiwiY2xvc2VTb2NrZXRUYXNrIiwiY29kZSIsImNvbXBsZXRlIiwic2VuZCIsInNlbmRUb1NwYXJrIiwicmVhbFRoaXMiLCJ1cmwiLCJtZXRob2QiLCJzcGxpY2UiLCJmYWlsIiwiaXNTdXJwYXNzIiwiZ2V0V2ViU29ja2V0VXJsIiwiYXBpS2V5TmFtZSIsInJlc29sdmUiLCJiaW5kU2Nyb2xsIiwidG91Y2htb3ZlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQTJDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztlQUNBO0VBQ0FBO0lBQ0E7RUFDQTtFQUNBQztJQUNB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YXRlPlxyXG4gIDx2aWV3IGNsYXNzPVwid3JhcHBlclwiIEB0b3VjaG1vdmU9XCJ0b3VjaG1vdmVcIj5cclxuICAgIDx2aWV3IGNsYXNzPVwidGlwcyBjb2xvcl9mZmYgc2l6ZV8xMiBhbGlnbl9jXCIgOmNsYXNzPVwieyAnc2hvdyc6YWpheC5sb2FkaW5nIH1cIiBAdGFwPVwiZ2V0SGlzdG9yeU1zZ1wiPnt7YWpheC5sb2FkVGV4dH19XHJcbiAgICA8L3ZpZXc+XHJcbiAgICA8dmlldyBjbGFzcz1cInBsYWNlaG9sZGVyXCI+PC92aWV3PlxyXG4gICAgPHZpZXcgY2xhc3M9XCJib3gtMVwiIGlkPVwibGlzdC1ib3hcIiByZWY9XCJib3hcIj5cclxuICAgICAgPHZpZXcgY2xhc3M9XCJ0YWxrLWxpc3RcIj5cclxuICAgICAgICA8dmlldyB2LWZvcj1cIihpdGVtLGluZGV4KSBpbiB0YWxrTGlzdFwiIDprZXk9XCJpbmRleFwiIDppZD1cImBtc2ctJHtpdGVtLmlkfWBcIj5cclxuICAgICAgICAgIDx2aWV3IGNsYXNzPVwiaXRlbSBmbGV4X2NvbFwiIDpjbGFzcz1cIiBpdGVtLnR5cGUgPT0gMSA/ICdwdXNoJzoncHVsbCcgXCI+XHJcbiAgICAgICAgICAgIDxpbWFnZSA6c3JjPVwiaXRlbS5waWNcIiBtb2RlPVwiYXNwZWN0RmlsbFwiIGNsYXNzPVwicGljXCI+PC9pbWFnZT5cclxuICAgICAgICAgICAgPHZpZXcgdi1pZj1cInRhbGtMaXN0Lmxlbmd0aC0xPT1pbmRleFwiIGNsYXNzPVwiY29udGVudCBtdWx0aWxpbmUtdGV4dFwiPlxyXG4gICAgICAgICAgICAgIDwhLS0gPHJpY2gtdGV4dCA6bm9kZXM9XCJpdGVtLmNvbnRlbnRcIj48L3JpY2gtdGV4dD4gLS0+XHJcbiAgICAgICAgICAgICAgPGJpbmctbWF0aCB2LWlmPVwiY19jb250ZW50IT0nJ1wiIDprZXk9XCJgbWF0aC0ke2l0ZW0uaWR9YFwiIGNsYXNzPVwiYmluZy1tYXRoXCIgOmxhdGV4PVwiY19jb250ZW50XCI+PC9iaW5nLW1hdGg+XHJcbiAgICAgICAgICAgICAgPHZpZXcgdi1lbHNlIGNsYXNzPVwiYmxpbmtpbmctYm94XCI+fDwvdmlldz5cclxuICAgICAgICAgICAgPC92aWV3PlxyXG4gICAgICAgICAgICA8dmlldyB2LWVsc2UgY2xhc3M9XCJjb250ZW50IG11bHRpbGluZS10ZXh0XCI+XHJcbiAgICAgICAgICAgICAgPCEtLSA8cmljaC10ZXh0IDpub2Rlcz1cIml0ZW0uY29udGVudFwiPjwvcmljaC10ZXh0PiAtLT5cclxuICAgICAgICAgICAgICA8YmluZy1tYXRoIDprZXk9XCJgbWF0aC0ke2l0ZW0uaWR9YFwiIGNsYXNzPVwiYmluZy1tYXRoXCIgOmxhdGV4PVwiaXRlbS5jb250ZW50XCI+PC9iaW5nLW1hdGg+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPHZpZXcgaWQ9XCJib3R0b20tYm94XCI+PC92aWV3PlxyXG4gICAgICA8L3ZpZXc+XHJcbiAgICA8L3ZpZXc+XHJcbiAgICA8dW5pLXRyYW5zaXRpb24gY3VzdG9tLWNsYXNzPVwiYm94LTJcIiBtb2RlLWNsYXNzPVwic2xpZGUtbGVmdFwiIDpzaG93PVwic2hvd1N0b3BcIj5cclxuICAgICAgPHZpZXcgY2xhc3M9XCJmbGV4X2NvbFwiPlxyXG4gICAgICAgIDx2aWV3IGNsYXNzPVwiZmxleF9ncm93IGNvbnRlbnQgZG93bnNvY2tldFwiIEBjbGljaz1cImNsb3NlU29ja2V0VGFza1wiPuS4reaWrei/nuaOpTwvdmlldz5cclxuICAgICAgPC92aWV3PlxyXG4gICAgPC91bmktdHJhbnNpdGlvbj5cclxuICAgIDx1bmktdHJhbnNpdGlvbiBjdXN0b20tY2xhc3M9XCJib3gtMlwiIG1vZGUtY2xhc3M9XCJzbGlkZS1yaWdodFwiIDpzaG93PVwiIXNob3dTdG9wXCI+XHJcbiAgICAgIDx2aWV3IGNsYXNzPVwiZmxleF9jb2xcIj5cclxuICAgICAgICA8dmlldyBjbGFzcz1cImZsZXhfZ3Jvd1wiPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJjb250ZW50XCIgdi1tb2RlbD1cImNvbnRlbnRcIiBwbGFjZWhvbGRlcj1cIuivt+i+k+WFpeiBiuWkqeWGheWuuVwiIEBmb2N1cz1cImZvY3VzXCIgQGNvbmZpcm09XCJzZW5kXCJcclxuICAgICAgICAgICAgcGxhY2Vob2xkZXItc3R5bGU9XCJjb2xvcjojREREO1wiIDpjdXJzb3Itc3BhY2luZz1cIjZcIj5cclxuICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInNlbmRcIiBAdGFwPVwic2VuZFwiPuWPkemAgTwvYnV0dG9uPlxyXG4gICAgICA8L3ZpZXc+XHJcbiAgICA8L3VuaS10cmFuc2l0aW9uPlxyXG4gICAgPCEtLSA8dmlldyB2LXNob3c9XCJzaG93cGxjXCIgOnN0eWxlPVwieydtaW4taGVpZ2h0JzogKGtleWJvYXJkSGVpZ2h0KzIwMCkrJ3B4J31cIiBjbGFzcz1cInBsYWNlaG9sZGVyXCI+5pi+56S6PC92aWV3PiAtLT5cclxuICA8L3ZpZXc+XHJcbjwvdGVtcGxhdGU+XHJcblxyXG48c2NyaXB0PlxyXG4gIGltcG9ydCAqIGFzIGJhc2U2NCBmcm9tIFwiYmFzZS02NFwiXHJcbiAgaW1wb3J0IENyeXB0b0pTIGZyb20gJy4uLy4uL3N0YXRpYy9jcnlwdG8tanMvY3J5cHRvLWpzLmpzJ1xyXG4gIGltcG9ydCBwYXJzZXIgZnJvbSAnLi4vLi4vc3RhdGljL2Zhc3QteG1sLXBhcnNlci9zcmMvcGFyc2VyJ1xyXG4gIGltcG9ydCAqIGFzIHV0ZjggZnJvbSBcInV0ZjhcIlxyXG4gIGltcG9ydCBCaW5nTWF0aCBmcm9tIFwiQC9jb21wb25lbnRzL2JpbmctbWF0aC9iaW5nLW1hdGgudnVlXCJcclxuICBleHBvcnQgZGVmYXVsdCB7XHJcbiAgICBjb21wb25lbnRzOiB7XHJcbiAgICAgICdiaW5nLW1hdGgnOiBCaW5nTWF0aFxyXG4gICAgfSxcclxuICAgIGRhdGEoKSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgdGFsa0xpc3Q6IFtdLFxyXG4gICAgICAgIGFqYXg6IHtcclxuICAgICAgICAgIHJvd3M6IDE1LCAvL+avj+mhteaVsOmHj1xyXG4gICAgICAgICAgcGFnZTogMSwgLy/pobXnoIFcclxuICAgICAgICAgIGZsYWc6IGZhbHNlLCAvLyDor7fmsYLlvIDlhbNcclxuICAgICAgICAgIGxvYWRpbmc6IGZhbHNlLCAvLyDliqDovb3kuK1cclxuICAgICAgICAgIGxvYWRUZXh0OiAn5q2j5Zyo6I635Y+W5raI5oGvJ1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAga2V5Ym9hcmRIZWlnaHQ6IDAsXHJcbiAgICAgICAgc2hvd3BsYzogdHJ1ZSxcclxuICAgICAgICBjb250ZW50OiAnJyxcclxuICAgICAgICBjX2NvbnRlbnQ6ICcnLFxyXG4gICAgICAgIG5fY29udGVudDogJycsXHJcbiAgICAgICAgcGFyYW1zOiBbXSwgLy8g5Y+R6YCB55qE5raI5oGv5YaF5a65XHJcbiAgICAgICAgdGltZXI6ICcnLFxyXG4gICAgICAgIHNvY2tldFRhc2s6IHt9LFxyXG4gICAgICAgIFRFWFQ6ICcnLFxyXG4gICAgICAgIGhpc3RvcnlUZXh0TGlzdDogW10sIC8vIOWOhuWPsuS8muivneS/oeaBr++8jOeUseS6juacgOWkp3Rva2VuMTIwMDAs5Y+v5Lul57uT5ZCI5a6e6ZmF5L2/55So77yM6L+b6KGM56e75Ye6XHJcbiAgICAgICAgdGVtcFJlczogJycsIC8vIOS4tOaXtuetlOWkjeS/neWtmFxyXG4gICAgICAgIHNvY2tldGluZzogZmFsc2UsIC8vIOaYr+WQpuato+WcqOaOpeaUtlxyXG4gICAgICAgIHNob3dTdG9wOiBmYWxzZSwgLy8g5piv5ZCm5pi+56S65Lit5pat5oyJ6ZKuXHJcbiAgICAgICAgc2Nyb2xsVG9wOiAwLFxyXG4gICAgICAgIHNob3VsZFNjcm9sbFRvQm90dG9tOiB0cnVlXHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgICBtb3VudGVkKCkge1xyXG4gICAgICB0aGlzLiRuZXh0VGljaygoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5nZXRIaXN0b3J5TXNnKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICB1bmkub25LZXlib2FyZEhlaWdodENoYW5nZShlID0+IHtcclxuICAgICAgICBsZXQgaCA9IHRoaXMua2V5Ym9hcmRIZWlnaHQ7XHJcbiAgICAgICAgdGhpcy5rZXlib2FyZEhlaWdodCA9IGUuaGVpZ2h0O1xyXG4gICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHtcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB1bmkucGFnZVNjcm9sbFRvKHtcclxuICAgICAgICAgICAgICBzY3JvbGxUb3A6IDk5OTk5OTksIC8vIOW9k+WJjeS9jee9ruWQkeS4i+a7muWKqFxyXG4gICAgICAgICAgICAgIGR1cmF0aW9uOiAzMDAgLy8g5rua5Yqo6L+H5rih5pe26Ze05Li6MzAwbXPvvIzpu5jorqTlgLzkuLozMDBtc1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0sIDApXHJcbiAgICAgICAgfSlcclxuICAgICAgfSlcclxuICAgIH0sXHJcbiAgICBiZWZvcmVEZXN0cm95KCkge1xyXG4gICAgICAvLyAjaWZkZWYgQVBQLVBMVVNcclxuICAgICAgdW5pLm9mZktleWJvYXJkSGVpZ2h0Q2hhbmdlKCk7XHJcbiAgICAgIC8vICNlbmRpZlxyXG4gICAgfSxcclxuICAgIG9uUGFnZVNjcm9sbChlKSB7XHJcbiAgICAgIGlmIChlLnNjcm9sbFRvcCA8IDUpIHtcclxuICAgICAgICB0aGlzLmdldEhpc3RvcnlNc2coKTtcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIHdhdGNoOiB7XHJcbiAgICAgIG5fY29udGVudChuLCBvKSB7XHJcbiAgICAgICAgLy8gdGhpcy5jX2NvbnRlbnQgPSBuO1xyXG4gICAgICAgIGlmICh0aGlzLnRpbWVyKSBjbGVhckludGVydmFsKHRoaXMudGltZXIpO1xyXG4gICAgICAgIGxldCBjbCA9IHRoaXMuY19jb250ZW50Lmxlbmd0aDtcclxuICAgICAgICBsZXQgbmMgPSB0aGlzLm5fY29udGVudC5zcGxpdCgnJyk7XHJcbiAgICAgICAgdGhpcy50aW1lciA9IHNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgICAgIGlmIChjbCA8IG5jLmxlbmd0aCkge1xyXG4gICAgICAgICAgICB0aGlzLmNfY29udGVudCArPSBuY1tjbF07XHJcbiAgICAgICAgICAgIGNsKys7XHJcbiAgICAgICAgICAgIGlmIChjbCAlIDYgPT0gMCkgdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHVuaS5wYWdlU2Nyb2xsVG8oe1xyXG4gICAgICAgICAgICAgICAgc2Nyb2xsVG9wOiA5OTk5OTksXHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuc29ja2V0aW5nPT1mYWxzZSwgY2wgPT0gbmMubGVuZ3RoKTtcclxuICAgICAgICAgICAgaWYgKHRoaXMuc29ja2V0aW5nID09IGZhbHNlKSB0aGlzLnNob3dTdG9wID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy50aW1lcik7XHJcbiAgICAgICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHtcclxuICAgICAgICAgICAgICB1bmkucGFnZVNjcm9sbFRvKHtcclxuICAgICAgICAgICAgICAgIHNjcm9sbFRvcDogOTk5OTk5OSxcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sIDYwKVxyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICAgIG1ldGhvZHM6IHtcclxuICAgICAgY29weVRleHQoc3RyKSB7XHJcbiAgICAgICAgdW5pLnNldENsaXBib2FyZERhdGEoe1xyXG4gICAgICAgICAgZGF0YTogc3RyLFxyXG4gICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24oKSB7XHJcbiAgICAgICAgICAgIHVuaS5zaG93VG9hc3Qoe1xyXG4gICAgICAgICAgICAgIGljb246ICdub25lJyxcclxuICAgICAgICAgICAgICB0aXRsZTogJ+WkjeWItuaIkOWKnydcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIOiOt+WPluWOhuWPsua2iOaBr1xyXG4gICAgICBnZXRIaXN0b3J5TXNnKCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgICBpZiAodGhpcy5hamF4LmZsYWcpIHtcclxuICAgICAgICAgIHJldHVybjsgLy9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBnZXQgPSBhc3luYyAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmhpZGVMb2FkVGlwcygpO1xyXG4gICAgICAgICAgdGhpcy5hamF4LmZsYWcgPSBmYWxzZTtcclxuICAgICAgICAgIGxldCBkYXRhID0gYXdhaXQgdGhpcy5qb2luSGlzdG9yeU1zZygpO1xyXG5cclxuICAgICAgICAgIGNvbnNvbGUubG9nKCctLS0tLSDmqKHmi5/mlbDmja7moLzlvI/vvIzkvpvlj4LogIMgLS0tLS0nKTtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKGRhdGEpOyAvLyDmn6XnnIvor7fmsYLov5Tlm57nmoTmlbDmja7nu5PmnoQgXHJcblxyXG4gICAgICAgICAgLy8g6I635Y+W5b6F5rua5Yqo5YWD57Sg6YCJ5oup5Zmo77yM6Kej5Yaz5o+S5YWl5pWw5o2u5ZCO77yM5rua5Yqo5p2h5a6a5L2N5pe25L2/55SoXHJcbiAgICAgICAgICBsZXQgc2VsZWN0b3IgPSAnJztcclxuXHJcbiAgICAgICAgICBpZiAodGhpcy5hamF4LnBhZ2UgPiAxKSB7XHJcbiAgICAgICAgICAgIC8vIOmdnuesrOS4gOmhte+8jOWImeWPluWOhuWPsua2iOaBr+aVsOaNrueahOesrOS4gOadoeS/oeaBr+WFg+e0oFxyXG4gICAgICAgICAgICBzZWxlY3RvciA9IGAjbXNnLSR7dGhpcy50YWxrTGlzdFswXS5pZH1gO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgLy8g56ys5LiA6aG177yM5YiZ5Y+W5b2T5YmN5raI5oGv5pWw5o2u55qE5pyA5ZCO5LiA5p2h5L+h5oGv5YWD57SgXHJcbiAgICAgICAgICAgIHNlbGVjdG9yID0gYCNtc2ctJHtkYXRhW2RhdGEubGVuZ3RoLTFdLmlkfWA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLy8g5bCG6I635Y+W5Yiw55qE5raI5oGv5pWw5o2u5ZCI5bm25Yiw5raI5oGv5pWw57uE5LitXHJcbiAgICAgICAgICB0aGlzLnRhbGtMaXN0ID0gWy4uLmRhdGEsIC4uLnRoaXMudGFsa0xpc3RdO1xyXG5cclxuICAgICAgICAgIC8vIOaVsOaNruaMgui9veWQjuaJp+ihjO+8jOS4jeaHgueahOivt+iHquihjOmYheivuyBWdWUuanMg5paH5qGj5a+5IFZ1ZS5uZXh0VGljayDlh73mlbDor7TmmI7jgIJcclxuICAgICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHtcclxuICAgICAgICAgICAgLy8g6K6+572u5b2T5YmN5rua5Yqo55qE5L2N572uXHJcbiAgICAgICAgICAgIHRoaXMuc2V0UGFnZVNjcm9sbFRvKHNlbGVjdG9yKTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuaGlkZUxvYWRUaXBzKHRydWUpO1xyXG5cclxuICAgICAgICAgICAgaWYgKGRhdGEubGVuZ3RoIDwgdGhpcy5hamF4LnJvd3MpIHtcclxuICAgICAgICAgICAgICAvLyDlvZPliY3mtojmga/mlbDmja7mnaHmlbDlsI/kuo7or7fmsYLopoHmsYLmnaHmlbDml7bvvIzliJnml6Dmm7TlpJrmtojmga/vvIzkuI3lho3lhYHorrjor7fmsYLjgIJcclxuICAgICAgICAgICAgICAvLyDlj6/lnKjmraTlpITnvJblhpnml6Dmm7TlpJrmtojmga/mlbDmja7ml7bnmoTpgLvovpFcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLmFqYXgucGFnZSsrO1xyXG5cclxuICAgICAgICAgICAgICAvLyDlu7bov58gMjAwbXMg77yM5Lul5L+d6K+B6K6+572u56qX5Y+j5rua5Yqo5bey5a6M5oiQXHJcbiAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmFqYXguZmxhZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgfSwgMjAwKVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9XHJcbiAgICAgICAgZ2V0KCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIOaLvOaOpeWOhuWPsuiusOW9lea2iOaBr1xyXG4gICAgICBqb2luSGlzdG9yeU1zZygpIHtcclxuICAgICAgICBsZXQgam9pbiA9ICgpID0+IHtcclxuICAgICAgICAgIGxldCBhcnIgPSBbXTtcclxuXHJcbiAgICAgICAgICAvL+mAmui/h+W9k+WJjemhteeggeWPiumhteaVsO+8jOaooeaLn+aVsOaNruWGheWuuVxyXG4gICAgICAgICAgbGV0IHN0YXJ0SW5kZXggPSAodGhpcy5hamF4LnBhZ2UgLSAxKSAqIHRoaXMuYWpheC5yb3dzO1xyXG4gICAgICAgICAgbGV0IGVuZEluZGV4ID0gc3RhcnRJbmRleCArIHRoaXMuYWpheC5yb3dzO1xyXG4gICAgICAgICAgZm9yIChsZXQgaSA9IHN0YXJ0SW5kZXg7IGkgPCBlbmRJbmRleDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGFyci5wdXNoKHtcclxuICAgICAgICAgICAgICBcImlkXCI6IGksIC8vIOa2iOaBr+eahElEXHJcbiAgICAgICAgICAgICAgXCJjb250ZW50XCI6IGDov5nmmK/ljoblj7LorrDlvZXnmoTnrKwke2krMX3mnaHmtojmga9gLCAvLyDmtojmga/lhoXlrrlcclxuICAgICAgICAgICAgICBcInR5cGVcIjogTWF0aC5yYW5kb20oKSA+IDAuNSA/IDEgOiAwLCAvLyDmraTkuLrmtojmga/nsbvliKvvvIzorr4gMSDkuLrlj5Hlh7rljrvnmoTmtojmga/vvIwwIOS4uuaUtuWIsOWvueaWueeahOa2iOaBryxcclxuICAgICAgICAgICAgICBcInBpY1wiOiBcIi9zdGF0aWMvYXZhdGFyLnBuZ1wiIC8vIOWktOWDj1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC8qXHJcbiAgICAgICAgICBcdOmioOWAkuaVsOe7hOS4reWFg+e0oOeahOmhuuW6j+OAguWwhuacgOaWsOeahOaVsOaNruaOkuWcqOacrOasoeaOpeWPo+i/lOWbnuaVsOaNrueahOacgOWQjumdouOAglxyXG4gICAgICAgICAgXHTlkI7nq6/mjqXlj6PmjIkg5raI5oGv55qE5pe26Ze06ZmN5bqP5p+l5om+5Ye65b2T5YmN6aG155qE5pWw5o2u5ZCO77yM5YaN5bCG5pys6aG15pWw5o2u5oyJ5raI5oGv5pe26Ze06ZmN5bqP5o6S5bqP6L+U5Zue44CCXHJcbiAgICAgICAgICBcdOi/meaYr+aVsOaNrueahOmHjeeCue+8jOWboOS4uumhtemdoua7muWKqOadoeWSjOS4iuaLieWKoOi9veWOhuWPsueahOmXrumimOOAglxyXG4gICAgICAgICAgICovXHJcbiAgICAgICAgICBhcnIucmV2ZXJzZSgpO1xyXG5cclxuICAgICAgICAgIHJldHVybiBhcnI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyDmraTlpITnlKjliLAgRVM2IOeahCBQcm9taXNlIOefpeivhu+8jOS4jeaHgueahOivt+iHquihjOWtpuS5oOOAglxyXG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgoZG9uZSwgZmFpbCkgPT4ge1xyXG4gICAgICAgICAgLy8g5peg5pWw5o2u6K+35rGC5o6l5Y+j77yM55SxIHNldFRpbWVvdXQg5qih5ouf77yM5q2j5byP6aG555uu5pu/5o2i5Li6IGFqYXgg5Y2z5Y+v44CCXHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgbGV0IGRhdGEgPSBqb2luKCk7XHJcbiAgICAgICAgICAgIGRvbmUoZGF0YSk7XHJcbiAgICAgICAgICB9LCAxNTAwKTtcclxuICAgICAgICB9KVxyXG4gICAgICB9LFxyXG4gICAgICBmb2N1cygpIHtcclxuICAgICAgICAvLyB0aGlzLiRuZXh0VGljaygoKT0+e1xyXG4gICAgICAgIC8vICAgc2V0VGltZW91dCgoKT0+e1xyXG4gICAgICAgIC8vICAgICB1bmkucGFnZVNjcm9sbFRvKHtcclxuICAgICAgICAvLyAgICAgICBzY3JvbGxUb3A6IDk5OTk5OTksIC8vIOW9k+WJjeS9jee9ruWQkeS4i+a7muWKqFxyXG4gICAgICAgIC8vICAgICAgIGR1cmF0aW9uOiAzMDAgLy8g5rua5Yqo6L+H5rih5pe26Ze05Li6MzAwbXPvvIzpu5jorqTlgLzkuLozMDBtc1xyXG4gICAgICAgIC8vICAgICB9KTtcclxuICAgICAgICAvLyAgIH0sIDApXHJcbiAgICAgICAgLy8gfSlcclxuICAgICAgfSxcclxuICAgICAgLy8g6K6+572u6aG16Z2i5rua5Yqo5L2N572uXHJcbiAgICAgIHNldFBhZ2VTY3JvbGxUbyhzZWxlY3Rvcikge1xyXG4gICAgICAgIGxldCB2aWV3ID0gdW5pLmNyZWF0ZVNlbGVjdG9yUXVlcnkoKS5pbih0aGlzKS5zZWxlY3Qoc2VsZWN0b3IpO1xyXG4gICAgICAgIHZpZXcuYm91bmRpbmdDbGllbnRSZWN0KChyZXMpID0+IHtcclxuICAgICAgICAgIHVuaS5wYWdlU2Nyb2xsVG8oe1xyXG4gICAgICAgICAgICBzY3JvbGxUb3A6IHJlcy50b3AgLSAzMCwgLy8gLTMwIOS4uuWkmuaYvuekuuWHuuWkp+WNiuS4qua2iOaBr+eahOmrmOW6pu+8jOekuuaEj+S4iumdoui/mOacieS/oeaBr+OAglxyXG4gICAgICAgICAgICBkdXJhdGlvbjogMFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSkuZXhlYygpO1xyXG4gICAgICB9LFxyXG4gICAgICAvLyDpmpDol4/liqDovb3mj5DnpLpcclxuICAgICAgaGlkZUxvYWRUaXBzKGZsYWcpIHtcclxuICAgICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgICAgdGhpcy5hamF4LmxvYWRUZXh0ID0gJ+a2iOaBr+iOt+WPluaIkOWKnyc7XHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5hamF4LmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH0sIDMwMCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuYWpheC5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuYWpheC5sb2FkVGV4dCA9ICfmraPlnKjojrflj5bmtojmga8nO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgLy8g5YWz6Zet6L+e5o6lXHJcbiAgICAgIGNsb3NlU29ja2V0VGFzaygpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLnRpbWVyKTtcclxuICAgICAgICAgIHRoaXMudGFsa0xpc3RbdGhpcy50YWxrTGlzdC5sZW5ndGggLSAxXS5jb250ZW50ID0gdGhpcy5jX2NvbnRlbnQgKyAnJztcclxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHRoaXMudGFsa0xpc3RbdGhpcy50YWxrTGlzdC5sZW5ndGggLSAxXS5jb250ZW50KTtcclxuICAgICAgICAgIC8vIHRoaXMuY19jb250ZW50ID0gJyc7XHJcbiAgICAgICAgICAvLyB0aGlzLm5fY29udGVudCA9ICcnO1xyXG4gICAgICAgICAgdGhpcy5zb2NrZXRUYXNrLmNsb3NlKHtcclxuICAgICAgICAgICAgY29kZTogNTAwLCAgICAgIC8vIEFQUOerr+WtmOWcqEJVRyzmraPluLjlhbPpl63nmoRjb2Rl5Li6MTAwMCzml6Dms5XmraPluLjlhbPpl60s6ZyA6KaB5bCGY29kZeaNouS4uuWFtuS7luWAvFxyXG4gICAgICAgICAgICBjb21wbGV0ZTogKHJlcyk9PntcclxuICAgICAgICAgICAgICB0aGlzLnNob3dTdG9wID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coJ+S4u+WKqOaWreW8gCcsIHJlcyk7XHJcbiAgICAgICAgICAgICAgdGhpcy53c0xpdmVGbGFnID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgLy9UT0RPIGhhbmRsZSB0aGUgZXhjZXB0aW9uXHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICAvLyDlj5HpgIHkv6Hmga9cclxuICAgICAgc2VuZCgpIHtcclxuICAgICAgICBpZiAoIXRoaXMuY29udGVudCkge1xyXG4gICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgIHRpdGxlOiAn6K+36L6T5YWl5pyJ5pWI55qE5YaF5a65JyxcclxuICAgICAgICAgICAgaWNvbjogJ25vbmUnXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNob3dTdG9wID0gdHJ1ZTtcclxuICAgICAgICAvLyDlsIblvZPliY3lj5HpgIHkv6Hmga8g5re75Yqg5Yiw5raI5oGv5YiX6KGo44CCXHJcbiAgICAgICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgICAgICBcImlkXCI6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxyXG4gICAgICAgICAgXCJjb250ZW50XCI6IHRoaXMuY29udGVudCxcclxuICAgICAgICAgIFwidHlwZVwiOiAxLFxyXG4gICAgICAgICAgXCJwaWNcIjogXCIvc3RhdGljL2F2YXRhci5wbmdcIlxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLlRFWFQgPSB0aGlzLmNvbnRlbnQ7XHJcbiAgICAgICAgdGhpcy50YWxrTGlzdC5wdXNoKGRhdGEpO1xyXG4gICAgICAgIHRoaXMudGFsa0xpc3QucHVzaCh7XHJcbiAgICAgICAgICBcImlkXCI6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxyXG4gICAgICAgICAgXCJjb250ZW50XCI6ICcnLFxyXG4gICAgICAgICAgXCJ0eXBlXCI6IDIsXHJcbiAgICAgICAgICBcInBpY1wiOiBcIi9zdGF0aWMvYXZhdGFyLnBuZ1wiXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5uX2NvbnRlbnQgPSAnJztcclxuICAgICAgICB0aGlzLmNfY29udGVudCA9ICcnO1xyXG4gICAgICAgIHRoaXMuc29ja2V0aW5nID0gdHJ1ZTtcclxuICAgICAgICAvLyByZXR1cm4gO1xyXG4gICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHtcclxuICAgICAgICAgIC8vIOa4heepuuWGheWuueahhuS4reeahOWGheWuuVxyXG4gICAgICAgICAgdGhpcy5jb250ZW50ID0gJyc7XHJcbiAgICAgICAgICAvLyB1bmkucGFnZVNjcm9sbFRvKHtcclxuICAgICAgICAgIC8vICAgc2Nyb2xsVG9wOiA5OTk5OTksIC8vIOiuvue9ruS4gOS4qui2heWkp+WAvO+8jOS7peS/neivgea7muWKqOadoea7muWKqOWIsOW6lemDqFxyXG4gICAgICAgICAgLy8gICBkdXJhdGlvbjogMFxyXG4gICAgICAgICAgLy8gfSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICB0aGlzLnNlbmRUb1NwYXJrKCk7XHJcblxyXG4gICAgICB9LFxyXG4gICAgICBhc3luYyBzZW5kVG9TcGFyaygpIHtcclxuICAgICAgICAvLyBsZXQgbXlVcmwgPSBhd2FpdCB0aGlzLmdldFdlYlNvY2tldFVybCgpO1xyXG4gICAgICAgIHRoaXMudGVtcFJlcyA9IFwiXCI7XHJcbiAgICAgICAgbGV0IHJlYWxUaGlzID0gdGhpcztcclxuICAgICAgICB0aGlzLnNvY2tldFRhc2sgPSB1bmkuY29ubmVjdFNvY2tldCh7XHJcbiAgICAgICAgICAvL3VybDogZW5jb2RlVVJJKGVuY29kZVVSSShteVVybCkucmVwbGFjZSgvXFwrL2csICclMkInKSksXHJcbiAgICAgICAgICB1cmw6ICd3c3M6Ly9jaGF0LmxpaGFpbmsuY24vY2hhdCcgKyAnP3RpbWVzdGFtcD0nICsgRGF0ZS5ub3coKSxcclxuICAgICAgICAgIG1ldGhvZDogJ0dFVCcsXHJcbiAgICAgICAgICBzdWNjZXNzOiByZXMgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhyZXMsIFwid3PmiJDlip/ov57mjqUuLi5cIilcclxuICAgICAgICAgICAgcmVhbFRoaXMud3NMaXZlRmxhZyA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgICByZWFsVGhpcy5zb2NrZXRUYXNrLm9uRXJyb3IoKHJlcykgPT4ge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coXCLov57mjqXlj5HnlJ/plJnor6/vvIzor7fmo4Dmn6VhcHBpZOaYr+WQpuWhq+WGmVwiLCByZXMpXHJcbiAgICAgICAgfSlcclxuICAgICAgICByZWFsVGhpcy5zb2NrZXRUYXNrLm9uT3BlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmhpc3RvcnlUZXh0TGlzdC5wdXNoKHtcclxuICAgICAgICAgICAgXCJyb2xlXCI6IFwidXNlclwiLFxyXG4gICAgICAgICAgICBcImNvbnRlbnRcIjogdGhpcy5URVhUXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLy8g56ys5LiA5binLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uXHJcbiAgICAgICAgICBjb25zb2xlLmxvZygn6L+e5o6l5oiQ5YqfLi4uJylcclxuICAgICAgICAgIC8vIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgICAgICAvLyAgIFwiaGVhZGVyXCI6IHtcclxuICAgICAgICAgIC8vICAgICBcImFwcF9pZFwiOiB0aGlzLkFQUElELFxyXG4gICAgICAgICAgLy8gICAgIFwidWlkXCI6IFwiYWVmOWY5NjMtN1wiXHJcbiAgICAgICAgICAvLyAgIH0sXHJcbiAgICAgICAgICAvLyAgIFwicGFyYW1ldGVyXCI6IHtcclxuICAgICAgICAgIC8vICAgICBcImNoYXRcIjoge1xyXG4gICAgICAgICAgLy8gICAgICAgXCJkb21haW5cIjogXCJnZW5lcmFsdjJcIixcclxuICAgICAgICAgIC8vICAgICAgIFwidGVtcGVyYXR1cmVcIjogMC41LFxyXG4gICAgICAgICAgLy8gICAgICAgXCJtYXhfdG9rZW5zXCI6IDEwMjRcclxuICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAvLyAgIH0sXHJcbiAgICAgICAgICAvLyAgIFwicGF5bG9hZFwiOiB7XHJcbiAgICAgICAgICAvLyAgICAgXCJtZXNzYWdlXCI6IHtcclxuICAgICAgICAgIC8vICAgICAgIFwidGV4dFwiOiB0aGlzLmhpc3RvcnlUZXh0TGlzdFxyXG4gICAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAgIC8vICAgfVxyXG4gICAgICAgICAgLy8gfTtcclxuICAgICAgICAgIGlmICh0aGlzLmhpc3RvcnlUZXh0TGlzdC5sZW5ndGggPiA5KSB0aGlzLnBhcmFtcyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5oaXN0b3J5VGV4dExpc3RcclxuICAgICAgICAgICAgLnNwbGljZSgtOSkpKTtcclxuICAgICAgICAgIGVsc2UgdGhpcy5wYXJhbXMgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuaGlzdG9yeVRleHRMaXN0KSk7XHJcbiAgICAgICAgICB0aGlzLmlzU3VycGFzcygpO1xyXG4gICAgICAgICAgcmVhbFRoaXMuc29ja2V0VGFzay5zZW5kKHsgLy8g5Y+R6YCB5raI5oGv77yM77yM6YO955SodW5p55qE5a6Y5pa554mI5pysXHJcbiAgICAgICAgICAgIGRhdGE6IEpTT04uc3RyaW5naWZ5KHRoaXMucGFyYW1zKSxcclxuICAgICAgICAgICAgc3VjY2VzcygpIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLmxvZygn56ys5LiA5bin5Y+R6YCB5oiQ5YqfJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICAvLyDmjqXlj5fliLDmtojmga/ml7ZcclxuICAgICAgICByZWFsVGhpcy5zb2NrZXRUYXNrLm9uTWVzc2FnZSgocmVzKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZygn5pS25YiwQVBJ6L+U5Zue55qE5YaF5a6577yaJywgcmVzLmRhdGEpO1xyXG4gICAgICAgICAgbGV0IG9iaiA9IEpTT04ucGFyc2UocmVzLmRhdGEpXHJcbiAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIuaIkeaJk+WNsOeahFwiK29iai5wYXlsb2FkKTtcclxuICAgICAgICAgIGlmKCFyZWFsVGhpcy53c0xpdmVGbGFnKSByZXR1cm4gO1xyXG4gICAgICAgICAgbGV0IGRhdGFBcnJheSA9IG9iai5wYXlsb2FkLmNob2ljZXMudGV4dDtcclxuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YUFycmF5Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGFsa0xpc3RbdGhpcy50YWxrTGlzdC5sZW5ndGggLSAxXS5jb250ZW50ICs9IGRhdGFBcnJheVtpXS5jb250ZW50O1xyXG4gICAgICAgICAgICB0aGlzLm5fY29udGVudCA9IHRoaXMudGFsa0xpc3RbdGhpcy50YWxrTGlzdC5sZW5ndGggLSAxXS5jb250ZW50O1xyXG4gICAgICAgICAgICByZWFsVGhpcy50ZW1wUmVzID0gcmVhbFRoaXMudGVtcFJlcyArIGRhdGFBcnJheVtpXS5jb250ZW50XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBsZXQgdGVtcCA9IEpTT04ucGFyc2UocmVzLmRhdGEpXHJcbiAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIjA3MjZcIix0ZW1wLmhlYWRlci5jb2RlKVxyXG4gICAgICAgICAgaWYgKHRlbXAuaGVhZGVyLmNvZGUgIT09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5zb2NrZXRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coYCR7dGVtcC5oZWFkZXIuY29kZX06JHt0ZW1wLm1lc3NhZ2V9YCk7XHJcbiAgICAgICAgICAgIHJlYWxUaGlzLnNvY2tldFRhc2suY2xvc2Uoe1xyXG4gICAgICAgICAgICAgIHN1Y2Nlc3MocmVzKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygn5YWz6Zet5oiQ5YqfJywgcmVzKVxyXG4gICAgICAgICAgICAgICAgcmVhbFRoaXMud3NMaXZlRmxhZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgZmFpbChlcnIpIHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCflhbPpl63lpLHotKUnLCBlcnIpXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRlbXAuaGVhZGVyLmNvZGUgPT09IDApIHtcclxuICAgICAgICAgICAgaWYgKHJlcy5kYXRhICYmIHRlbXAuaGVhZGVyLnN0YXR1cyA9PT0gMikge1xyXG4gICAgICAgICAgICAgIHRoaXMuc29ja2V0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5oaXN0b3J5VGV4dExpc3QucHVzaCh7XHJcbiAgICAgICAgICAgICAgICBcInJvbGVcIjogXCJhc3Npc3RhbnRcIixcclxuICAgICAgICAgICAgICAgIFwiY29udGVudFwiOiB0aGlzLnRlbXBSZXNcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcmVhbFRoaXMuc29ja2V0VGFzay5jbG9zZSh7XHJcbiAgICAgICAgICAgICAgICAgIHN1Y2Nlc3MocmVzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ+WFs+mXreaIkOWKnycsIHJlcylcclxuICAgICAgICAgICAgICAgICAgICByZWFsVGhpcy53c0xpdmVGbGFnID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgIGZhaWwoZXJyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ+WFs+mXreWksei0pScsIGVycilcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICB9LCAxMDAwKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfSxcclxuICAgICAgLy8g5Yik5pat5paH5a2X5piv5ZCm6LaF6L+H5LqU5Y2D5a2XXHJcbiAgICAgIGlzU3VycGFzcygpIHtcclxuICAgICAgICBsZXQgc3VtID0gdGhpcy5wYXJhbXMucmVkdWNlKChhY2N1bXVsYXRvciwgY3VycmVudFZhbHVlKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3IgKyBjdXJyZW50VmFsdWUuY29udGVudDtcclxuICAgICAgICB9LCAnJyk7XHJcbiAgICAgICAgaWYgKHN1bS5sZW5ndGggPiA1MDAwKSB7XHJcbiAgICAgICAgICB0aGlzLnBhcmFtcy5zaGlmdCgpO1xyXG4gICAgICAgICAgcmV0dXJuIHRoaXMuaXNTdXJwYXNzKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKGDmnKzmrKHlj5HpgIEke3N1bS5sZW5ndGh95a2XYCk7XHJcbiAgICAgICAgICByZXR1cm4gc3VtO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgLy8g6Ym05p2DXHJcbiAgICAgIGdldFdlYlNvY2tldFVybCgpIHtcclxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgLy8gaHR0cHM6Ly9zcGFyay1hcGkueGYteXVuLmNvbS92MS4xL2NoYXQgIFYxLjUgZG9tYWluIGdlbmVyYWxcclxuICAgICAgICAgIC8vIGh0dHBzOi8vc3BhcmstYXBpLnhmLXl1bi5jb20vdjIuMS9jaGF0ICBWMi4wIGRvbWFpbiBnZW5lcmFsdjJcclxuICAgICAgICAgIHZhciB1cmwgPSBcIndzczovL3NwYXJrLWFwaS54Zi15dW4uY29tL3YyLjEvY2hhdFwiO1xyXG4gICAgICAgICAgdmFyIGhvc3QgPSBcInNwYXJrLWFwaS54Zi15dW4uY29tXCI7XHJcbiAgICAgICAgICB2YXIgYXBpS2V5TmFtZSA9IFwiYXBpX2tleVwiO1xyXG4gICAgICAgICAgdmFyIGRhdGUgPSBuZXcgRGF0ZSgpLnRvR01UU3RyaW5nKCk7XHJcbiAgICAgICAgICB2YXIgYWxnb3JpdGhtID0gXCJobWFjLXNoYTI1NlwiO1xyXG4gICAgICAgICAgdmFyIGhlYWRlcnMgPSBcImhvc3QgZGF0ZSByZXF1ZXN0LWxpbmVcIjtcclxuICAgICAgICAgIHZhciBzaWduYXR1cmVPcmlnaW4gPSBgaG9zdDogJHtob3N0fVxcbmRhdGU6ICR7ZGF0ZX1cXG5HRVQgL3YyLjEvY2hhdCBIVFRQLzEuMWA7XHJcbiAgICAgICAgICB2YXIgc2lnbmF0dXJlU2hhID0gQ3J5cHRvSlMuSG1hY1NIQTI1NihzaWduYXR1cmVPcmlnaW4sIHRoaXMuQVBJU2VjcmV0KTtcclxuICAgICAgICAgIHZhciBzaWduYXR1cmUgPSBDcnlwdG9KUy5lbmMuQmFzZTY0LnN0cmluZ2lmeShzaWduYXR1cmVTaGEpO1xyXG4gICAgICAgICAgdmFyIGF1dGhvcml6YXRpb25PcmlnaW4gPVxyXG4gICAgICAgICAgICBgJHthcGlLZXlOYW1lfT1cIiR7dGhpcy5BUElLZXl9XCIsIGFsZ29yaXRobT1cIiR7YWxnb3JpdGhtfVwiLCBoZWFkZXJzPVwiJHtoZWFkZXJzfVwiLCBzaWduYXR1cmU9XCIke3NpZ25hdHVyZX1cImA7XHJcbiAgICAgICAgICB2YXIgYXV0aG9yaXphdGlvbiA9IGJhc2U2NC5lbmNvZGUoYXV0aG9yaXphdGlvbk9yaWdpbik7XHJcbiAgICAgICAgICB1cmwgPSBgJHt1cmx9P2F1dGhvcml6YXRpb249JHthdXRob3JpemF0aW9ufSZkYXRlPSR7ZW5jb2RlVVJJKGRhdGUpfSZob3N0PSR7aG9zdH1gO1xyXG5cclxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHVybClcclxuICAgICAgICAgIHJlc29sdmUodXJsKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSxcclxuICAgICAgLy8g5rua5Yqo5Yiw5aS06YOoXHJcbiAgICAgIGJpbmRTY3JvbGwoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudXNlcklkID09IDApIHtcclxuICAgICAgICAgIHRoaXMuZ2V0SGlzdG9yeSgpO1xyXG4gICAgICAgICAgdGhpcy5nZXRwcm9kdWN0SW5mbygpO1xyXG4gICAgICAgICAgdGhpcy5nZXRPcmRlckluZm8oKTtcclxuICAgICAgICAgIHRoaXMuZ2V0UmVmdW5kRGV0YWlsKCk7XHJcbiAgICAgICAgICB0aGlzLmdldFN0b3JlRGV0YWlsKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZ2V0TWVySGlzdG9yeSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgLy8g5b2T5ruR5Yqo6aG16Z2i5pe2LOaUtui1t+mUruebmCzkuI7lvq7kv6HogYrlpKnmlYjmnpzkv53mjIHkuIDoh7RcclxuICAgICAgdG91Y2htb3ZlKGUpIHtcclxuICAgICAgICB1bmkuaGlkZUtleWJvYXJkKClcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuPC9zY3JpcHQ+XHJcblxyXG48c3R5bGUgbGFuZz1cInNjc3NcIj5cclxuICBAaW1wb3J0IFwiLi4vLi4vbGliL2dsb2JhbC5zY3NzXCI7XHJcblxyXG4gIHBhZ2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcclxuICAgIGZvbnQtc2l6ZTogMjhycHg7XHJcbiAgfVxyXG5cclxuICBAa2V5ZnJhbWVzIGJsaW5rIHtcclxuICAgIDAlIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICA1MCUge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJsaW5raW5nLWJveCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICBhbmltYXRpb246IGJsaW5rIDFzIGluZmluaXRlO1xyXG4gICAgd2lkdGg6IDJweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAud3JhcHBlciB7XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC8qIOWKoOi9veaVsOaNruaPkOekuiAqL1xyXG4gIC50aXBzIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IHZhcigtLXdpbmRvdy10b3ApO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiA5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICAgIGhlaWdodDogNzJycHg7XHJcbiAgICBsaW5lLWhlaWdodDogNzJycHg7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcnB4KTtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0IDBzO1xyXG5cclxuICAgICYuc2hvdyB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ib3gtMSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBycHgpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHJweDtcclxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgIC8qIOWFvOWuuWlQaG9uZVggKi9cclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcclxuICAgIG1hcmdpbi1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcclxuICB9XHJcblxyXG4gIC5tdWx0aWxpbmUtdGV4dCB7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7XHJcbiAgICAvKiDmiJYgd2hpdGUtc3BhY2U6IHByZS13cmFwOyAqL1xyXG4gIH1cclxuXHJcbiAgLmJveC0yIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBib3JkZXItdG9wOiAjZTVlNWU1IHNvbGlkIDFweDtcclxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIC8qIOWIneWni+WMliB0cmFuc2Zvcm0g5bGe5oCnICovXHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xyXG4gICAgLyog5re75Yqg6L+H5rih5pWI5p6cICovXHJcblxyXG4gICAgLyog5YW85a65aVBob25lWCAqL1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xyXG5cclxuICAgID52aWV3IHtcclxuICAgICAgcGFkZGluZzogMCAyMHJweDtcclxuICAgICAgaGVpZ2h0OiAxMDBycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICBoZWlnaHQ6IDY0cnB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcnB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA2cnB4O1xyXG4gICAgICBmb250LXNpemU6IDI4cnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZW5kIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI1NzNmYjtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIGhlaWdodDogNjRycHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHJweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNnJweDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgd2lkdGg6IDEyMHJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDYycnB4O1xyXG5cclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNTczZmI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50YWxrLWxpc3Qge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwcnB4O1xyXG5cclxuICAgIC8qIOa2iOaBr+mhue+8jOWfuuehgOexuyAqL1xyXG4gICAgLml0ZW0ge1xyXG4gICAgICBwYWRkaW5nOiAyMHJweCAyMHJweCAwIDIwcnB4O1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgY29sb3I6ICMzMzM7XHJcblxyXG4gICAgICAucGljIHtcclxuICAgICAgICB3aWR0aDogOTJycHg7XHJcbiAgICAgICAgaGVpZ2h0OiA5MnJweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYm9yZGVyOiAjZmZmIHNvbGlkIDFweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwMHJweDtcclxuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUycnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLyog5pS25Yiw55qE5raI5oGvICovXHJcbiAgICAgICYucHVsbCB7XHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAyMHJweDtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IDUycnB4O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMycnB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMTZycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDE2cnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDIwcnB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAzMHJweDtcclxuICAgICAgICAgICAgbGVmdDogLTE4cnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLyog5Y+R5Ye655qE5raI5oGvICovXHJcbiAgICAgICYucHVzaCB7XHJcbiAgICAgICAgLyog5Li76L205Li65rC05bmz5pa55ZCR77yM6LW354K55Zyo5Y+z56uv44CC5L2/5LiN5L+u5pS5RE9N57uT5p6E77yM5Lmf6IO95pS55Y+Y5YWD57Sg5o6S5YiX6aG65bqPICovXHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG5cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDIwcnB4O1xyXG4gICAgICAgICAgbWluLWhlaWdodDogNTJycHg7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMycnB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI1NzNmYjtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG5cclxuICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxNnJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTZycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAyMHJweCBzb2xpZCAjMjU3M2ZiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMzBycHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAtMThycHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmluZy1tYXRoIHtcclxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnBsYWNlaG9sZGVyIHtcclxuICAgIHdpZHRoOiAxMDB2dztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNTczZmI7XHJcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgLyog5Yid5aeL5YyWIHRyYW5zZm9ybSDlsZ7mgKcgKi9cclxuICAgIC8vIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7IC8qIOa3u+WKoOi/h+a4oeaViOaenCAqL1xyXG4gIH1cclxuXHJcbiAgLmRvd25zb2NrZXQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTczZmIgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG48L3N0eWxlPiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///32\n"); +eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nvar _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 4);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 33));\nvar _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 22));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 35));\nvar base64 = _interopRequireWildcard(__webpack_require__(/*! base-64 */ 36));\nvar _cryptoJs = _interopRequireDefault(__webpack_require__(/*! ../../static/crypto-js/crypto-js.js */ 40));\nvar _parser = _interopRequireDefault(__webpack_require__(/*! ../../static/fast-xml-parser/src/parser */ 198));\nvar utf8 = _interopRequireWildcard(__webpack_require__(/*! utf8 */ 207));\nvar _bingMath = _interopRequireDefault(__webpack_require__(/*! @/components/bing-math/bing-math.vue */ 10));\nfunction _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); }\nfunction _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; }\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n components: {\n 'bing-math': _bingMath.default\n },\n data: function data() {\n return {\n wssType: 'nongye',\n // 网络连接类型\n avatarType: \"/static/icon/ny.png\",\n // AI头像类型\n talkList: [],\n ajax: {\n rows: 15,\n //每页数量\n page: 1,\n //页码\n flag: false,\n // 请求开关\n loading: false,\n // 加载中\n loadText: '正在获取消息'\n },\n keyboardHeight: 0,\n showplc: true,\n content: '',\n c_content: '',\n n_content: '',\n avatar: '/static/avatar.png',\n // 用户头像\n params: [],\n // 发送的消息内容\n timer: '',\n socketTask: {},\n TEXT: '',\n historyTextList: [],\n // 历史会话信息,由于最大token12000,可以结合实际使用,进行移出\n tempRes: '',\n // 临时答复保存\n socketing: false,\n // 是否正在接收\n showStop: false,\n // 是否显示中断按钮\n scrollTop: 0,\n shouldScrollToBottom: true\n };\n },\n mounted: function mounted() {\n var _this = this;\n this.$nextTick(function () {\n _this.getHistoryMsg();\n });\n uni.onKeyboardHeightChange(function (e) {\n var h = _this.keyboardHeight;\n _this.keyboardHeight = e.height;\n _this.$nextTick(function () {\n setTimeout(function () {\n uni.pageScrollTo({\n scrollTop: 9999999,\n // 当前位置向下滚动\n duration: 300 // 滚动过渡时间为300ms,默认值为300ms\n });\n }, 0);\n });\n });\n },\n onLoad: function onLoad() {\n var _this2 = this;\n var avatar = uni.getStorageSync('avatar');\n avatar ? this.avatar = avatar : null;\n uni.$on('MPinfo', function (e) {\n _this2.avatar = e.avatar;\n });\n },\n beforeDestroy: function beforeDestroy() {\n uni.offKeyboardHeightChange();\n },\n onPageScroll: function onPageScroll(e) {\n if (e.scrollTop < 5) {\n this.getHistoryMsg();\n }\n },\n watch: {\n n_content: function n_content(n, o) {\n var _this3 = this;\n // this.c_content = n;\n if (this.timer) clearInterval(this.timer);\n var cl = this.c_content.length;\n var nc = this.n_content.split('');\n this.timer = setInterval(function () {\n if (cl < nc.length) {\n _this3.c_content += nc[cl];\n cl++;\n if (cl % 6 == 0) _this3.$nextTick(function () {\n uni.pageScrollTo({\n scrollTop: 999999\n });\n });\n } else {\n // console.log(this.socketing==false, cl == nc.length);\n if (_this3.socketing == false) _this3.showStop = false;\n clearInterval(_this3.timer);\n _this3.$nextTick(function () {\n uni.pageScrollTo({\n scrollTop: 9999999\n });\n });\n }\n }, 60);\n }\n },\n methods: {\n copyText: function copyText(str) {\n uni.setClipboardData({\n data: str,\n success: function success() {\n uni.showToast({\n icon: 'none',\n title: '复制成功'\n });\n }\n });\n },\n // 获取历史消息\n getHistoryMsg: function getHistoryMsg() {\n var _this4 = this;\n return;\n if (this.ajax.flag) {\n return; //\n }\n\n var get = /*#__PURE__*/function () {\n var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var data, selector;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this4.hideLoadTips();\n _this4.ajax.flag = false;\n _context.next = 4;\n return _this4.joinHistoryMsg();\n case 4:\n data = _context.sent;\n __f__(\"log\", '----- 模拟数据格式,供参考 -----', \" at pages/index/index.vue:169\");\n __f__(\"log\", data, \" at pages/index/index.vue:170\"); // 查看请求返回的数据结构 \n\n // 获取待滚动元素选择器,解决插入数据后,滚动条定位时使用\n selector = '';\n if (_this4.ajax.page > 1) {\n // 非第一页,则取历史消息数据的第一条信息元素\n selector = \"#msg-\".concat(_this4.talkList[0].id);\n } else {\n // 第一页,则取当前消息数据的最后一条信息元素\n selector = \"#msg-\".concat(data[data.length - 1].id);\n }\n\n // 将获取到的消息数据合并到消息数组中\n _this4.talkList = [].concat((0, _toConsumableArray2.default)(data), (0, _toConsumableArray2.default)(_this4.talkList));\n\n // 数据挂载后执行,不懂的请自行阅读 Vue.js 文档对 Vue.nextTick 函数说明。\n _this4.$nextTick(function () {\n // 设置当前滚动的位置\n _this4.setPageScrollTo(selector);\n _this4.hideLoadTips(true);\n if (data.length < _this4.ajax.rows) {\n // 当前消息数据条数小于请求要求条数时,则无更多消息,不再允许请求。\n // 可在此处编写无更多消息数据时的逻辑\n } else {\n _this4.ajax.page++;\n\n // 延迟 200ms ,以保证设置窗口滚动已完成\n setTimeout(function () {\n _this4.ajax.flag = true;\n }, 200);\n }\n });\n case 11:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return function get() {\n return _ref.apply(this, arguments);\n };\n }();\n get();\n },\n // 拼接历史记录消息\n joinHistoryMsg: function joinHistoryMsg() {\n var _this5 = this;\n var join = function join() {\n var arr = [];\n\n //通过当前页码及页数,模拟数据内容\n var startIndex = (_this5.ajax.page - 1) * _this5.ajax.rows;\n var endIndex = startIndex + _this5.ajax.rows;\n for (var i = startIndex; i < endIndex; i++) {\n arr.push({\n \"id\": i,\n // 消息的ID\n \"content\": \"\\u8FD9\\u662F\\u5386\\u53F2\\u8BB0\\u5F55\\u7684\\u7B2C\".concat(i + 1, \"\\u6761\\u6D88\\u606F\"),\n // 消息内容\n \"type\": Math.random() > 0.5 ? 1 : 0,\n // 此为消息类别,设 1 为发出去的消息,0 为收到对方的消息,\n \"pic\": \"/static/avatar.png\" // 头像\n });\n }\n\n /*\n \t颠倒数组中元素的顺序。将最新的数据排在本次接口返回数据的最后面。\n \t后端接口按 消息的时间降序查找出当前页的数据后,再将本页数据按消息时间降序排序返回。\n \t这是数据的重点,因为页面滚动条和上拉加载历史的问题。\n */\n arr.reverse();\n return arr;\n };\n\n // 此处用到 ES6 的 Promise 知识,不懂的请自行学习。\n return new Promise(function (done, fail) {\n // 无数据请求接口,由 setTimeout 模拟,正式项目替换为 ajax 即可。\n setTimeout(function () {\n var data = join();\n done(data);\n }, 1500);\n });\n },\n focus: function focus() {\n // this.$nextTick(()=>{\n // setTimeout(()=>{\n // uni.pageScrollTo({\n // scrollTop: 9999999, // 当前位置向下滚动\n // duration: 300 // 滚动过渡时间为300ms,默认值为300ms\n // });\n // }, 0)\n // })\n },\n // 设置页面滚动位置\n setPageScrollTo: function setPageScrollTo(selector) {\n var view = uni.createSelectorQuery().in(this).select(selector);\n view.boundingClientRect(function (res) {\n uni.pageScrollTo({\n scrollTop: res.top - 30,\n // -30 为多显示出大半个消息的高度,示意上面还有信息。\n duration: 0\n });\n }).exec();\n },\n // 隐藏加载提示\n hideLoadTips: function hideLoadTips(flag) {\n var _this6 = this;\n if (flag) {\n this.ajax.loadText = '消息获取成功';\n setTimeout(function () {\n _this6.ajax.loading = false;\n }, 300);\n } else {\n this.ajax.loading = true;\n this.ajax.loadText = '正在获取消息';\n }\n },\n // 关闭连接\n closeSocketTask: function closeSocketTask() {\n var _this7 = this;\n try {\n clearInterval(this.timer);\n this.talkList[this.talkList.length - 1].content = this.c_content + '';\n // console.log(this.talkList[this.talkList.length - 1].content);\n // this.c_content = '';\n // this.n_content = '';\n this.socketTask.close({\n code: 500,\n // APP端存在BUG,正常关闭的code为1000,无法正常关闭,需要将code换为其他值\n complete: function complete(res) {\n _this7.showStop = false;\n __f__(\"log\", '主动断开', res, \" at pages/index/index.vue:289\");\n _this7.wsLiveFlag = false;\n }\n });\n } catch (e) {\n //TODO handle the exception\n }\n },\n // 发送信息\n send: function send() {\n var _this8 = this;\n if (!this.content) {\n uni.showToast({\n title: '请输入有效的内容',\n icon: 'none'\n });\n return;\n }\n this.showStop = true;\n // 将当前发送信息 添加到消息列表。\n var data = {\n \"id\": new Date().getTime(),\n \"content\": this.content,\n \"type\": 1,\n \"pic\": this.avatar\n };\n __f__(\"log\", data, \" at pages/index/index.vue:314\");\n this.TEXT = this.content;\n this.talkList.push(data);\n this.talkList.push({\n \"id\": new Date().getTime(),\n \"content\": '',\n \"type\": 2,\n \"pic\": this.avatarType\n });\n this.n_content = '';\n this.c_content = '';\n this.socketing = true;\n // return ;\n this.$nextTick(function () {\n // 清空内容框中的内容\n _this8.content = '';\n // uni.pageScrollTo({\n // scrollTop: 999999, // 设置一个超大值,以保证滚动条滚动到底部\n // duration: 0\n // });\n });\n\n this.sendToSpark();\n },\n sendToSpark: function sendToSpark() {\n var _this9 = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var realThis;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n // let myUrl = await this.getWebSocketUrl();\n _this9.tempRes = \"\";\n realThis = _this9;\n _this9.socketTask = uni.connectSocket({\n //url: encodeURI(encodeURI(myUrl).replace(/\\+/g, '%2B')),\n url: \"wss://chat.lihaink.cn/chat?type=\".concat(_this9.wssType, \"×tamp=\").concat(Date.now()),\n method: 'GET',\n token: '',\n success: function success(res) {\n __f__(\"log\", res, \"ws成功连接...\", \" at pages/index/index.vue:348\");\n realThis.wsLiveFlag = true;\n }\n });\n realThis.socketTask.onError(function (res) {\n __f__(\"log\", \"连接发生错误,请检查appid是否填写\", res, \" at pages/index/index.vue:353\");\n });\n realThis.socketTask.onOpen(function (res) {\n _this9.historyTextList.push({\n \"role\": \"user\",\n \"content\": _this9.TEXT\n });\n // 第一帧..........................................\n __f__(\"log\", '连接成功...', \" at pages/index/index.vue:361\");\n // let params = {\n // \"header\": {\n // \"app_id\": this.APPID,\n // \"uid\": \"aef9f963-7\"\n // },\n // \"parameter\": {\n // \"chat\": {\n // \"domain\": \"generalv2\",\n // \"temperature\": 0.5,\n // \"max_tokens\": 1024\n // }\n // },\n // \"payload\": {\n // \"message\": {\n // \"text\": this.historyTextList\n // }\n // }\n // };\n if (_this9.historyTextList.length > 9) _this9.params = JSON.parse(JSON.stringify(_this9.historyTextList.splice(-9)));else _this9.params = JSON.parse(JSON.stringify(_this9.historyTextList));\n _this9.isSurpass();\n realThis.socketTask.send({\n // 发送消息,,都用uni的官方版本\n data: JSON.stringify(_this9.params),\n success: function success() {\n __f__(\"log\", '第一帧发送成功', \" at pages/index/index.vue:387\");\n }\n });\n });\n\n // 接受到消息时\n realThis.socketTask.onMessage(function (res) {\n __f__(\"log\", '收到API返回的内容:', res.data, \" at pages/index/index.vue:394\");\n var obj = JSON.parse(res.data);\n // console.log(\"我打印的\"+obj.payload);\n if (!realThis.wsLiveFlag) return;\n var dataArray = obj.payload.choices.text;\n for (var i = 0; i < dataArray.length; i++) {\n _this9.talkList[_this9.talkList.length - 1].content += dataArray[i].content;\n _this9.n_content = _this9.talkList[_this9.talkList.length - 1].content;\n realThis.tempRes = realThis.tempRes + dataArray[i].content;\n }\n var temp = JSON.parse(res.data);\n // console.log(\"0726\",temp.header.code)\n if (temp.header.code !== 0) {\n _this9.socketing = false;\n __f__(\"log\", \"\".concat(temp.header.code, \":\").concat(temp.message), \" at pages/index/index.vue:408\");\n realThis.socketTask.close({\n success: function success(res) {\n __f__(\"log\", '关闭成功', res, \" at pages/index/index.vue:411\");\n realThis.wsLiveFlag = false;\n },\n fail: function fail(err) {\n __f__(\"log\", '关闭失败', err, \" at pages/index/index.vue:415\");\n }\n });\n }\n if (temp.header.code === 0) {\n if (res.data && temp.header.status === 2) {\n _this9.socketing = false;\n _this9.historyTextList.push({\n \"role\": \"assistant\",\n \"content\": _this9.tempRes\n });\n setTimeout(function () {\n realThis.socketTask.close({\n success: function success(res) {\n __f__(\"log\", '关闭成功', res, \" at pages/index/index.vue:429\");\n realThis.wsLiveFlag = false;\n },\n fail: function fail(err) {\n // console.log('关闭失败', err)\n }\n });\n }, 1000);\n }\n }\n });\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }))();\n },\n // 判断文字是否超过五千字\n isSurpass: function isSurpass() {\n var sum = this.params.reduce(function (accumulator, currentValue) {\n return accumulator + currentValue.content;\n }, '');\n if (sum.length > 5000) {\n this.params.shift();\n return this.isSurpass();\n } else {\n __f__(\"log\", \"\\u672C\\u6B21\\u53D1\\u9001\".concat(sum.length, \"\\u5B57\"), \" at pages/index/index.vue:450\");\n return sum;\n }\n },\n // 鉴权\n getWebSocketUrl: function getWebSocketUrl() {\n var _this10 = this;\n return new Promise(function (resolve, reject) {\n // https://spark-api.xf-yun.com/v1.1/chat V1.5 domain general\n // https://spark-api.xf-yun.com/v2.1/chat V2.0 domain generalv2\n var url = \"wss://spark-api.xf-yun.com/v2.1/chat\";\n var host = \"spark-api.xf-yun.com\";\n var apiKeyName = \"api_key\";\n var date = new Date().toGMTString();\n var algorithm = \"hmac-sha256\";\n var headers = \"host date request-line\";\n var signatureOrigin = \"host: \".concat(host, \"\\ndate: \").concat(date, \"\\nGET /v2.1/chat HTTP/1.1\");\n var signatureSha = _cryptoJs.default.HmacSHA256(signatureOrigin, _this10.APISecret);\n var signature = _cryptoJs.default.enc.Base64.stringify(signatureSha);\n var authorizationOrigin = \"\".concat(apiKeyName, \"=\\\"\").concat(_this10.APIKey, \"\\\", algorithm=\\\"\").concat(algorithm, \"\\\", headers=\\\"\").concat(headers, \"\\\", signature=\\\"\").concat(signature, \"\\\"\");\n var authorization = base64.encode(authorizationOrigin);\n url = \"\".concat(url, \"?authorization=\").concat(authorization, \"&date=\").concat(encodeURI(date), \"&host=\").concat(host);\n\n // console.log(url)\n resolve(url);\n });\n },\n // 滚动到头部\n bindScroll: function bindScroll() {\n if (this.userId == 0) {\n this.getHistory();\n this.getproductInfo();\n this.getOrderInfo();\n this.getRefundDetail();\n this.getStoreDetail();\n } else {\n this.getMerHistory();\n }\n },\n // 当滑动页面时,收起键盘,与微信聊天效果保持一致\n touchmove: function touchmove(e) {\n uni.hideKeyboard();\n }\n }\n};\nexports.default = _default;\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/lib/format-log.js */ 21)[\"default\"]))//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVuaS1hcHA6Ly8vcGFnZXMvaW5kZXgvaW5kZXgudnVlIl0sIm5hbWVzIjpbImNvbXBvbmVudHMiLCJkYXRhIiwid3NzVHlwZSIsImF2YXRhclR5cGUiLCJ0YWxrTGlzdCIsImFqYXgiLCJyb3dzIiwicGFnZSIsImZsYWciLCJsb2FkaW5nIiwibG9hZFRleHQiLCJrZXlib2FyZEhlaWdodCIsInNob3dwbGMiLCJjb250ZW50IiwiY19jb250ZW50Iiwibl9jb250ZW50IiwiYXZhdGFyIiwicGFyYW1zIiwidGltZXIiLCJzb2NrZXRUYXNrIiwiVEVYVCIsImhpc3RvcnlUZXh0TGlzdCIsInRlbXBSZXMiLCJzb2NrZXRpbmciLCJzaG93U3RvcCIsInNjcm9sbFRvcCIsInNob3VsZFNjcm9sbFRvQm90dG9tIiwibW91bnRlZCIsInVuaSIsInNldFRpbWVvdXQiLCJkdXJhdGlvbiIsIm9uTG9hZCIsImJlZm9yZURlc3Ryb3kiLCJvblBhZ2VTY3JvbGwiLCJ3YXRjaCIsImNsIiwiY2xlYXJJbnRlcnZhbCIsIm1ldGhvZHMiLCJjb3B5VGV4dCIsInN1Y2Nlc3MiLCJpY29uIiwidGl0bGUiLCJnZXRIaXN0b3J5TXNnIiwic2VsZWN0b3IiLCJnZXQiLCJqb2luSGlzdG9yeU1zZyIsImFyciIsImRvbmUiLCJmb2N1cyIsInNldFBhZ2VTY3JvbGxUbyIsInZpZXciLCJoaWRlTG9hZFRpcHMiLCJjbG9zZVNvY2tldFRhc2siLCJjb2RlIiwiY29tcGxldGUiLCJzZW5kIiwic2VuZFRvU3BhcmsiLCJyZWFsVGhpcyIsInVybCIsIm1ldGhvZCIsInRva2VuIiwic3BsaWNlIiwiZmFpbCIsImlzU3VycGFzcyIsImdldFdlYlNvY2tldFVybCIsImFwaUtleU5hbWUiLCJyZXNvbHZlIiwiYmluZFNjcm9sbCIsInRvdWNobW92ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUEyQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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QUNBQztNQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtNQUNBO1FBQ0E7TUFDQTtJQUNBO0lBQ0E7SUFDQUM7TUFDQXhDO0lBQ0E7RUFDQTtBQUNBO0FBQUEsMkIiLCJmaWxlIjoiMzIuanMiLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XHJcbiAgPHZpZXcgY2xhc3M9XCJ3cmFwcGVyXCIgQHRvdWNobW92ZT1cInRvdWNobW92ZVwiPlxyXG4gICAgPHZpZXcgY2xhc3M9XCJ0aXBzIGNvbG9yX2ZmZiBzaXplXzEyIGFsaWduX2NcIiA6Y2xhc3M9XCJ7ICdzaG93JzphamF4LmxvYWRpbmcgfVwiIEB0YXA9XCJnZXRIaXN0b3J5TXNnXCI+e3thamF4LmxvYWRUZXh0fX1cclxuICAgIDwvdmlldz5cclxuICAgIDx2aWV3IGNsYXNzPVwicGxhY2Vob2xkZXJcIj48L3ZpZXc+XHJcbiAgICA8dmlldyBjbGFzcz1cImJveC0xXCIgaWQ9XCJsaXN0LWJveFwiIHJlZj1cImJveFwiPlxyXG4gICAgICA8dmlldyBjbGFzcz1cInRhbGstbGlzdFwiPlxyXG4gICAgICAgIDx2aWV3IHYtZm9yPVwiKGl0ZW0saW5kZXgpIGluIHRhbGtMaXN0XCIgOmtleT1cImluZGV4XCIgOmlkPVwiYG1zZy0ke2l0ZW0uaWR9YFwiPlxyXG4gICAgICAgICAgPHZpZXcgY2xhc3M9XCJpdGVtIGZsZXhfY29sXCIgOmNsYXNzPVwiIGl0ZW0udHlwZSA9PSAxID8gJ3B1c2gnOidwdWxsJyBcIj5cclxuICAgICAgICAgICAgPGltYWdlIDpzcmM9XCJpdGVtLnR5cGU9PTE/YXZhdGFyOml0ZW0ucGljXCIgbW9kZT1cImFzcGVjdEZpbGxcIiBjbGFzcz1cInBpY1wiPjwvaW1hZ2U+XHJcbiAgICAgICAgICAgIDx2aWV3IHYtaWY9XCJ0YWxrTGlzdC5sZW5ndGgtMT09aW5kZXhcIiBjbGFzcz1cImNvbnRlbnQgbXVsdGlsaW5lLXRleHRcIj5cclxuICAgICAgICAgICAgICA8IS0tIDxyaWNoLXRleHQgOm5vZGVzPVwiaXRlbS5jb250ZW50XCI+PC9yaWNoLXRleHQ+IC0tPlxyXG4gICAgICAgICAgICAgIDxiaW5nLW1hdGggdi1pZj1cImNfY29udGVudCE9JydcIiA6a2V5PVwiYG1hdGgtJHtpdGVtLmlkfWBcIiBjbGFzcz1cImJpbmctbWF0aFwiIDpsYXRleD1cImNfY29udGVudFwiPjwvYmluZy1tYXRoPlxyXG4gICAgICAgICAgICAgIDx2aWV3IHYtZWxzZSBjbGFzcz1cImJsaW5raW5nLWJveFwiPnw8L3ZpZXc+XHJcbiAgICAgICAgICAgIDwvdmlldz5cclxuICAgICAgICAgICAgPHZpZXcgdi1lbHNlIGNsYXNzPVwiY29udGVudCBtdWx0aWxpbmUtdGV4dFwiPlxyXG4gICAgICAgICAgICAgIDwhLS0gPHJpY2gtdGV4dCA6bm9kZXM9XCJpdGVtLmNvbnRlbnRcIj48L3JpY2gtdGV4dD4gLS0+XHJcbiAgICAgICAgICAgICAgPGJpbmctbWF0aCA6a2V5PVwiYG1hdGgtJHtpdGVtLmlkfWBcIiBjbGFzcz1cImJpbmctbWF0aFwiIDpsYXRleD1cIml0ZW0uY29udGVudFwiPjwvYmluZy1tYXRoPlxyXG4gICAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgICA8L3ZpZXc+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDx2aWV3IGlkPVwiYm90dG9tLWJveFwiPjwvdmlldz5cclxuICAgICAgPC92aWV3PlxyXG4gICAgPC92aWV3PlxyXG4gICAgPHVuaS10cmFuc2l0aW9uIGN1c3RvbS1jbGFzcz1cImJveC0yXCIgbW9kZS1jbGFzcz1cInNsaWRlLWxlZnRcIiA6c2hvdz1cInNob3dTdG9wXCI+XHJcbiAgICAgIDx2aWV3IGNsYXNzPVwiZmxleF9jb2xcIj5cclxuICAgICAgICA8dmlldyBjbGFzcz1cImZsZXhfZ3JvdyBjb250ZW50IGRvd25zb2NrZXRcIiBAY2xpY2s9XCJjbG9zZVNvY2tldFRhc2tcIj7kuK3mlq3ov57mjqU8L3ZpZXc+XHJcbiAgICAgIDwvdmlldz5cclxuICAgIDwvdW5pLXRyYW5zaXRpb24+XHJcbiAgICA8dW5pLXRyYW5zaXRpb24gY3VzdG9tLWNsYXNzPVwiYm94LTJcIiBtb2RlLWNsYXNzPVwic2xpZGUtcmlnaHRcIiA6c2hvdz1cIiFzaG93U3RvcFwiPlxyXG4gICAgICA8dmlldyBjbGFzcz1cImZsZXhfY29sXCI+XHJcbiAgICAgICAgPHZpZXcgY2xhc3M9XCJmbGV4X2dyb3dcIj5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiY29udGVudFwiIHYtbW9kZWw9XCJjb250ZW50XCIgcGxhY2Vob2xkZXI9XCLor7fovpPlhaXogYrlpKnlhoXlrrlcIiBAZm9jdXM9XCJmb2N1c1wiIEBjb25maXJtPVwic2VuZFwiXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyLXN0eWxlPVwiY29sb3I6I0RERDtcIiA6Y3Vyc29yLXNwYWNpbmc9XCI2XCI+XHJcbiAgICAgICAgPC92aWV3PlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJzZW5kXCIgQHRhcD1cInNlbmRcIj7lj5HpgIE8L2J1dHRvbj5cclxuICAgICAgPC92aWV3PlxyXG4gICAgPC91bmktdHJhbnNpdGlvbj5cclxuICAgIDwhLS0gPHZpZXcgdi1zaG93PVwic2hvd3BsY1wiIDpzdHlsZT1cInsnbWluLWhlaWdodCc6IChrZXlib2FyZEhlaWdodCsyMDApKydweCd9XCIgY2xhc3M9XCJwbGFjZWhvbGRlclwiPuaYvuekujwvdmlldz4gLS0+XHJcbiAgPC92aWV3PlxyXG48L3RlbXBsYXRlPlxyXG5cclxuPHNjcmlwdD5cclxuICBpbXBvcnQgKiBhcyBiYXNlNjQgZnJvbSBcImJhc2UtNjRcIlxyXG4gIGltcG9ydCBDcnlwdG9KUyBmcm9tICcuLi8uLi9zdGF0aWMvY3J5cHRvLWpzL2NyeXB0by1qcy5qcydcclxuICBpbXBvcnQgcGFyc2VyIGZyb20gJy4uLy4uL3N0YXRpYy9mYXN0LXhtbC1wYXJzZXIvc3JjL3BhcnNlcidcclxuICBpbXBvcnQgKiBhcyB1dGY4IGZyb20gXCJ1dGY4XCJcclxuICBpbXBvcnQgQmluZ01hdGggZnJvbSBcIkAvY29tcG9uZW50cy9iaW5nLW1hdGgvYmluZy1tYXRoLnZ1ZVwiXHJcbiAgZXhwb3J0IGRlZmF1bHQge1xyXG4gICAgY29tcG9uZW50czoge1xyXG4gICAgICAnYmluZy1tYXRoJzogQmluZ01hdGhcclxuICAgIH0sXHJcbiAgICBkYXRhKCkge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIHdzc1R5cGU6ICdub25neWUnLCAvLyDnvZHnu5zov57mjqXnsbvlnotcclxuICAgICAgICBhdmF0YXJUeXBlOiBcIi9zdGF0aWMvaWNvbi9ueS5wbmdcIiwgLy8gQUnlpLTlg4/nsbvlnotcclxuICAgICAgICB0YWxrTGlzdDogW10sXHJcbiAgICAgICAgYWpheDoge1xyXG4gICAgICAgICAgcm93czogMTUsIC8v5q+P6aG15pWw6YePXHJcbiAgICAgICAgICBwYWdlOiAxLCAvL+mhteeggVxyXG4gICAgICAgICAgZmxhZzogZmFsc2UsIC8vIOivt+axguW8gOWFs1xyXG4gICAgICAgICAgbG9hZGluZzogZmFsc2UsIC8vIOWKoOi9veS4rVxyXG4gICAgICAgICAgbG9hZFRleHQ6ICfmraPlnKjojrflj5bmtojmga8nXHJcbiAgICAgICAgfSxcclxuICAgICAgICBrZXlib2FyZEhlaWdodDogMCxcclxuICAgICAgICBzaG93cGxjOiB0cnVlLFxyXG4gICAgICAgIGNvbnRlbnQ6ICcnLFxyXG4gICAgICAgIGNfY29udGVudDogJycsXHJcbiAgICAgICAgbl9jb250ZW50OiAnJyxcclxuICAgICAgICBhdmF0YXI6ICcvc3RhdGljL2F2YXRhci5wbmcnLCAvLyDnlKjmiLflpLTlg49cclxuICAgICAgICBwYXJhbXM6IFtdLCAvLyDlj5HpgIHnmoTmtojmga/lhoXlrrlcclxuICAgICAgICB0aW1lcjogJycsXHJcbiAgICAgICAgc29ja2V0VGFzazoge30sXHJcbiAgICAgICAgVEVYVDogJycsXHJcbiAgICAgICAgaGlzdG9yeVRleHRMaXN0OiBbXSwgLy8g5Y6G5Y+y5Lya6K+d5L+h5oGv77yM55Sx5LqO5pyA5aSndG9rZW4xMjAwMCzlj6/ku6Xnu5PlkIjlrp7pmYXkvb/nlKjvvIzov5vooYznp7vlh7pcclxuICAgICAgICB0ZW1wUmVzOiAnJywgLy8g5Li05pe2562U5aSN5L+d5a2YXHJcbiAgICAgICAgc29ja2V0aW5nOiBmYWxzZSwgLy8g5piv5ZCm5q2j5Zyo5o6l5pS2XHJcbiAgICAgICAgc2hvd1N0b3A6IGZhbHNlLCAvLyDmmK/lkKbmmL7npLrkuK3mlq3mjInpkq5cclxuICAgICAgICBzY3JvbGxUb3A6IDAsXHJcbiAgICAgICAgc2hvdWxkU2Nyb2xsVG9Cb3R0b206IHRydWVcclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIG1vdW50ZWQoKSB7XHJcbiAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHtcclxuICAgICAgICB0aGlzLmdldEhpc3RvcnlNc2coKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHVuaS5vbktleWJvYXJkSGVpZ2h0Q2hhbmdlKGUgPT4ge1xyXG4gICAgICAgIGxldCBoID0gdGhpcy5rZXlib2FyZEhlaWdodDtcclxuICAgICAgICB0aGlzLmtleWJvYXJkSGVpZ2h0ID0gZS5oZWlnaHQ7XHJcbiAgICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHVuaS5wYWdlU2Nyb2xsVG8oe1xyXG4gICAgICAgICAgICAgIHNjcm9sbFRvcDogOTk5OTk5OSwgLy8g5b2T5YmN5L2N572u5ZCR5LiL5rua5YqoXHJcbiAgICAgICAgICAgICAgZHVyYXRpb246IDMwMCAvLyDmu5rliqjov4fmuKHml7bpl7TkuLozMDBtc++8jOm7mOiupOWAvOS4ujMwMG1zXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfSwgMClcclxuICAgICAgICB9KVxyXG4gICAgICB9KVxyXG4gICAgfSxcclxuICAgIG9uTG9hZCgpIHtcclxuICAgICAgbGV0IGF2YXRhciA9IHVuaS5nZXRTdG9yYWdlU3luYygnYXZhdGFyJyk7XHJcbiAgICAgIGF2YXRhciA/IHRoaXMuYXZhdGFyID0gYXZhdGFyIDogbnVsbDtcclxuICAgICAgdW5pLiRvbignTVBpbmZvJywgKGUpID0+IHtcclxuICAgICAgICB0aGlzLmF2YXRhciA9IGUuYXZhdGFyO1xyXG4gICAgICB9KVxyXG4gICAgfSxcclxuICAgIGJlZm9yZURlc3Ryb3koKSB7XHJcbiAgICAgIC8vICNpZmRlZiBBUFAtUExVU1xyXG4gICAgICB1bmkub2ZmS2V5Ym9hcmRIZWlnaHRDaGFuZ2UoKTtcclxuICAgICAgLy8gI2VuZGlmXHJcbiAgICB9LFxyXG4gICAgb25QYWdlU2Nyb2xsKGUpIHtcclxuICAgICAgaWYgKGUuc2Nyb2xsVG9wIDwgNSkge1xyXG4gICAgICAgIHRoaXMuZ2V0SGlzdG9yeU1zZygpO1xyXG4gICAgICB9XHJcbiAgICB9LFxyXG4gICAgd2F0Y2g6IHtcclxuICAgICAgbl9jb250ZW50KG4sIG8pIHtcclxuICAgICAgICAvLyB0aGlzLmNfY29udGVudCA9IG47XHJcbiAgICAgICAgaWYgKHRoaXMudGltZXIpIGNsZWFySW50ZXJ2YWwodGhpcy50aW1lcik7XHJcbiAgICAgICAgbGV0IGNsID0gdGhpcy5jX2NvbnRlbnQubGVuZ3RoO1xyXG4gICAgICAgIGxldCBuYyA9IHRoaXMubl9jb250ZW50LnNwbGl0KCcnKTtcclxuICAgICAgICB0aGlzLnRpbWVyID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICAgICAgaWYgKGNsIDwgbmMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY19jb250ZW50ICs9IG5jW2NsXTtcclxuICAgICAgICAgICAgY2wrKztcclxuICAgICAgICAgICAgaWYgKGNsICUgNiA9PSAwKSB0aGlzLiRuZXh0VGljaygoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdW5pLnBhZ2VTY3JvbGxUbyh7XHJcbiAgICAgICAgICAgICAgICBzY3JvbGxUb3A6IDk5OTk5OSxcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy5zb2NrZXRpbmc9PWZhbHNlLCBjbCA9PSBuYy5sZW5ndGgpO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5zb2NrZXRpbmcgPT0gZmFsc2UpIHRoaXMuc2hvd1N0b3AgPSBmYWxzZTtcclxuICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLnRpbWVyKTtcclxuICAgICAgICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHVuaS5wYWdlU2Nyb2xsVG8oe1xyXG4gICAgICAgICAgICAgICAgc2Nyb2xsVG9wOiA5OTk5OTk5LFxyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSwgNjApXHJcbiAgICAgIH0sXHJcbiAgICB9LFxyXG4gICAgbWV0aG9kczoge1xyXG4gICAgICBjb3B5VGV4dChzdHIpIHtcclxuICAgICAgICB1bmkuc2V0Q2xpcGJvYXJkRGF0YSh7XHJcbiAgICAgICAgICBkYXRhOiBzdHIsXHJcbiAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbigpIHtcclxuICAgICAgICAgICAgdW5pLnNob3dUb2FzdCh7XHJcbiAgICAgICAgICAgICAgaWNvbjogJ25vbmUnLFxyXG4gICAgICAgICAgICAgIHRpdGxlOiAn5aSN5Yi25oiQ5YqfJ1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfSxcclxuICAgICAgLy8g6I635Y+W5Y6G5Y+y5raI5oGvXHJcbiAgICAgIGdldEhpc3RvcnlNc2coKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGlmICh0aGlzLmFqYXguZmxhZykge1xyXG4gICAgICAgICAgcmV0dXJuOyAvL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IGdldCA9IGFzeW5jICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuaGlkZUxvYWRUaXBzKCk7XHJcbiAgICAgICAgICB0aGlzLmFqYXguZmxhZyA9IGZhbHNlO1xyXG4gICAgICAgICAgbGV0IGRhdGEgPSBhd2FpdCB0aGlzLmpvaW5IaXN0b3J5TXNnKCk7XHJcblxyXG4gICAgICAgICAgY29uc29sZS5sb2coJy0tLS0tIOaooeaLn+aVsOaNruagvOW8j++8jOS+m+WPguiAgyAtLS0tLScpO1xyXG4gICAgICAgICAgY29uc29sZS5sb2coZGF0YSk7IC8vIOafpeeci+ivt+axgui/lOWbnueahOaVsOaNrue7k+aehCBcclxuXHJcbiAgICAgICAgICAvLyDojrflj5blvoXmu5rliqjlhYPntKDpgInmi6nlmajvvIzop6PlhrPmj5LlhaXmlbDmja7lkI7vvIzmu5rliqjmnaHlrprkvY3ml7bkvb/nlKhcclxuICAgICAgICAgIGxldCBzZWxlY3RvciA9ICcnO1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmFqYXgucGFnZSA+IDEpIHtcclxuICAgICAgICAgICAgLy8g6Z2e56ys5LiA6aG177yM5YiZ5Y+W5Y6G5Y+y5raI5oGv5pWw5o2u55qE56ys5LiA5p2h5L+h5oGv5YWD57SgXHJcbiAgICAgICAgICAgIHNlbGVjdG9yID0gYCNtc2ctJHt0aGlzLnRhbGtMaXN0WzBdLmlkfWA7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyDnrKzkuIDpobXvvIzliJnlj5blvZPliY3mtojmga/mlbDmja7nmoTmnIDlkI7kuIDmnaHkv6Hmga/lhYPntKBcclxuICAgICAgICAgICAgc2VsZWN0b3IgPSBgI21zZy0ke2RhdGFbZGF0YS5sZW5ndGgtMV0uaWR9YDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAvLyDlsIbojrflj5bliLDnmoTmtojmga/mlbDmja7lkIjlubbliLDmtojmga/mlbDnu4TkuK1cclxuICAgICAgICAgIHRoaXMudGFsa0xpc3QgPSBbLi4uZGF0YSwgLi4udGhpcy50YWxrTGlzdF07XHJcblxyXG4gICAgICAgICAgLy8g5pWw5o2u5oyC6L295ZCO5omn6KGM77yM5LiN5oeC55qE6K+36Ieq6KGM6ZiF6K+7IFZ1ZS5qcyDmlofmoaPlr7kgVnVlLm5leHRUaWNrIOWHveaVsOivtOaYjuOAglxyXG4gICAgICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xyXG4gICAgICAgICAgICAvLyDorr7nva7lvZPliY3mu5rliqjnmoTkvY3nva5cclxuICAgICAgICAgICAgdGhpcy5zZXRQYWdlU2Nyb2xsVG8oc2VsZWN0b3IpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5oaWRlTG9hZFRpcHModHJ1ZSk7XHJcblxyXG4gICAgICAgICAgICBpZiAoZGF0YS5sZW5ndGggPCB0aGlzLmFqYXgucm93cykge1xyXG4gICAgICAgICAgICAgIC8vIOW9k+WJjea2iOaBr+aVsOaNruadoeaVsOWwj+S6juivt+axguimgeaxguadoeaVsOaXtu+8jOWImeaXoOabtOWkmua2iOaBr++8jOS4jeWGjeWFgeiuuOivt+axguOAglxyXG4gICAgICAgICAgICAgIC8vIOWPr+WcqOatpOWkhOe8luWGmeaXoOabtOWkmua2iOaBr+aVsOaNruaXtueahOmAu+i+kVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuYWpheC5wYWdlKys7XHJcblxyXG4gICAgICAgICAgICAgIC8vIOW7tui/nyAyMDBtcyDvvIzku6Xkv53or4Horr7nva7nqpflj6Pmu5rliqjlt7LlrozmiJBcclxuICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuYWpheC5mbGFnID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB9LCAyMDApXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgICBnZXQoKTtcclxuICAgICAgfSxcclxuICAgICAgLy8g5ou85o6l5Y6G5Y+y6K6w5b2V5raI5oGvXHJcbiAgICAgIGpvaW5IaXN0b3J5TXNnKCkge1xyXG4gICAgICAgIGxldCBqb2luID0gKCkgPT4ge1xyXG4gICAgICAgICAgbGV0IGFyciA9IFtdO1xyXG5cclxuICAgICAgICAgIC8v6YCa6L+H5b2T5YmN6aG156CB5Y+K6aG15pWw77yM5qih5ouf5pWw5o2u5YaF5a65XHJcbiAgICAgICAgICBsZXQgc3RhcnRJbmRleCA9ICh0aGlzLmFqYXgucGFnZSAtIDEpICogdGhpcy5hamF4LnJvd3M7XHJcbiAgICAgICAgICBsZXQgZW5kSW5kZXggPSBzdGFydEluZGV4ICsgdGhpcy5hamF4LnJvd3M7XHJcbiAgICAgICAgICBmb3IgKGxldCBpID0gc3RhcnRJbmRleDsgaSA8IGVuZEluZGV4OyBpKyspIHtcclxuICAgICAgICAgICAgYXJyLnB1c2goe1xyXG4gICAgICAgICAgICAgIFwiaWRcIjogaSwgLy8g5raI5oGv55qESURcclxuICAgICAgICAgICAgICBcImNvbnRlbnRcIjogYOi/meaYr+WOhuWPsuiusOW9leeahOesrCR7aSsxfeadoea2iOaBr2AsIC8vIOa2iOaBr+WGheWuuVxyXG4gICAgICAgICAgICAgIFwidHlwZVwiOiBNYXRoLnJhbmRvbSgpID4gMC41ID8gMSA6IDAsIC8vIOatpOS4uua2iOaBr+exu+WIq++8jOiuviAxIOS4uuWPkeWHuuWOu+eahOa2iOaBr++8jDAg5Li65pS25Yiw5a+55pa555qE5raI5oGvLFxyXG4gICAgICAgICAgICAgIFwicGljXCI6IFwiL3N0YXRpYy9hdmF0YXIucG5nXCIgLy8g5aS05YOPXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLypcclxuICAgICAgICAgIFx06aKg5YCS5pWw57uE5Lit5YWD57Sg55qE6aG65bqP44CC5bCG5pyA5paw55qE5pWw5o2u5o6S5Zyo5pys5qyh5o6l5Y+j6L+U5Zue5pWw5o2u55qE5pyA5ZCO6Z2i44CCXHJcbiAgICAgICAgICBcdOWQjuerr+aOpeWPo+aMiSDmtojmga/nmoTml7bpl7TpmY3luo/mn6Xmib7lh7rlvZPliY3pobXnmoTmlbDmja7lkI7vvIzlho3lsIbmnKzpobXmlbDmja7mjInmtojmga/ml7bpl7TpmY3luo/mjpLluo/ov5Tlm57jgIJcclxuICAgICAgICAgIFx06L+Z5piv5pWw5o2u55qE6YeN54K577yM5Zug5Li66aG16Z2i5rua5Yqo5p2h5ZKM5LiK5ouJ5Yqg6L295Y6G5Y+y55qE6Zeu6aKY44CCXHJcbiAgICAgICAgICAgKi9cclxuICAgICAgICAgIGFyci5yZXZlcnNlKCk7XHJcblxyXG4gICAgICAgICAgcmV0dXJuIGFycjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIOatpOWkhOeUqOWIsCBFUzYg55qEIFByb21pc2Ug55+l6K+G77yM5LiN5oeC55qE6K+36Ieq6KGM5a2m5Lmg44CCXHJcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChkb25lLCBmYWlsKSA9PiB7XHJcbiAgICAgICAgICAvLyDml6DmlbDmja7or7fmsYLmjqXlj6PvvIznlLEgc2V0VGltZW91dCDmqKHmi5/vvIzmraPlvI/pobnnm67mm7/mjaLkuLogYWpheCDljbPlj6/jgIJcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgZGF0YSA9IGpvaW4oKTtcclxuICAgICAgICAgICAgZG9uZShkYXRhKTtcclxuICAgICAgICAgIH0sIDE1MDApO1xyXG4gICAgICAgIH0pXHJcbiAgICAgIH0sXHJcbiAgICAgIGZvY3VzKCkge1xyXG4gICAgICAgIC8vIHRoaXMuJG5leHRUaWNrKCgpPT57XHJcbiAgICAgICAgLy8gICBzZXRUaW1lb3V0KCgpPT57XHJcbiAgICAgICAgLy8gICAgIHVuaS5wYWdlU2Nyb2xsVG8oe1xyXG4gICAgICAgIC8vICAgICAgIHNjcm9sbFRvcDogOTk5OTk5OSwgLy8g5b2T5YmN5L2N572u5ZCR5LiL5rua5YqoXHJcbiAgICAgICAgLy8gICAgICAgZHVyYXRpb246IDMwMCAvLyDmu5rliqjov4fmuKHml7bpl7TkuLozMDBtc++8jOm7mOiupOWAvOS4ujMwMG1zXHJcbiAgICAgICAgLy8gICAgIH0pO1xyXG4gICAgICAgIC8vICAgfSwgMClcclxuICAgICAgICAvLyB9KVxyXG4gICAgICB9LFxyXG4gICAgICAvLyDorr7nva7pobXpnaLmu5rliqjkvY3nva5cclxuICAgICAgc2V0UGFnZVNjcm9sbFRvKHNlbGVjdG9yKSB7XHJcbiAgICAgICAgbGV0IHZpZXcgPSB1bmkuY3JlYXRlU2VsZWN0b3JRdWVyeSgpLmluKHRoaXMpLnNlbGVjdChzZWxlY3Rvcik7XHJcbiAgICAgICAgdmlldy5ib3VuZGluZ0NsaWVudFJlY3QoKHJlcykgPT4ge1xyXG4gICAgICAgICAgdW5pLnBhZ2VTY3JvbGxUbyh7XHJcbiAgICAgICAgICAgIHNjcm9sbFRvcDogcmVzLnRvcCAtIDMwLCAvLyAtMzAg5Li65aSa5pi+56S65Ye65aSn5Y2K5Liq5raI5oGv55qE6auY5bqm77yM56S65oSP5LiK6Z2i6L+Y5pyJ5L+h5oGv44CCXHJcbiAgICAgICAgICAgIGR1cmF0aW9uOiAwXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KS5leGVjKCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIOmakOiXj+WKoOi9veaPkOekulxyXG4gICAgICBoaWRlTG9hZFRpcHMoZmxhZykge1xyXG4gICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgICB0aGlzLmFqYXgubG9hZFRleHQgPSAn5raI5oGv6I635Y+W5oiQ5YqfJztcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmFqYXgubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfSwgMzAwKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5hamF4LmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy5hamF4LmxvYWRUZXh0ID0gJ+ato+WcqOiOt+WPlua2iOaBryc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICAvLyDlhbPpl63ov57mjqVcclxuICAgICAgY2xvc2VTb2NrZXRUYXNrKCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMudGltZXIpO1xyXG4gICAgICAgICAgdGhpcy50YWxrTGlzdFt0aGlzLnRhbGtMaXN0Lmxlbmd0aCAtIDFdLmNvbnRlbnQgPSB0aGlzLmNfY29udGVudCArICcnO1xyXG4gICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy50YWxrTGlzdFt0aGlzLnRhbGtMaXN0Lmxlbmd0aCAtIDFdLmNvbnRlbnQpO1xyXG4gICAgICAgICAgLy8gdGhpcy5jX2NvbnRlbnQgPSAnJztcclxuICAgICAgICAgIC8vIHRoaXMubl9jb250ZW50ID0gJyc7XHJcbiAgICAgICAgICB0aGlzLnNvY2tldFRhc2suY2xvc2Uoe1xyXG4gICAgICAgICAgICBjb2RlOiA1MDAsIC8vIEFQUOerr+WtmOWcqEJVRyzmraPluLjlhbPpl63nmoRjb2Rl5Li6MTAwMCzml6Dms5XmraPluLjlhbPpl60s6ZyA6KaB5bCGY29kZeaNouS4uuWFtuS7luWAvFxyXG4gICAgICAgICAgICBjb21wbGV0ZTogKHJlcykgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuc2hvd1N0b3AgPSBmYWxzZTtcclxuICAgICAgICAgICAgICBjb25zb2xlLmxvZygn5Li75Yqo5pat5byAJywgcmVzKTtcclxuICAgICAgICAgICAgICB0aGlzLndzTGl2ZUZsYWcgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAvL1RPRE8gaGFuZGxlIHRoZSBleGNlcHRpb25cclxuICAgICAgICB9XHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIOWPkemAgeS/oeaBr1xyXG4gICAgICBzZW5kKCkge1xyXG4gICAgICAgIGlmICghdGhpcy5jb250ZW50KSB7XHJcbiAgICAgICAgICB1bmkuc2hvd1RvYXN0KHtcclxuICAgICAgICAgICAgdGl0bGU6ICfor7fovpPlhaXmnInmlYjnmoTlhoXlrrknLFxyXG4gICAgICAgICAgICBpY29uOiAnbm9uZSdcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2hvd1N0b3AgPSB0cnVlO1xyXG4gICAgICAgIC8vIOWwhuW9k+WJjeWPkemAgeS/oeaBryDmt7vliqDliLDmtojmga/liJfooajjgIJcclxuICAgICAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgICAgIFwiaWRcIjogbmV3IERhdGUoKS5nZXRUaW1lKCksXHJcbiAgICAgICAgICBcImNvbnRlbnRcIjogdGhpcy5jb250ZW50LFxyXG4gICAgICAgICAgXCJ0eXBlXCI6IDEsXHJcbiAgICAgICAgICBcInBpY1wiOiB0aGlzLmF2YXRhclxyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zb2xlLmxvZyhkYXRhKTtcclxuICAgICAgICB0aGlzLlRFWFQgPSB0aGlzLmNvbnRlbnQ7XHJcbiAgICAgICAgdGhpcy50YWxrTGlzdC5wdXNoKGRhdGEpO1xyXG4gICAgICAgIHRoaXMudGFsa0xpc3QucHVzaCh7XHJcbiAgICAgICAgICBcImlkXCI6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxyXG4gICAgICAgICAgXCJjb250ZW50XCI6ICcnLFxyXG4gICAgICAgICAgXCJ0eXBlXCI6IDIsXHJcbiAgICAgICAgICBcInBpY1wiOiB0aGlzLmF2YXRhclR5cGVcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLm5fY29udGVudCA9ICcnO1xyXG4gICAgICAgIHRoaXMuY19jb250ZW50ID0gJyc7XHJcbiAgICAgICAgdGhpcy5zb2NrZXRpbmcgPSB0cnVlO1xyXG4gICAgICAgIC8vIHJldHVybiA7XHJcbiAgICAgICAgdGhpcy4kbmV4dFRpY2soKCkgPT4ge1xyXG4gICAgICAgICAgLy8g5riF56m65YaF5a655qGG5Lit55qE5YaF5a65XHJcbiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSAnJztcclxuICAgICAgICAgIC8vIHVuaS5wYWdlU2Nyb2xsVG8oe1xyXG4gICAgICAgICAgLy8gICBzY3JvbGxUb3A6IDk5OTk5OSwgLy8g6K6+572u5LiA5Liq6LaF5aSn5YC877yM5Lul5L+d6K+B5rua5Yqo5p2h5rua5Yqo5Yiw5bqV6YOoXHJcbiAgICAgICAgICAvLyAgIGR1cmF0aW9uOiAwXHJcbiAgICAgICAgICAvLyB9KTtcclxuICAgICAgICB9KVxyXG4gICAgICAgIHRoaXMuc2VuZFRvU3BhcmsoKTtcclxuXHJcbiAgICAgIH0sXHJcbiAgICAgIGFzeW5jIHNlbmRUb1NwYXJrKCkge1xyXG4gICAgICAgIC8vIGxldCBteVVybCA9IGF3YWl0IHRoaXMuZ2V0V2ViU29ja2V0VXJsKCk7XHJcbiAgICAgICAgdGhpcy50ZW1wUmVzID0gXCJcIjtcclxuICAgICAgICBsZXQgcmVhbFRoaXMgPSB0aGlzO1xyXG4gICAgICAgIHRoaXMuc29ja2V0VGFzayA9IHVuaS5jb25uZWN0U29ja2V0KHtcclxuICAgICAgICAgIC8vdXJsOiBlbmNvZGVVUkkoZW5jb2RlVVJJKG15VXJsKS5yZXBsYWNlKC9cXCsvZywgJyUyQicpKSxcclxuICAgICAgICAgIHVybDogYHdzczovL2NoYXQubGloYWluay5jbi9jaGF0P3R5cGU9JHt0aGlzLndzc1R5cGV9JnRpbWVzdGFtcD0ke0RhdGUubm93KCl9YCxcclxuICAgICAgICAgIG1ldGhvZDogJ0dFVCcsXHJcbiAgICAgICAgICB0b2tlbjogJycsXHJcbiAgICAgICAgICBzdWNjZXNzOiByZXMgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhyZXMsIFwid3PmiJDlip/ov57mjqUuLi5cIilcclxuICAgICAgICAgICAgcmVhbFRoaXMud3NMaXZlRmxhZyA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgICByZWFsVGhpcy5zb2NrZXRUYXNrLm9uRXJyb3IoKHJlcykgPT4ge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coXCLov57mjqXlj5HnlJ/plJnor6/vvIzor7fmo4Dmn6VhcHBpZOaYr+WQpuWhq+WGmVwiLCByZXMpXHJcbiAgICAgICAgfSlcclxuICAgICAgICByZWFsVGhpcy5zb2NrZXRUYXNrLm9uT3BlbigocmVzKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmhpc3RvcnlUZXh0TGlzdC5wdXNoKHtcclxuICAgICAgICAgICAgXCJyb2xlXCI6IFwidXNlclwiLFxyXG4gICAgICAgICAgICBcImNvbnRlbnRcIjogdGhpcy5URVhUXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgLy8g56ys5LiA5binLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uXHJcbiAgICAgICAgICBjb25zb2xlLmxvZygn6L+e5o6l5oiQ5YqfLi4uJylcclxuICAgICAgICAgIC8vIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgICAgICAvLyAgIFwiaGVhZGVyXCI6IHtcclxuICAgICAgICAgIC8vICAgICBcImFwcF9pZFwiOiB0aGlzLkFQUElELFxyXG4gICAgICAgICAgLy8gICAgIFwidWlkXCI6IFwiYWVmOWY5NjMtN1wiXHJcbiAgICAgICAgICAvLyAgIH0sXHJcbiAgICAgICAgICAvLyAgIFwicGFyYW1ldGVyXCI6IHtcclxuICAgICAgICAgIC8vICAgICBcImNoYXRcIjoge1xyXG4gICAgICAgICAgLy8gICAgICAgXCJkb21haW5cIjogXCJnZW5lcmFsdjJcIixcclxuICAgICAgICAgIC8vICAgICAgIFwidGVtcGVyYXR1cmVcIjogMC41LFxyXG4gICAgICAgICAgLy8gICAgICAgXCJtYXhfdG9rZW5zXCI6IDEwMjRcclxuICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAvLyAgIH0sXHJcbiAgICAgICAgICAvLyAgIFwicGF5bG9hZFwiOiB7XHJcbiAgICAgICAgICAvLyAgICAgXCJtZXNzYWdlXCI6IHtcclxuICAgICAgICAgIC8vICAgICAgIFwidGV4dFwiOiB0aGlzLmhpc3RvcnlUZXh0TGlzdFxyXG4gICAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAgIC8vICAgfVxyXG4gICAgICAgICAgLy8gfTtcclxuICAgICAgICAgIGlmICh0aGlzLmhpc3RvcnlUZXh0TGlzdC5sZW5ndGggPiA5KSB0aGlzLnBhcmFtcyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5oaXN0b3J5VGV4dExpc3RcclxuICAgICAgICAgICAgLnNwbGljZSgtOSkpKTtcclxuICAgICAgICAgIGVsc2UgdGhpcy5wYXJhbXMgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuaGlzdG9yeVRleHRMaXN0KSk7XHJcbiAgICAgICAgICB0aGlzLmlzU3VycGFzcygpO1xyXG4gICAgICAgICAgcmVhbFRoaXMuc29ja2V0VGFzay5zZW5kKHsgLy8g5Y+R6YCB5raI5oGv77yM77yM6YO955SodW5p55qE5a6Y5pa554mI5pysXHJcbiAgICAgICAgICAgIGRhdGE6IEpTT04uc3RyaW5naWZ5KHRoaXMucGFyYW1zKSxcclxuICAgICAgICAgICAgc3VjY2VzcygpIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLmxvZygn56ys5LiA5bin5Y+R6YCB5oiQ5YqfJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICAvLyDmjqXlj5fliLDmtojmga/ml7ZcclxuICAgICAgICByZWFsVGhpcy5zb2NrZXRUYXNrLm9uTWVzc2FnZSgocmVzKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZygn5pS25YiwQVBJ6L+U5Zue55qE5YaF5a6577yaJywgcmVzLmRhdGEpO1xyXG4gICAgICAgICAgbGV0IG9iaiA9IEpTT04ucGFyc2UocmVzLmRhdGEpXHJcbiAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIuaIkeaJk+WNsOeahFwiK29iai5wYXlsb2FkKTtcclxuICAgICAgICAgIGlmICghcmVhbFRoaXMud3NMaXZlRmxhZykgcmV0dXJuO1xyXG4gICAgICAgICAgbGV0IGRhdGFBcnJheSA9IG9iai5wYXlsb2FkLmNob2ljZXMudGV4dDtcclxuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YUFycmF5Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGFsa0xpc3RbdGhpcy50YWxrTGlzdC5sZW5ndGggLSAxXS5jb250ZW50ICs9IGRhdGFBcnJheVtpXS5jb250ZW50O1xyXG4gICAgICAgICAgICB0aGlzLm5fY29udGVudCA9IHRoaXMudGFsa0xpc3RbdGhpcy50YWxrTGlzdC5sZW5ndGggLSAxXS5jb250ZW50O1xyXG4gICAgICAgICAgICByZWFsVGhpcy50ZW1wUmVzID0gcmVhbFRoaXMudGVtcFJlcyArIGRhdGFBcnJheVtpXS5jb250ZW50XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBsZXQgdGVtcCA9IEpTT04ucGFyc2UocmVzLmRhdGEpXHJcbiAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcIjA3MjZcIix0ZW1wLmhlYWRlci5jb2RlKVxyXG4gICAgICAgICAgaWYgKHRlbXAuaGVhZGVyLmNvZGUgIT09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5zb2NrZXRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coYCR7dGVtcC5oZWFkZXIuY29kZX06JHt0ZW1wLm1lc3NhZ2V9YCk7XHJcbiAgICAgICAgICAgIHJlYWxUaGlzLnNvY2tldFRhc2suY2xvc2Uoe1xyXG4gICAgICAgICAgICAgIHN1Y2Nlc3MocmVzKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygn5YWz6Zet5oiQ5YqfJywgcmVzKVxyXG4gICAgICAgICAgICAgICAgcmVhbFRoaXMud3NMaXZlRmxhZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgZmFpbChlcnIpIHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCflhbPpl63lpLHotKUnLCBlcnIpXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHRlbXAuaGVhZGVyLmNvZGUgPT09IDApIHtcclxuICAgICAgICAgICAgaWYgKHJlcy5kYXRhICYmIHRlbXAuaGVhZGVyLnN0YXR1cyA9PT0gMikge1xyXG4gICAgICAgICAgICAgIHRoaXMuc29ja2V0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5oaXN0b3J5VGV4dExpc3QucHVzaCh7XHJcbiAgICAgICAgICAgICAgICBcInJvbGVcIjogXCJhc3Npc3RhbnRcIixcclxuICAgICAgICAgICAgICAgIFwiY29udGVudFwiOiB0aGlzLnRlbXBSZXNcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcmVhbFRoaXMuc29ja2V0VGFzay5jbG9zZSh7XHJcbiAgICAgICAgICAgICAgICAgIHN1Y2Nlc3MocmVzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ+WFs+mXreaIkOWKnycsIHJlcylcclxuICAgICAgICAgICAgICAgICAgICByZWFsVGhpcy53c0xpdmVGbGFnID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgIGZhaWwoZXJyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ+WFs+mXreWksei0pScsIGVycilcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICB9LCAxMDAwKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfSxcclxuICAgICAgLy8g5Yik5pat5paH5a2X5piv5ZCm6LaF6L+H5LqU5Y2D5a2XXHJcbiAgICAgIGlzU3VycGFzcygpIHtcclxuICAgICAgICBsZXQgc3VtID0gdGhpcy5wYXJhbXMucmVkdWNlKChhY2N1bXVsYXRvciwgY3VycmVudFZhbHVlKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gYWNjdW11bGF0b3IgKyBjdXJyZW50VmFsdWUuY29udGVudDtcclxuICAgICAgICB9LCAnJyk7XHJcbiAgICAgICAgaWYgKHN1bS5sZW5ndGggPiA1MDAwKSB7XHJcbiAgICAgICAgICB0aGlzLnBhcmFtcy5zaGlmdCgpO1xyXG4gICAgICAgICAgcmV0dXJuIHRoaXMuaXNTdXJwYXNzKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKGDmnKzmrKHlj5HpgIEke3N1bS5sZW5ndGh95a2XYCk7XHJcbiAgICAgICAgICByZXR1cm4gc3VtO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgLy8g6Ym05p2DXHJcbiAgICAgIGdldFdlYlNvY2tldFVybCgpIHtcclxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgLy8gaHR0cHM6Ly9zcGFyay1hcGkueGYteXVuLmNvbS92MS4xL2NoYXQgIFYxLjUgZG9tYWluIGdlbmVyYWxcclxuICAgICAgICAgIC8vIGh0dHBzOi8vc3BhcmstYXBpLnhmLXl1bi5jb20vdjIuMS9jaGF0ICBWMi4wIGRvbWFpbiBnZW5lcmFsdjJcclxuICAgICAgICAgIHZhciB1cmwgPSBcIndzczovL3NwYXJrLWFwaS54Zi15dW4uY29tL3YyLjEvY2hhdFwiO1xyXG4gICAgICAgICAgdmFyIGhvc3QgPSBcInNwYXJrLWFwaS54Zi15dW4uY29tXCI7XHJcbiAgICAgICAgICB2YXIgYXBpS2V5TmFtZSA9IFwiYXBpX2tleVwiO1xyXG4gICAgICAgICAgdmFyIGRhdGUgPSBuZXcgRGF0ZSgpLnRvR01UU3RyaW5nKCk7XHJcbiAgICAgICAgICB2YXIgYWxnb3JpdGhtID0gXCJobWFjLXNoYTI1NlwiO1xyXG4gICAgICAgICAgdmFyIGhlYWRlcnMgPSBcImhvc3QgZGF0ZSByZXF1ZXN0LWxpbmVcIjtcclxuICAgICAgICAgIHZhciBzaWduYXR1cmVPcmlnaW4gPSBgaG9zdDogJHtob3N0fVxcbmRhdGU6ICR7ZGF0ZX1cXG5HRVQgL3YyLjEvY2hhdCBIVFRQLzEuMWA7XHJcbiAgICAgICAgICB2YXIgc2lnbmF0dXJlU2hhID0gQ3J5cHRvSlMuSG1hY1NIQTI1NihzaWduYXR1cmVPcmlnaW4sIHRoaXMuQVBJU2VjcmV0KTtcclxuICAgICAgICAgIHZhciBzaWduYXR1cmUgPSBDcnlwdG9KUy5lbmMuQmFzZTY0LnN0cmluZ2lmeShzaWduYXR1cmVTaGEpO1xyXG4gICAgICAgICAgdmFyIGF1dGhvcml6YXRpb25PcmlnaW4gPVxyXG4gICAgICAgICAgICBgJHthcGlLZXlOYW1lfT1cIiR7dGhpcy5BUElLZXl9XCIsIGFsZ29yaXRobT1cIiR7YWxnb3JpdGhtfVwiLCBoZWFkZXJzPVwiJHtoZWFkZXJzfVwiLCBzaWduYXR1cmU9XCIke3NpZ25hdHVyZX1cImA7XHJcbiAgICAgICAgICB2YXIgYXV0aG9yaXphdGlvbiA9IGJhc2U2NC5lbmNvZGUoYXV0aG9yaXphdGlvbk9yaWdpbik7XHJcbiAgICAgICAgICB1cmwgPSBgJHt1cmx9P2F1dGhvcml6YXRpb249JHthdXRob3JpemF0aW9ufSZkYXRlPSR7ZW5jb2RlVVJJKGRhdGUpfSZob3N0PSR7aG9zdH1gO1xyXG5cclxuICAgICAgICAgIC8vIGNvbnNvbGUubG9nKHVybClcclxuICAgICAgICAgIHJlc29sdmUodXJsKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSxcclxuICAgICAgLy8g5rua5Yqo5Yiw5aS06YOoXHJcbiAgICAgIGJpbmRTY3JvbGwoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudXNlcklkID09IDApIHtcclxuICAgICAgICAgIHRoaXMuZ2V0SGlzdG9yeSgpO1xyXG4gICAgICAgICAgdGhpcy5nZXRwcm9kdWN0SW5mbygpO1xyXG4gICAgICAgICAgdGhpcy5nZXRPcmRlckluZm8oKTtcclxuICAgICAgICAgIHRoaXMuZ2V0UmVmdW5kRGV0YWlsKCk7XHJcbiAgICAgICAgICB0aGlzLmdldFN0b3JlRGV0YWlsKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuZ2V0TWVySGlzdG9yeSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSxcclxuICAgICAgLy8g5b2T5ruR5Yqo6aG16Z2i5pe2LOaUtui1t+mUruebmCzkuI7lvq7kv6HogYrlpKnmlYjmnpzkv53mjIHkuIDoh7RcclxuICAgICAgdG91Y2htb3ZlKGUpIHtcclxuICAgICAgICB1bmkuaGlkZUtleWJvYXJkKClcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuPC9zY3JpcHQ+XHJcblxyXG48c3R5bGUgbGFuZz1cInNjc3NcIj5cclxuICBAaW1wb3J0IFwiLi4vLi4vbGliL2dsb2JhbC5zY3NzXCI7XHJcblxyXG4gIHBhZ2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcclxuICAgIGZvbnQtc2l6ZTogMjhycHg7XHJcbiAgfVxyXG5cclxuICBAa2V5ZnJhbWVzIGJsaW5rIHtcclxuICAgIDAlIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICA1MCUge1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJsaW5raW5nLWJveCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICBhbmltYXRpb246IGJsaW5rIDFzIGluZmluaXRlO1xyXG4gICAgd2lkdGg6IDJweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAud3JhcHBlciB7XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC8qIOWKoOi9veaVsOaNruaPkOekuiAqL1xyXG4gIC50aXBzIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IHZhcigtLXdpbmRvdy10b3ApO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiA5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICAgIGhlaWdodDogNzJycHg7XHJcbiAgICBsaW5lLWhlaWdodDogNzJycHg7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwcnB4KTtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0IDBzO1xyXG5cclxuICAgICYuc2hvdyB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ib3gtMSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBycHgpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHJweDtcclxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgIC8qIOWFvOWuuWlQaG9uZVggKi9cclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiBjb25zdGFudChzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcclxuICAgIG1hcmdpbi1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcclxuICB9XHJcblxyXG4gIC5tdWx0aWxpbmUtdGV4dCB7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7XHJcbiAgICAvKiDmiJYgd2hpdGUtc3BhY2U6IHByZS13cmFwOyAqL1xyXG4gIH1cclxuXHJcbiAgLmJveC0yIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBib3JkZXItdG9wOiAjZTVlNWU1IHNvbGlkIDFweDtcclxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIC8qIOWIneWni+WMliB0cmFuc2Zvcm0g5bGe5oCnICovXHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xyXG4gICAgLyog5re75Yqg6L+H5rih5pWI5p6cICovXHJcblxyXG4gICAgLyog5YW85a65aVBob25lWCAqL1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogY29uc3RhbnQoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xyXG5cclxuICAgID52aWV3IHtcclxuICAgICAgcGFkZGluZzogMCAyMHJweDtcclxuICAgICAgaGVpZ2h0OiAxMDBycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICBoZWlnaHQ6IDY0cnB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcnB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA2cnB4O1xyXG4gICAgICBmb250LXNpemU6IDI4cnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZW5kIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI1NzNmYjtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIGhlaWdodDogNjRycHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHJweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNnJweDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgd2lkdGg6IDEyMHJweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDYycnB4O1xyXG5cclxuICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNTczZmI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50YWxrLWxpc3Qge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwcnB4O1xyXG5cclxuICAgIC8qIOa2iOaBr+mhue+8jOWfuuehgOexuyAqL1xyXG4gICAgLml0ZW0ge1xyXG4gICAgICBwYWRkaW5nOiAyMHJweCAyMHJweCAwIDIwcnB4O1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgY29sb3I6ICMzMzM7XHJcblxyXG4gICAgICAucGljIHtcclxuICAgICAgICB3aWR0aDogOTJycHg7XHJcbiAgICAgICAgaGVpZ2h0OiA5MnJweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYm9yZGVyOiAjZmZmIHNvbGlkIDFweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwMHJweDtcclxuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUycnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLyog5pS25Yiw55qE5raI5oGvICovXHJcbiAgICAgICYucHVsbCB7XHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgbWluLXdpZHRoOiAyMHJweDtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IDUycnB4O1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMycnB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMTZycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDE2cnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDIwcnB4IHNvbGlkICNmZmY7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAzMHJweDtcclxuICAgICAgICAgICAgbGVmdDogLTE4cnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLyog5Y+R5Ye655qE5raI5oGvICovXHJcbiAgICAgICYucHVzaCB7XHJcbiAgICAgICAgLyog5Li76L205Li65rC05bmz5pa55ZCR77yM6LW354K55Zyo5Y+z56uv44CC5L2/5LiN5L+u5pS5RE9N57uT5p6E77yM5Lmf6IO95pS55Y+Y5YWD57Sg5o6S5YiX6aG65bqPICovXHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG5cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDIwcnB4O1xyXG4gICAgICAgICAgbWluLWhlaWdodDogNTJycHg7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMycnB4O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI1NzNmYjtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG5cclxuICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAxNnJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTZycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAyMHJweCBzb2xpZCAjMjU3M2ZiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMzBycHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAtMThycHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmluZy1tYXRoIHtcclxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLnBsYWNlaG9sZGVyIHtcclxuICAgIHdpZHRoOiAxMDB2dztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNTczZmI7XHJcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgLyog5Yid5aeL5YyWIHRyYW5zZm9ybSDlsZ7mgKcgKi9cclxuICAgIC8vIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7IC8qIOa3u+WKoOi/h+a4oeaViOaenCAqL1xyXG4gIH1cclxuXHJcbiAgLmRvd25zb2NrZXQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTczZmIgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG48L3N0eWxlPiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///32\n"); /***/ }), /* 33 */ @@ -25415,117 +25416,6 @@ eval("\n\n//parse Empty Node as self closing node\nvar _typeof = __webpack_requi /***/ }), /* 208 */ -/*!***********************************************************!*\ - !*** D:/里海数字乡村/xunfeiAi/pages/index/chat.vue?mpType=page ***! - \***********************************************************/ -/*! no static exports found */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./chat.vue?vue&type=template&id=4e295d7e&mpType=page */ 209);\n/* harmony import */ var _chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./chat.vue?vue&type=script&lang=js&mpType=page */ 211);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 15);\n\nvar renderjs\n\n\n\n\n/* normalize component */\n\nvar component = Object(_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n null,\n null,\n false,\n _chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__[\"components\"],\n renderjs\n)\n\ncomponent.options.__file = \"pages/index/chat.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBNEg7QUFDNUg7QUFDbUU7QUFDTDs7O0FBRzlEO0FBQ21LO0FBQ25LLGdCQUFnQiw2S0FBVTtBQUMxQixFQUFFLHFGQUFNO0FBQ1IsRUFBRSwwRkFBTTtBQUNSLEVBQUUsbUdBQWU7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUUsOEZBQVU7QUFDWjtBQUNBOztBQUVBO0FBQ2UsZ0YiLCJmaWxlIjoiMjA4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMsIHJlY3ljbGFibGVSZW5kZXIsIGNvbXBvbmVudHMgfSBmcm9tIFwiLi9jaGF0LnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD00ZTI5NWQ3ZSZtcFR5cGU9cGFnZVwiXG52YXIgcmVuZGVyanNcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vY2hhdC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmbXBUeXBlPXBhZ2VcIlxuZXhwb3J0ICogZnJvbSBcIi4vY2hhdC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmbXBUeXBlPXBhZ2VcIlxuXG5cbi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi9cbmltcG9ydCBub3JtYWxpemVyIGZyb20gXCIhLi4vLi4vLi4vLi4vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanNcIlxudmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoXG4gIHNjcmlwdCxcbiAgcmVuZGVyLFxuICBzdGF0aWNSZW5kZXJGbnMsXG4gIGZhbHNlLFxuICBudWxsLFxuICBudWxsLFxuICBudWxsLFxuICBmYWxzZSxcbiAgY29tcG9uZW50cyxcbiAgcmVuZGVyanNcbilcblxuY29tcG9uZW50Lm9wdGlvbnMuX19maWxlID0gXCJwYWdlcy9pbmRleC9jaGF0LnZ1ZVwiXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///208\n"); - -/***/ }), -/* 209 */ -/*!*****************************************************************************************!*\ - !*** D:/里海数字乡村/xunfeiAi/pages/index/chat.vue?vue&type=template&id=4e295d7e&mpType=page ***! - \*****************************************************************************************/ -/*! exports provided: render, staticRenderFns, recyclableRender, components */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./chat.vue?vue&type=template&id=4e295d7e&mpType=page */ 210); -/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__["render"]; }); - -/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; }); - -/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; }); - -/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_11_0_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_template_id_4e295d7e_mpType_page__WEBPACK_IMPORTED_MODULE_0__["components"]; }); - - - -/***/ }), -/* 210 */ -/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--11-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/里海数字乡村/xunfeiAi/pages/index/chat.vue?vue&type=template&id=4e295d7e&mpType=page ***! - \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/*! exports provided: render, staticRenderFns, recyclableRender, components */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; }); -var components -var render = function () { - var _vm = this - var _h = _vm.$createElement - var _c = _vm._self._c || _h - return _c("view", [ - _c("input", { - directives: [ - { - name: "model", - rawName: "v-model", - value: _vm.TEXT, - expression: "TEXT", - }, - ], - attrs: { _i: 1 }, - domProps: { value: _vm._$s(1, "v-model", _vm.TEXT) }, - on: { - input: function ($event) { - if ($event.target.composing) { - return - } - _vm.TEXT = $event.target.value - }, - }, - }), - _c("button", { - attrs: { _i: 2 }, - on: { - click: function ($event) { - return _vm.sendToSpark() - }, - }, - }), - _c("text", [_vm._v(_vm._$s(3, "t0-0", _vm._s(_vm.sparkResult)))]), - ]) -} -var recyclableRender = false -var staticRenderFns = [] -render._withStripped = true - - - -/***/ }), -/* 211 */ -/*!***********************************************************************************!*\ - !*** D:/里海数字乡村/xunfeiAi/pages/index/chat.vue?vue&type=script&lang=js&mpType=page ***! - \***********************************************************************************/ -/*! no static exports found */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!../../../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./chat.vue?vue&type=script&lang=js&mpType=page */ 212);\n/* harmony import */ var _HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__) if([\"default\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_7_1_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_chat_vue_vue_type_script_lang_js_mpType_page__WEBPACK_IMPORTED_MODULE_0___default.a); //# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbbnVsbF0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQTJpQixDQUFnQixxa0JBQUcsRUFBQyIsImZpbGUiOiIyMTEuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanMhLi4vLi4vLi4vLi4vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy93ZWJwYWNrLXByZXByb2Nlc3MtbG9hZGVyL2luZGV4LmpzPz9yZWYtLTctMSEuLi8uLi8uLi8uLi9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stdW5pLWFwcC1sb2FkZXIvdXNpbmctY29tcG9uZW50cy5qcyEuLi8uLi8uLi8uLi9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9jaGF0LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZtcFR5cGU9cGFnZVwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL0hCdWlsZGVyWC9wbHVnaW5zL3VuaWFwcC1jbGkvbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanMhLi4vLi4vLi4vLi4vSEJ1aWxkZXJYL3BsdWdpbnMvdW5pYXBwLWNsaS9ub2RlX21vZHVsZXMvQGRjbG91ZGlvL3Z1ZS1jbGktcGx1Z2luLXVuaS9wYWNrYWdlcy93ZWJwYWNrLXByZXByb2Nlc3MtbG9hZGVyL2luZGV4LmpzPz9yZWYtLTctMSEuLi8uLi8uLi8uLi9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3dlYnBhY2stdW5pLWFwcC1sb2FkZXIvdXNpbmctY29tcG9uZW50cy5qcyEuLi8uLi8uLi8uLi9IQnVpbGRlclgvcGx1Z2lucy91bmlhcHAtY2xpL25vZGVfbW9kdWxlcy9AZGNsb3VkaW8vdnVlLWNsaS1wbHVnaW4tdW5pL3BhY2thZ2VzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9jaGF0LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZtcFR5cGU9cGFnZVwiIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///211\n"); - -/***/ }), -/* 212 */ -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--7-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!D:/里海数字乡村/xunfeiAi/pages/index/chat.vue?vue&type=script&lang=js&mpType=page ***! - \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; -eval("/* WEBPACK VAR INJECTION */(function(__f__) {\n\nvar _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 1);\nvar _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ 4);\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 33));\nvar _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 35));\nvar base64 = _interopRequireWildcard(__webpack_require__(/*! base-64 */ 36));\nvar _cryptoJs = _interopRequireDefault(__webpack_require__(/*! ../../static/crypto-js/crypto-js.js */ 40));\nvar _parser = _interopRequireDefault(__webpack_require__(/*! ../../static/fast-xml-parser/src/parser */ 198));\nvar utf8 = _interopRequireWildcard(__webpack_require__(/*! utf8 */ 207));\nfunction _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); }\nfunction _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; }\n//\n//\n//\n//\n//\n//\n//\n//\nvar _default = {\n // https://spark-api.xf-yun.com/v1.1/chat V1.5 domain general\n // https://spark-api.xf-yun.com/v2.1/chat V2.0 domain generalv2\n data: function data() {\n return {\n TEXT: '你好,我的名字叫大王',\n APPID: '2eda6c2e',\n // 控制台获取填写\n APISecret: 'MDEyMzE5YTc5YmQ5NjMwOTU1MWY4N2Y2',\n APIKey: '12ec1f9d113932575fc4b114a2f60ffd',\n sparkResult: '',\n historyTextList: [],\n // 历史会话信息,由于最大token12000,可以结合实际使用,进行移出\n tempRes: '' // 临时答复保存\n };\n },\n\n methods: {\n sendToSpark: function sendToSpark() {\n var _this = this;\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var myUrl, realThis;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return _this.getWebSocketUrl();\n case 2:\n myUrl = _context.sent;\n _this.tempRes = \"\";\n // this.sparkResult = \"\";\n realThis = _this;\n _this.socketTask = uni.connectSocket({\n //url: encodeURI(encodeURI(myUrl).replace(/\\+/g, '%2B')),\n url: myUrl,\n method: 'GET',\n success: function success(res) {\n __f__(\"log\", res, \"ws成功连接...\", myUrl, \" at pages/index/chat.vue:39\");\n realThis.wsLiveFlag = true;\n }\n });\n realThis.socketTask.onError(function (res) {\n __f__(\"log\", \"连接发生错误,请检查appid是否填写\", res, \" at pages/index/chat.vue:44\");\n });\n realThis.socketTask.onOpen(function (res) {\n _this.historyTextList.push({\n \"role\": \"user\",\n \"content\": _this.TEXT\n });\n __f__(\"info\", \"wss的onOpen成功执行...\", res, \" at pages/index/chat.vue:51\");\n // 第一帧..........................................\n __f__(\"log\", 'open成功...', \" at pages/index/chat.vue:53\");\n var params = {\n \"header\": {\n \"app_id\": _this.APPID,\n \"uid\": \"aef9f963-7\"\n },\n \"parameter\": {\n \"chat\": {\n \"domain\": \"generalv2\",\n \"temperature\": 0.5,\n \"max_tokens\": 1024\n }\n },\n \"payload\": {\n \"message\": {\n \"text\": _this.historyTextList\n }\n }\n };\n __f__(\"log\", \"请求的params:\" + JSON.stringify(params), \" at pages/index/chat.vue:72\");\n _this.sparkResult = _this.sparkResult + \"\\r\\n我:\" + _this.TEXT + \"\\r\\n\";\n _this.sparkResult = _this.sparkResult + \"大模型:\";\n __f__(\"log\", \"发送第一帧...\", params, \" at pages/index/chat.vue:75\");\n realThis.socketTask.send({\n // 发送消息,,都用uni的官方版本\n data: JSON.stringify(params),\n success: function success() {\n __f__(\"log\", '第一帧发送成功', \" at pages/index/chat.vue:79\");\n }\n });\n });\n\n // 接受到消息时\n realThis.socketTask.onMessage(function (res) {\n __f__(\"log\", '收到API返回的内容:', res.data, \" at pages/index/chat.vue:86\");\n var obj = JSON.parse(res.data);\n // console.log(\"我打印的\"+obj.payload);\n var dataArray = obj.payload.choices.text;\n for (var i = 0; i < dataArray.length; i++) {\n realThis.sparkResult = realThis.sparkResult + dataArray[i].content;\n realThis.tempRes = realThis.tempRes + dataArray[i].content;\n }\n // realThis.sparkResult =realThis.sparkResult+ \n var temp = JSON.parse(res.data);\n // console.log(\"0726\",temp.header.code)\n if (temp.header.code !== 0) {\n __f__(\"log\", \"\".concat(temp.header.code, \":\").concat(temp.message), \" at pages/index/chat.vue:98\");\n realThis.socketTask.close({\n success: function success(res) {\n __f__(\"log\", '关闭成功', res, \" at pages/index/chat.vue:101\");\n realThis.wsLiveFlag = false;\n },\n fail: function fail(err) {\n __f__(\"log\", '关闭失败', err, \" at pages/index/chat.vue:105\");\n }\n });\n }\n if (temp.header.code === 0) {\n if (res.data && temp.header.status === 2) {\n realThis.sparkResult = realThis.sparkResult + \"\\r\\n**********************************************\";\n _this.historyTextList.push({\n \"role\": \"assistant\",\n \"content\": _this.tempRes\n });\n /* let dataArray= obj.payload.choices.text;\n for(let i=0;i tag // load the styles -var content = __webpack_require__(/*! !../../HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!../../HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src??ref--6-oneOf-1-3!../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!./App.vue?vue&type=style&index=0&lang=css& */ 36); +var content = __webpack_require__(/*! !../../HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!../../HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src??ref--6-oneOf-1-3!../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!./App.vue?vue&type=style&index=0&lang=css& */ 31); if(content.__esModule) content = content.default; if(typeof content === 'string') content = [[module.i, content, '']]; if(content.locals) module.exports = content.locals; @@ -1855,7 +1687,7 @@ var update = add("547d3d93", content, false, {"sourceMap":false,"shadowMode":fal if(false) {} /***/ }), -/* 36 */ +/* 31 */ /*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ !*** ./node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!D:/里海数字乡村/xunfeiAi/App.vue?vue&type=style&index=0&lang=css& ***! \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/ @@ -1866,7 +1698,7 @@ if(false) {} var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/runtime/api.js */ 26); exports = ___CSS_LOADER_API_IMPORT___(false); // Module -exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/*每个页面公共css */\n", ""]); +exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/*每个页面公共css */\n", ""]); // Exports module.exports = exports; diff --git a/unpackage/dist/dev/app-plus/manifest.json b/unpackage/dist/dev/app-plus/manifest.json index 299e55a..f1684ac 100644 --- a/unpackage/dist/dev/app-plus/manifest.json +++ b/unpackage/dist/dev/app-plus/manifest.json @@ -1 +1 @@ -{"@platforms":["android","iPhone","iPad"],"id":"__UNI__9620511","name":"xunfeiAi","version":{"name":"1.0.0","code":"100"},"description":"","launch_path":"__uniappview.html","developer":{"name":"","email":"","url":""},"permissions":{"UniNView":{"description":"UniNView原生渲染"}},"plus":{"useragent":{"value":"uni-app","concatenate":true},"splashscreen":{"target":"id:1","autoclose":true,"waiting":true,"delay":0},"popGesture":"close","launchwebview":{"render":"always","id":"1","kernel":"WKWebview"},"statusbar":{"immersed":"supportedDevice","style":"dark","background":"#F8F8F8"},"usingComponents":true,"nvueStyleCompiler":"uni-app","compilerVersion":3,"distribute":{"google":{"permissions":["","","","","","","","","","","","","","",""],"abiFilters":["armeabi-v7a","arm64-v8a","x86"]},"apple":{"dSYMs":false},"plugins":{"ad":{},"audio":{"mp3":{"description":"Android平台录音支持MP3格式文件"}}}},"uniStatistics":{"enable":false},"arguments":"{\"name\":\"\",\"path\":\"\",\"query\":\"\",\"id\":0}","allowsInlineMediaPlayback":true,"uni-app":{"compilerVersion":"3.8.12","control":"uni-v3","nvueCompiler":"uni-app","renderer":"auto","nvue":{"flex-direction":"column"},"nvueLaunchMode":"normal"},"launch_path":"__uniappview.html"}} \ No newline at end of file +{"@platforms":["android","iPhone","iPad"],"id":"__UNI__9620511","name":"农业咨询","version":{"name":"1.0.0","code":"100"},"description":"","launch_path":"__uniappview.html","developer":{"name":"","email":"","url":""},"permissions":{"UniNView":{"description":"UniNView原生渲染"}},"plus":{"useragent":{"value":"uni-app","concatenate":true},"splashscreen":{"target":"id:1","autoclose":true,"waiting":true,"delay":0},"popGesture":"close","launchwebview":{"render":"always","id":"1","kernel":"WKWebview"},"statusbar":{"immersed":"supportedDevice","style":"dark","background":"#F8F8F8"},"usingComponents":true,"nvueStyleCompiler":"uni-app","compilerVersion":3,"distribute":{"google":{"permissions":["","","","","","","","","","","","","","",""],"abiFilters":["armeabi-v7a","arm64-v8a","x86"]},"apple":{"dSYMs":false},"plugins":{"ad":{},"audio":{"mp3":{"description":"Android平台录音支持MP3格式文件"}}}},"uniStatistics":{"enable":false},"arguments":"{\"name\":\"\",\"path\":\"\",\"query\":\"\",\"id\":0}","allowsInlineMediaPlayback":true,"uni-app":{"compilerVersion":"3.8.12","control":"uni-v3","nvueCompiler":"uni-app","renderer":"auto","nvue":{"flex-direction":"column"},"nvueLaunchMode":"normal"},"launch_path":"__uniappview.html"}} \ No newline at end of file diff --git a/unpackage/dist/dev/app-plus/static/avatar.png b/unpackage/dist/dev/app-plus/static/avatar.png index 4aa23de3a46fc34639d9e1dccd05df16972aa234..2f531da4feec3240e3fb563975f1ee47ad035c83 100644 GIT binary patch literal 12891 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 FV1k*snY#c0 literal 15926 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 Z#*utZ{x2c^pC7@2Bt_*!s)h6e{s%rc6-fX9 diff --git a/unpackage/dist/dev/app-plus/static/iat.png b/unpackage/dist/dev/app-plus/static/iat.png deleted file mode 100644 index eb114a9dc920d9dc4f09a4f0eb750f3be1fb6601..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5090 zcmeHL_gfQNx1P{Tkc1*#AO|S|QZ*<=O6a19h!`mXN{bL8QluAwktzxT0&)^Tnsg%| zp(q>>sgWWYnxKG`08*uX!};zH_iwn*o#&aEXV2`lX0Nr^e&2V`Bg;$1TpYq2003~A znqaJ;`yh0FWMhG@k3aQo0|0NaDMrsa&|xW;>#^uRejO9pG~R$64G9MJ$G86yWlrV% zJa(Ux^~Z;pBs~NJq1*U|hKgk-lR;widyO=eTP|z%lO@}n7wy==YTgc&WZCGdE*Ni% z|JLG?94kllpUUkgUZzHZ^!v4%N<*K@=cRJ*t2N-4U0+Su6kqb&9dF* z2#U97W`T7azyTj{j4{HXV_!3ZAe+j=;K7DKda*=Y7db?%7D%w2SXx-vRYBPdfJ^en zZ}JNZ3-3fP(Q5OKcdR-xv~+?aLnW_%a7M~Wt!M(aoWO)6DULjhC#(7o#HzN7#)H=x zTMPl^m+7V^<%o|AFjSBja(V98uX>lxCnssov#xp?l-;cLKA4-Ey9TUW0Y)ma^iCSH z-Od7#Ua$xnFqz=dXIl*CH>5U9YlH#Ftv*#mRyN`mYQ@>uxFc_4V}tADkoj#{ls;~$ z5V6Vvusw-4&p~|DgrS6u+SbyoCd{n5@?){hVf#7giI9Ouxlb^b&JT6<*hht8zw?8( zxS)&*t6~LF5s_dxQb2(3N!m%K&xpXgal-m5p7sONPpI&>CcbEVLb2U;M zM`RSQtw`+mU!V!^&^aOzl&u`rc?d4cYlzBSX3Lk>#nj@;DopOm;+Ap&pBwY3QhIFL z29pd0gJ^%HfE2Yf@@5FIEfZd6QlKxP4MUYM>#d9{!^Oq&8WV`~*@!+#XSW?mDFe1` z!wAq}fldz##^aaWU;eg--$|?&K`O0tCRoceVNpKyR`bc)@N31^$5WD$ymZ@=pZz#_ zgDnu#V*ig$0DUwjK|tvQ;m)#_fso6v#FS@>tx2(dL=1qmFC#Y*3W;a$j`XkXEL7lA zYj`;wk*g^!@@B=%np}4hZzO@Zy=e)4PS^`>>oRouM_FfBq8kjNvy2sRJxp&c!>cZeG zo06?mu*QopSXJXUOkoF!THZ}*y_a?2|MXe&X-iAQ{;vCDb^ZcOh3~@EE9;pNf}f^m z%zypAga4g_2k1drKt%AUR#>ffn1Hl ztluuS4sxQ8){CIMzNx>oKBbsAy)8x%6=wwsQB%}&rAfe~9w0Wi z?}-y99856AJXAA`mKboX?}pdo>jqvjqy}KpsBEM3sUEsLhY8q{nEKG^thTb(1+1tP z33aK0sMhYZxI^hsQwnH4 z@WX zyomz?oz(t#_12@|t!v1t;ckr$0eHY_-WzAK*D{PWGYxYb0 zsJ&Tnvxi~J&v!LGq8&&;bfm;abIsR97SOPf+u&n`yL4X!wkH%Qg(#9@ja#2i$gj@@ zc%Q+u8XAFZ5aiZ?Bkze{NU>b4D}tEBn}c6dz02𝔊6E&kQ36_{OqXvD!IFTU;Mw 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 Rpb<$x?XecJO3~`g{{Z`9=sExZ diff --git a/unpackage/dist/dev/app-plus/static/ise_active.png b/unpackage/dist/dev/app-plus/static/ise_active.png deleted file mode 100644 index 71e7578c88e351e592b450c29181d23a7b2f3568..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10854 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 diff --git a/unpackage/dist/dev/app-plus/static/logo.png b/unpackage/dist/dev/app-plus/static/logo.png deleted file mode 100644 index b5771e209bb677e2ebd5ff766ad5ee11790f305a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4023 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