1 |
- (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-index-index"],{"156c":function(e,t,n){"use strict";n("7a82");var i=n("4ea4").default;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=i(n("c7eb")),a=i(n("1da1"));n("14d9"),n("e25e"),n("c975"),n("ac1f"),n("5319");var o=i(n("4971")),l=i(n("441a")),r=i(n("77e5"));n("9f21"),n("5925");var c=!1,u={components:{marked:o.default},mounted:function(){o.default.setOptions({renderer:new o.default.Renderer,gfm:!0,tables:!0,breaks:!1,pedantic:!1,sanitize:!1,smartLists:!0,smartypants:!1,highlight:function(e){return r.default.highlightAuto(e).value},langPrefix:"hljs language-"})},data:function(){return{code:"",title:"Hello",disabled:!1,socketOpen:!1,socketMsgQueue:[],recvMsgQueue:[],sendMsgQueue:[],inputValue:"",_socketTask:null,scroll_text_:"\n",sendStatus:!1,recvStatus:!1,all_src_list:[],src_index:0,scroll_top:0,ani:"",ani_style:{width:"100upx",height:"100upx",rotate:0,left:"25%",right:"25%",position:"absolute"},angle:359}},onLoad:function(){this.initTcp()},methods:{onKeydown:function(e){"shift"==e&&(c=!0);"enter"!=e||c||this.$nextTick((function(){}))},onKeyup:function(e){"shift"==e&&(c=!1)},setCopy:function(e){document.queryCommandSupported("copy")||console.log("该浏览器不支持");var t=document.createElement("textarea");t.value=e,t.readOnly="readOnly",document.body.appendChild(t),t.select(),t.setSelectionRange(0,e.length);var n=document.execCommand("copy");n&&uni.showToast({title:"复制成功",duration:2e3}),t.remove()},updateSrcList:function(){for(var e=this.getIndexList(this.scroll_text_),t=0;t<e.length;t+=2){var n=e[t],i=e[t+1];this.all_src_list.push(this.scroll_text_.substring(n,i))}console.log("updateSrcList",this.all_src_list,this.scroll_text_)},stopRecv:function(){this._socketTask.close(),this.initTcp(!0),this.finish_recv()},handleClick:function(e){e=e||window.event;var t=e.target||e.srcElement,n=t.tagName.toLowerCase();if("abc"==n.substring(0,3)){var i=n.split("_");if(i.length>0){var s=parseInt(i[1])-1;console.log("handleClick",s,this.all_src_list),this.setCopy(this.all_src_list[s])}console.log("handleClick",this.all_src_list[index]),console.log(t.tagName.toLowerCase())}console.log(n.substring(0,3))},copyUpdates:function(){var e=this.recvMsgQueue[this.recvMsgQueue.length-1].msg_text,t=this.all_src_list.length;while(-1!=e.indexOf("</code></pre>")){t++;var n="</code><abc_"+t+' class="copy-button">Copy</abc_'+t+"></pre>";console.log("s_tag",n),e=e.replace("</code></pre>",n)}this.recvMsgQueue[this.recvMsgQueue.length-1].msg_text=e,this.$forceUpdate()},getIndexList:function(e){var t=e,n=[],i=t.indexOf("```");while(i>-1)n.push(i),i=t.indexOf("```",i+1);return n},returnText:function(e){return"<style scoped> pre {position: relative;}.copy-button { position: absolute; top: 0;right: 0;padding: 4px 8px;background-color: #333;color: #fff;cursor: pointer;user-select: none;} p {line-height: 2;} li{line-height: 1.5;} table {border-collapse: collapse;width: 100%;font-family: Arial, sans-serif;font-size: 14px;}table th,table td {border: 1px solid #ddd;padding: 8px;text-align: left;}</style>"+e},showLastMsg:function(){var e=this,t=uni.createSelectorQuery().in(this).select(".scroll-view-text");t.fields({size:!0,scrollOffset:!0},(function(t){e.scroll_top=t.height})).exec()},isAItell:function(e){return e===l.default.type_ai},make_avatar:function(e){return e===l.default.type_ai?"../../static/PubImgs_avatar_avatar7.png":"../../static/PubImgs_avatar_avatar8.png"},isShow:function(e){return""!=e},initAni:function(){var e=uni.createAnimation({duration:1e4,transformOrigin:"50% 50% 0",timingFunction:"ease",delay:0});this.angle+=360,e.rotate(this.angle).step(),this.ani=e.export(),setTimeout(this.initAni,1e4)},tryReConnect:function(){uni.showLoading({title:"正在尝试重新连接"}),this.disabled=!1,this.socketOpen=!1,this.initTcp()},initTcp:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this;t._socketTask=new WebSocket("ws://47.88.86.123:8000/ws"),t._socketTask.onopen=function(n){console.log("WebSocket连接已打开!"),e||uni.showLoading({title:"登录成功"}),t.socketMsgQueue=[],uni.hideLoading(),t.socketOpen=!0},t._socketTask.onclose=function(e){console.log("WebSocket is onclose"),t._socketTask.close(),t.tryReConnect()},t._socketTask.onerror=function(e){console.log("WebSocket连接打开失败,请检查!")},t._socketTask.onmessage=function(e){var n,i=JSON.parse(e.data);n=i.content+"",t.sendStatus&&(t.sendStatus=!1,t.scroll_text_="",t.recvMsgQueue.push({who_msg:l.default.type_ai,msg_type:0,msg_text:"",isFinish:!1}),t.startUpdateView()),t.$nextTick((function(){t.showLastMsg()}));var s=i.finish_reason+"";"null"!=n&&(t.scroll_text_+=n),"null"!=s?t.finish_recv():t.recvMsgQueue[t.recvMsgQueue.length-1].msg_text=o.default.parse(t.scroll_text_)}},finish_recv:function(){var e=this;return(0,a.default)((0,s.default)().mark((function t(){var n;return(0,s.default)().wrap((function(t){while(1)switch(t.prev=t.next){case 0:n=e,n.recvStatus=!1,n.disabled=!1,clearTimeout(n.initAni),n.scroll_text_+="\n",console.log("self.recvMsgQueue",n.scroll_text_),n.stopUpdateView(),n.copyUpdates(),n.updateSrcList(),n.recvMsgQueue[n.recvMsgQueue.length-1].isFinish=!0;case 10:case"end":return t.stop()}}),t)})))()},sendMsg:function(){var e=this;return(0,a.default)((0,s.default)().mark((function t(){return(0,s.default)().wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(e.inputValue){t.next=2;break}return t.abrupt("return",uni.showToast({title:"内容不能为空",icon:"none"}));case 2:e.sendSocketMessage(e.inputValue);case 3:case"end":return t.stop()}}),t)})))()},onKeyInput:function(e){this.inputValue=e.target.value},startUpdateView:function(){this.$forceUpdate(),setTimeout(this.startUpdateView,500)},stopUpdateView:function(){clearTimeout(this.startUpdateView)},sendSocketMessage:function(e){this.socketOpen?(this.sendStatus=!0,this.disabled=!0,this.ani_style.rotate=0,this.inputValue="",this.initAni(),this.recvMsgQueue.push({who_msg:l.default.type_self,msg_type:0,msg_text:e,isFinish:!1}),this.recvStatus=!0,this._socketTask.send(e)):this.socketMsgQueue.push(e)}}};t.default=u},"1c33":function(e,t,n){var i=n("5bcb");i.__esModule&&(i=i.default),"string"===typeof i&&(i=[[e.i,i,""]]),i.locals&&(e.exports=i.locals);var s=n("4f06").default;s("4544be34",i,!0,{sourceMap:!1,shadowMode:!1})},"244c":function(e,t,n){"use strict";n.r(t);var i=n("a120"),s=n("3914");for(var a in s)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return s[e]}))}(a);n("f1bd");var o=n("f0c5"),l=Object(o["a"])(s["default"],i["b"],i["c"],!1,null,"2cb1778f",null,!1,i["a"],void 0);t["default"]=l.exports},3914:function(e,t,n){"use strict";n.r(t);var i=n("156c"),s=n.n(i);for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);t["default"]=s.a},5925:function(e,t,n){"use strict";var i=n("4ea4").default,s=i(n("e143"));s.default.directive("copy",{bind:function(e,t){var n=t.value;e.$value=n,e.handler=function(){if(e.style.position="relative",e.$value){var t=document.createElement("textarea");t.readOnly="readonly",t.style.position="absolute",t.style.top="0px",t.style.left="-9999px",t.style.zIndex="-9999",t.value=e.$value,e.appendChild(t),t.createTextRange?t.select():(t.setSelectionRange(0,e.$value.length),t.focus());var n=document.execCommand("Copy");n&&uni.showToast({title:"复制成功"}),e.removeChild(t)}else uni.showToast({title:"无复制内容"})},e.addEventListener("click",e.handler)},componentUpdated:function(e,t){var n=t.value;e.$value=n},unbind:function(e){e.removeEventListener("click",e.handler)}})},"5bcb":function(e,t,n){var i=n("24fb");t=i(!1),t.push([e.i,".content[data-v-2cb1778f]{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center\n\t/* position: relative; */}.text-area[data-v-2cb1778f]{display:flex;justify-content:center}.title[data-v-2cb1778f]{font-size:%?36?%;color:#8f8f94}.textarea-box[data-v-2cb1778f],\n.textarea[data-v-2cb1778f]{width:100%;height:100%}textarea-box[data-v-2cb1778f]{width:100%!important}.textarea-box[data-v-2cb1778f],\n.textarea[data-v-2cb1778f],\nuni-textarea[data-v-2cb1778f],\ntextarea-box[data-v-2cb1778f]{\n\t/* height: 120px; */}.textarea-box[data-v-2cb1778f]{background-color:#fff}",""]),e.exports=t},"7f83":function(e,t,n){var i=n("24fb");t=i(!1),t.push([e.i,"/*\n\nAtom One Dark by Daniel Gamage\nOriginal One Dark Syntax theme from https://github.com/atom/one-dark-syntax\n\nbase: #282c34\nmono-1: #abb2bf\nmono-2: #818896\nmono-3: #5c6370\nhue-1: #56b6c2\nhue-2: #61aeee\nhue-3: #c678dd\nhue-4: #98c379\nhue-5: #e06c75\nhue-5-2: #be5046\nhue-6: #d19a66\nhue-6-2: #e6c07b\n\n*/.hljs{display:block;overflow-x:auto;padding:.5em;color:#abb2bf;background:#282c34}.hljs-comment,\n.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,\n.hljs-keyword,\n.hljs-formula{color:#c678dd}.hljs-section,\n.hljs-name,\n.hljs-selector-tag,\n.hljs-deletion,\n.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,\n.hljs-regexp,\n.hljs-addition,\n.hljs-attribute,\n.hljs-meta-string{color:#98c379}.hljs-built_in,\n.hljs-class .hljs-title{color:#e6c07b}.hljs-attr,\n.hljs-variable,\n.hljs-template-variable,\n.hljs-type,\n.hljs-selector-class,\n.hljs-selector-attr,\n.hljs-selector-pseudo,\n.hljs-number{color:#d19a66}.hljs-symbol,\n.hljs-bullet,\n.hljs-link,\n.hljs-meta,\n.hljs-selector-id,\n.hljs-title{color:#61aeee}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}",""]),e.exports=t},9385:function(e,t,n){e.exports=n.p+"static/img/apple.3b6df465.png"},"9f21":function(e,t,n){var i=n("7f83");i.__esModule&&(i=i.default),"string"===typeof i&&(i=[[e.i,i,""]]),i.locals&&(e.exports=i.locals);var s=n("4f06").default;s("5f915d21",i,!0,{sourceMap:!1,shadowMode:!1})},a120:function(e,t,n){"use strict";n.d(t,"b",(function(){return i})),n.d(t,"c",(function(){return s})),n.d(t,"a",(function(){}));var i=function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("v-uni-view",{staticClass:"content"},[i("v-uni-scroll-view",{staticStyle:{top:"0%",width:"100vw",height:"90vh"},attrs:{"scroll-y":"true","scroll-top":e.scroll_top}},[i("v-uni-view",{staticClass:"scroll-view-text"},e._l(e.recvMsgQueue,(function(t,s){return i("v-uni-view",{staticStyle:{"margin-right":"5%","margin-left":"5%","margin-top":"3%",display:"flex","user-select":"text"}},[e.isAItell(e.recvMsgQueue[s].who_msg)?i("v-uni-view",{staticStyle:{display:"flex",width:"100%",height:"100%","margin-bottom":"3%"}},[i("v-uni-image",{staticStyle:{width:"150upx",height:"150upx","margin-right":"1%"},attrs:{src:e.make_avatar(e.recvMsgQueue[s].who_msg)}}),i("v-uni-view",{staticStyle:{"margin-bottom":"3%","margin-top":"1%","margin-left":"1%",padding:"1%",width:"70vw",background:"#EFEFEF","border-radius":"10rpx 10rpx 10rpx 10rpx"}},[i("v-uni-view",{ref:"htmlContent",refInFor:!0,staticClass:"htmlContent",staticStyle:{width:"100%"},domProps:{innerHTML:e._s(e.returnText(e.recvMsgQueue[s].msg_text))},on:{click:function(t){arguments[0]=t=e.$handleEvent(t),e.handleClick()}}}),e.recvStatus&&0==e.recvMsgQueue[s].isFinish?i("v-uni-view",{staticStyle:{display:"flex",width:"100%","align-items":"center","justify-content":"center"},on:{click:function(t){arguments[0]=t=e.$handleEvent(t),e.stopRecv()}}},[i("v-uni-image",{staticStyle:{width:"50upx",height:"50upx","align-self":"center"},attrs:{src:n("60aa")}})],1):e._e()],1)],1):e._e(),e.isAItell(e.recvMsgQueue[s].who_msg)?e._e():i("v-uni-view",{staticStyle:{display:"flex",width:"100%",height:"100%","margin-bottom":"3%"}},[i("v-uni-view",{staticStyle:{"justify-content":"end",display:"flex",width:"100%",height:"100%"}},[i("v-uni-view",{staticStyle:{"justify-content":"space-between",display:"flex","align-items":"center",padding:"1%","margin-right":"2%",background:"green","border-radius":"10rpx 10rpx 10rpx 10rpx"}},[i("v-uni-view"),i("v-uni-text",{staticStyle:{"align-self":"auto",color:"aliceblue"}},[e._v(e._s(e.recvMsgQueue[s].msg_text))])],1),i("v-uni-view",[i("v-uni-image",{staticStyle:{width:"150upx",height:"150upx",right:"0%"},attrs:{src:e.make_avatar(e.recvMsgQueue[s].who_msg)}})],1)],1)],1)],1)})),1)],1),i("v-uni-view",{staticStyle:{display:"flex",width:"100vw",height:"10vh",bottom:"0%"}},[i("v-uni-view",{staticClass:"textarea-box",staticStyle:{"background-color":"gainsboro",width:"90%"}},[i("v-uni-textarea",{staticClass:"textarea",attrs:{"cursor-spacing":15,"auto-height":"true",disabled:e.disabled,placeholder:"请输入消息内容(使用 Enter 发送)",maxlength:-1,"placeholder-class":"input-placeholder"},on:{keyup:function(t){if(!t.shiftKey)return null;arguments[0]=t=e.$handleEvent(t),e.onKeyup("shift")},keydown:[function(t){if(!t.shiftKey)return null;arguments[0]=t=e.$handleEvent(t),e.onKeydown("shift")},function(t){if(!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter"))return null;arguments[0]=t=e.$handleEvent(t),e.onKeydown("enter")}]},model:{value:e.inputValue,callback:function(t){e.inputValue=t},expression:"inputValue"}})],1),i("v-uni-view",{staticStyle:{width:"10%",position:"relative"}},[0==e.recvStatus?i("v-uni-view",{staticStyle:{width:"100%",height:"100%",display:"flex","background-color":"slategray",color:"aliceblue","align-items":"center","justify-content":"center"},on:{click:function(t){arguments[0]=t=e.$handleEvent(t),e.sendMsg.apply(void 0,arguments)}}},[e._v("发送")]):e._e(),i("v-uni-view",{style:e.ani_style,attrs:{animation:e.ani}},[1==e.recvStatus?i("v-uni-image",{staticStyle:{width:"100%",height:"100%"},attrs:{src:n("9385")}}):e._e()],1)],1)],1)],1)},s=[]},f1bd:function(e,t,n){"use strict";var i=n("1c33"),s=n.n(i);s.a}}]);
|