2 lines
10 KiB
JavaScript
2 lines
10 KiB
JavaScript
"use strict";const e=require("../../common/vendor.js"),o=require("../../composables/useCommon.js"),n=require("../../composables/useWorkFlow.js"),t=require("../../utils/request.js"),s=require("../../utils/common.js"),a=require("../../stores/appStore.js"),r=require("../../types/event.types.js"),i=require("../../utils/emitter.js"),u=require("../../composables/aiChat.js");if(!Array){(e.resolveComponent("fui-tabs")+e.resolveComponent("fui-nav-bar")+e.resolveComponent("up-gap")+e.resolveComponent("up-status-bar")+e.resolveComponent("fui-footer")+e.resolveComponent("fui-avatar")+e.resolveComponent("fui-load-ani")+e.resolveComponent("fui-icon")+e.resolveComponent("fui-picker")+e.resolveComponent("fui-safe-area")+e.resolveComponent("up-avatar")+e.resolveComponent("up-icon")+e.resolveComponent("up-cell")+e.resolveComponent("up-cell-group")+e.resolveComponent("template"))()}Math||((()=>"../../components/firstui/fui-tabs/fui-tabs.js")+(()=>"../../components/firstui/fui-nav-bar/fui-nav-bar.js")+h+m+(()=>"../../node-modules/uview-plus/components/u-gap/u-gap.js")+v+g+(()=>"../../node-modules/uview-plus/components/u-status-bar/u-status-bar.js")+f+l+(()=>"../../components/firstui/fui-footer/fui-footer.js")+(()=>"../../components/firstui/fui-avatar/fui-avatar.js")+(()=>"../../components/firstui/fui-load-ani/fui-load-ani.js")+(()=>"../../components/firstui/fui-icon/fui-icon.js")+(()=>"../../components/firstui/fui-picker/fui-picker.js")+(()=>"../../components/firstui/fui-safe-area/fui-safe-area.js")+(()=>"../../node-modules/uview-plus/components/u-avatar/u-avatar.js")+p+c+(()=>"../../node-modules/uview-plus/components/u-icon/u-icon.js")+(()=>"../../node-modules/uview-plus/components/u-cell/u-cell.js")+(()=>"../../node-modules/uview-plus/components/u-cell-group/u-cell-group.js")+d)();const l=()=>"../../layouts/BaseLayout.js",c=()=>"../../components/GetUserInfoPopup.js",d=()=>"../../node-modules/@tuniao/tnui-vue3-uniapp/components/icon/src/icon.js",p=()=>"../../components/home/UserMemberInfo.js",f=()=>"../../components/custom/MyGraphicCard/MyGraphicCard.js",m=()=>"../../components/home/AppSwiper.js",v=()=>"../../components/home/AppTags.js",g=()=>"../../components/home/AppWaterFall.js",h=()=>"../../components/firstui/fui-background-image/fui-background-image.js",w="https://chinahu-ai-server.oss-cn-chengdu.aliyuncs.com/aidraw/image/temps/67873d6c232a3c5d52240dd6/Home2.jpg",y=e.defineComponent({__name:"index",setup(l){global.TextEncoder=e.TextEncoder,global.TextDecoder=e.TextDecoder;let c=e.ref("");async function d(){const o=e.ref(),n=e.ref();await u.getUserToken().then((e=>{o.value=e.data})).catch((e=>{console.error("获取getUserToken失败:",e)})),console.log("getUserToken执行完毕"),await u.getUserInfo(o.value).then((e=>{n.value=e.data})).catch((e=>{console.error("获取getUserInfo失败:",e)})),console.log("getUserInfo执行完毕"),await u.getModelList(o.value.token).then((e=>{f.value=e.data,m.value=e.data[0]})).catch((e=>{console.error("获取getModelList失败:",e)})),console.log("getModelList执行完毕"),await u.getUserKey(n.value,o.value.refresh_token).then((e=>{console.log("获取到的getUserKey信息:",e.data),C.value=e.data.key})).catch((e=>{console.error("获取getUserKey失败:",e)})),console.log("getUserKey执行完毕")}const p=e.ref(!1),f=e.ref([]),m=e.ref("");function v(e){p.value=!1,m.value=e.value}function g(){p.value=!1}function h(){if(!o.isLogin.value)return e.index.showToast({icon:"error",title:"您还没有登录",duration:2e3}),0;p.value=!0}const y=e.ref(""),b=e.ref([{content:"你好我是Ai聊天助手,有什么问题问我吧!(温馨提示:点击消息可以复制哦)",role:"system"}]),C=e.ref(""),x=o=>new Promise(((n,t)=>{const s=e.index.request({url:u.ChatAPiUrl(),method:"POST",data:{messages:o,model:m.value,stream:!0,features:{thinking_enabled:!1}},dataType:"json",header:{Authorization:"Bearer sk-"+C.value},responseType:"text",enableChunked:!0,success:e=>{n(e)},fail:o=>{t(o),e.index.showToast({icon:"error",title:"请求失败",duration:2e3}),console.log("请求失败",o)}});s.onChunkReceived((o=>{try{const n=e.wx$1.arrayBufferToBase64(o.data),t=e.wx$1.base64ToArrayBuffer(n);!function(e){const o=e.split("\n").filter((e=>e.startsWith("data:")));for(const s of o){if("data: [DONE]"===s.trim())return void(j.value=!0);try{const e=JSON.parse(s.substring(5).trim());e.choices&&e.choices[0]&&e.choices[0].delta&&e.choices[0].delta.content&&(k.value+=e.choices[0].delta.content)}catch(t){console.log("解析错误:",t)}}const n=b.value.length-1;b.value[n].content=k.value,c.value="items-"+(b.value.length-1),j.value=!1}((new e.TextDecoder).decode(t,{stream:!0}))}catch(n){console.error("处理数据块失败",n)}})),s.onHeadersReceived((()=>{console.log("请求完成")}))})),k=e.ref("");const j=e.ref(!0);function T(){return o.isLogin.value?null==m.value?(e.index.showToast({icon:"error",title:"您没有选择模型",duration:2e3}),0):1!=j.value?(e.index.showToast({icon:"error",title:"请等待消息结束",duration:2e3}),0):(b.value.push({content:y.value,role:"user"}),y.value="",x(b.value),b.value.push({content:"",role:"system"}),void(k.value="")):(e.index.showToast({icon:"error",title:"您还没有登录",duration:2e3}),0)}function _(){U.value=2,K.value=!0}e.onReady((()=>{O(),i.on(r.EventType.PAY_SUCCESS,(({order_id:e})=>R(e))),o.isLogin.value?I.value="我的":I.value="登录",d()})),e.onMounted((()=>{q()})),e.onUnmounted((()=>{M.value=[]})),e.ref("fuiNavBar");const{tabbarIndex:L}=e.storeToRefs(a.useAppStore()),U=e.ref(0),A=e=>{U.value=e.index,2==e.index&&d()},I=e.ref("我的");const S=[{name:"首页",onClick:L},{name:"创意",onClick:L},{name:"AI助手",onClick:L},{name:I,onClick:L}],q=async()=>{M.value=await t.request("draw/history/findMany",{method:"POST",data:{history:{is_deleted:!1,is_public:!0}}})},M=e.ref([]),B=e.computed((()=>M.value.map((e=>{var o,n,t,a,r,i,u;return{id:e._id,avatar:(null==(o=e.user_id)?void 0:o.avatar_url)||"",username:(null==(n=e.user_id)?void 0:n.nickname)||(null==(t=e.user_id)?void 0:t.username),title:null==(a=e.options)?void 0:a.workflow_title,description:s.formatDateTime(new Date(e.created_at)),tags:e.tags,content:(null==(i=null==(r=e.params)?void 0:r.positive)?void 0:i.slice(0,120))+"...",images:(()=>{const o=[];for(const n in e.params)n.startsWith("image_path_")&&e.params[n]&&o.push(e.params[n]);return e.output?[...o,...e.output]:o})(),commentCount:null==(u=e.comment)?void 0:u.length}}))));function P(){e.index.navigateTo({url:"/pages/Empty/Empty"})}const{user:D}=e.storeToRefs(a.useAppStore());function E(){e.index.navigateTo({url:"/pages/history/history_fui/history_fui"})}e.ref(!0),e.ref("");const W=async()=>{if(o.isLogin.value)return;e.index.showLoading({title:"正在登录...",mask:!0});const{uniPlatform:n}=e.index.getSystemInfoSync();if("web"!==n)z();else{const n=await o.loginByUsername({username:"test456",password:"123456"});o.saveLoginInfo(n),e.index.hideLoading()}d(),I.value="我的"},z=()=>{e.index.login({success:async function({code:n}){const t=await o.loginByWechatCode(n);o.saveLoginInfo(t),e.index.hideLoading(),console.log("------------result--------",t),e.index.setStorageSync("refreshToken",t.refresh_token)},fail:function(o){e.index.showToast({title:"登录错误",icon:"none"})}}),d()},{socketInit:O}=n.useWorkFlow(),R=async n=>{console.log("收到支付成功消息",n);const t=await o.getOrderInfoById(n);t[0]&&1===t[0].order_status&&(e.index.showToast({title:"支付成功",icon:"none"}),o.refreshUserInfo())},F=()=>{e.index.showLoading({title:"正在退出登录...",mask:!0}),o.loginOut(),e.index.hideLoading(),e.index.showToast({title:"退出成功",icon:"none"}),I.value="登录"},{showPay:K}=e.storeToRefs(a.useAppStore());return(n,t)=>e.e({a:e.o(A),b:e.p({direction:"column",color:"#ACB0D0",isSlider:!1,selectedColor:"#17135F",tabs:S,scale:"1.5",center:!1,short:!0,scroll:!1,itemPadding:"25",current:U.value,size:"28",fontWeight:"900",background:!0}),c:e.p({custom:!0,background:!0}),d:e.p({src:w}),e:e.p({height:"10"}),f:e.o(_),g:e.o(E),h:e.p({height:"10"}),i:0==U.value,j:e.p({src:w}),k:e.f(B.value,((o,n,t)=>({a:"9266082b-11-"+t+",9266082b-9",b:e.p({avatar:o.avatar,title:o.title,username:o.username,description:o.description,tags:o.tags,content:o.content,images:o.images,"view-count":o.viewCount,"comment-count":o.commentCount,"like-count":o.likeCount,"view-user-avatars":o.viewUserAvatars})}))),l:e.p({text:"Copyright © 2021 Fuzi-AI"}),m:1==U.value,n:e.p({src:w}),o:e.f(b.value,((o,t,s)=>e.e({a:"9266082b-14-"+s,b:e.p({background:"#fff",src:"system"==o.role?"https://wangbo0808.oss-cn-shanghai.aliyuncs.com/assets/gpt4.png":e.unref(D).avatar_url}),c:o.content.length>1},o.content.length>1?{d:e.t(o.content),e:e.o((n=>{return t=o.content,void e.index.setClipboardData({data:t,success:()=>{console.log("复制成功"),e.index.showToast({title:"复制成功",icon:"none"})},fail:o=>{console.error("复制失败",o),e.index.showToast({title:"复制失败,请稍后再试",icon:"none"})}});var t}),t)}:{},{f:o.content.length<1},o.content.length<1?{g:"9266082b-15-"+s,h:e.p({type:"3",color:" #7f7d79"})}:{},{i:`items-${t}`,j:e.n("user"==o.role?"fui-chat__right":"fui-chat__left"),k:e.o((e=>n.getCopyMsg(1,o.msg,e)),t),l:e.o((e=>n.getCopyMsg(2,o.content,e)),t),m:t}))),p:e.unref(c),q:e.t(m.value||f.value[0]),r:e.o(h),s:e.p({name:"message",color:"#3b3ee9"}),t:-1,v:e.o(T),w:y.value,x:e.o((e=>y.value=e.detail.value)),y:0==y.value.length},0==y.value.length?{z:e.p({name:"clear",color:"#3b3ee9"})}:{A:e.o(T)},{B:e.o(v),C:e.o(g),D:e.p({options:f.value,show:p.value}),E:!n.focus},n.focus?{}:{F:e.p({background:"#f8f8f8"})},{G:2==U.value,H:e.p({src:w}),I:e.p({src:e.unref(D).avatar_url,size:"80"}),J:!e.unref(o.isLogin)},(e.unref(o.isLogin),{}),{K:e.unref(o.isLogin)},e.unref(o.isLogin)?{L:e.t(e.unref(D).nickname)}:{},{M:e.unref(o.isLogin)},e.unref(o.isLogin)?{N:e.t(e.unref(D).balance)}:{},{O:e.p({name:"scan",color:"#969799",size:"28"}),P:e.o(P),Q:e.p({name:"arrow-right",color:"#969799",size:"28"}),R:e.o(P),S:e.o(W),T:e.o((e=>K.value=!0)),U:e.p({icon:"rmb-circle",title:"算力充值",border:!1}),V:e.o(E),W:e.p({border:!1,icon:"photo",title:"绘图历史"}),X:e.p({name:"logout"}),Y:e.o(F),Z:e.p({border:!1,icon:"setting",title:"退出登录"}),aa:e.p({icon:"chat-fill",title:"微信客服"}),ab:3==U.value})}}),b=e._export_sfc(y,[["__scopeId","data-v-9266082b"]]);wx.createPage(b);
|