@acedatacloud/nexior 3.3.0 → 3.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/dist/assets/{Auth.f611ca11.js → Auth.61032eca.js} +1 -1
  2. package/dist/assets/{Callback.06578200.js → Callback.78fe3ef4.js} +1 -1
  3. package/dist/assets/{Chatdoc.f109a4af.js → Chatdoc.f0e4f98a.js} +1 -1
  4. package/dist/assets/{Console.9291f66e.js → Console.d031613f.js} +1 -1
  5. package/dist/assets/{Conversation.608dcd99.js → Conversation.417ae3ce.js} +1 -1
  6. package/dist/assets/{Conversation.f5d59976.js → Conversation.98601916.js} +1 -1
  7. package/dist/assets/{CopyToClipboard.2d947214.js → CopyToClipboard.d3bd0d2e.js} +1 -1
  8. package/dist/assets/{Detail.f7dbe1d3.js → Detail.50b2c615.js} +1 -1
  9. package/dist/assets/{EditArray.78f5f86c.js → EditArray.b5790d1c.js} +1 -1
  10. package/dist/assets/{Extra.2f19be90.js → Extra.a3e08fb3.js} +1 -1
  11. package/dist/assets/{History.73d9b703.js → History.9ff3dfbf.js} +1 -1
  12. package/dist/assets/{ImagePreview.a0e715c5.js → ImagePreview.432fe959.js} +1 -1
  13. package/dist/assets/{Index.d728a4dc.js → Index.13d8ac82.js} +1 -1
  14. package/dist/assets/{Index.9068d74e.js → Index.1a601820.js} +1 -1
  15. package/dist/assets/{Index.dc321502.js → Index.4558707e.js} +1 -1
  16. package/dist/assets/{Index.a82cfc30.js → Index.4ac92698.js} +1 -1
  17. package/dist/assets/{Index.98c741db.js → Index.529d7b09.js} +1 -1
  18. package/dist/assets/{Index.af1dcf6d.js → Index.5f9ccb63.js} +1 -1
  19. package/dist/assets/Index.8bd9bc06.css +1 -0
  20. package/dist/assets/{Index.20c9a5c3.js → Index.9f6b0325.js} +1 -1
  21. package/dist/assets/{Index.a1347321.js → Index.adb84dc1.js} +1 -1
  22. package/dist/assets/{Index.01d89595.js → Index.adc3ebf5.js} +1 -1
  23. package/dist/assets/{Index.364e09b0.js → Index.b445d55e.js} +1 -1
  24. package/dist/assets/Index.b5d45c6c.js +3 -0
  25. package/dist/assets/{Index.d9a3a718.js → Index.defa508f.js} +1 -1
  26. package/dist/assets/{Index.45b5afe3.js → Index.fa37277c.js} +1 -1
  27. package/dist/assets/{InfoIcon.989d81d0.js → InfoIcon.dc090df0.js} +1 -1
  28. package/dist/assets/{Invitees.cd807e21.js → Invitees.16fce8c1.js} +1 -1
  29. package/dist/assets/{List.5f7d067b.js → List.c3c21078.js} +1 -1
  30. package/dist/assets/{List.26ad929a.js → List.ca46f9d3.js} +1 -1
  31. package/dist/assets/{List.4c433b1c.js → List.fc1b39d9.js} +1 -1
  32. package/dist/assets/{Login.0286e588.js → Login.4307daa9.js} +1 -1
  33. package/dist/assets/{Main.af91177c.js → Main.fb88451b.js} +1 -1
  34. package/dist/assets/{Manage.52efe8c0.js → Manage.a3953f22.js} +1 -1
  35. package/dist/assets/MarkdownRenderer.3cc48d18.js +1 -0
  36. package/dist/assets/{Navigator.bd5bb4d4.js → Navigator.38ac2806.js} +1 -1
  37. package/dist/assets/{Pagination.67b908d1.js → Pagination.f18f50ea.js} +1 -1
  38. package/dist/assets/{Setting.58a32d46.js → Setting.3cc1225c.js} +1 -1
  39. package/dist/assets/{Status.c5ff1830.js → Status.dfe496d9.js} +1 -1
  40. package/dist/assets/{Subscribe.a6e742e0.js → Subscribe.d54e518e.js} +1 -1
  41. package/dist/assets/chat.09140251.js +1 -0
  42. package/dist/assets/chat.1fe60e77.js +1 -0
  43. package/dist/assets/chat.3067849f.js +1 -0
  44. package/dist/assets/chat.396dbd35.js +1 -0
  45. package/dist/assets/chat.4180b1b3.js +1 -0
  46. package/dist/assets/chat.4d2060cf.js +1 -0
  47. package/dist/assets/chat.5de11f71.js +1 -0
  48. package/dist/assets/chat.6688a28b.js +1 -0
  49. package/dist/assets/chat.759ff1a9.js +1 -0
  50. package/dist/assets/chat.805c52e6.js +1 -0
  51. package/dist/assets/chat.8b247a31.js +1 -0
  52. package/dist/assets/chat.8fedcac0.js +1 -0
  53. package/dist/assets/chat.a52503b6.js +1 -0
  54. package/dist/assets/chat.af60f900.js +1 -0
  55. package/dist/assets/chat.b83bb01d.js +1 -0
  56. package/dist/assets/chat.cde8463f.js +1 -0
  57. package/dist/assets/chat.f5a431ae.js +1 -0
  58. package/dist/assets/common.062452c7.js +1 -0
  59. package/dist/assets/common.19b3d84a.js +1 -0
  60. package/dist/assets/{common.d280487b.js → common.1e8b5bc2.js} +1 -1
  61. package/dist/assets/common.38add54c.js +1 -0
  62. package/dist/assets/common.4747daff.js +1 -0
  63. package/dist/assets/common.51164692.js +1 -0
  64. package/dist/assets/common.5c25504e.js +1 -0
  65. package/dist/assets/common.6175653e.js +1 -0
  66. package/dist/assets/common.65b85642.js +1 -0
  67. package/dist/assets/{common.cfe58d23.js → common.7129d1fe.js} +1 -1
  68. package/dist/assets/common.92c67b14.js +1 -0
  69. package/dist/assets/common.a201a8a5.js +1 -0
  70. package/dist/assets/common.a984bbd7.js +1 -0
  71. package/dist/assets/common.d0afcee0.js +1 -0
  72. package/dist/assets/common.e9e3b173.js +1 -0
  73. package/dist/assets/common.ee887045.js +1 -0
  74. package/dist/assets/common.f1982db6.js +1 -0
  75. package/dist/assets/common.f79a6ca0.js +1 -0
  76. package/dist/assets/{distribution.0360ec9a.js → distribution.e98c1651.js} +1 -1
  77. package/dist/assets/{index.fe7d50bd.js → index.66e73c9d.js} +2 -2
  78. package/dist/assets/index.9d20d705.css +1 -0
  79. package/dist/assets/{order.7d8c923b.js → order.8ba2e7e4.js} +1 -1
  80. package/dist/assets/{price.b6c86059.js → price.b517b0e3.js} +1 -1
  81. package/dist/assets/site.0d09a299.js +1 -0
  82. package/dist/assets/site.16d84f3e.js +1 -0
  83. package/dist/assets/site.2b6ac139.js +1 -0
  84. package/dist/assets/site.368762c7.js +1 -0
  85. package/dist/assets/site.38cea3f5.js +1 -0
  86. package/dist/assets/site.5119fa9b.js +1 -0
  87. package/dist/assets/site.521743f7.js +1 -0
  88. package/dist/assets/site.62287b09.js +1 -0
  89. package/dist/assets/site.701129fc.js +1 -0
  90. package/dist/assets/site.922c989d.js +1 -0
  91. package/dist/assets/site.92448663.js +1 -0
  92. package/dist/assets/site.adaebb73.js +1 -0
  93. package/dist/assets/site.c4c03be0.js +1 -0
  94. package/dist/assets/site.c5a62a6c.js +1 -0
  95. package/dist/assets/site.e6403a84.js +1 -0
  96. package/dist/assets/site.e8100f2d.js +1 -0
  97. package/dist/assets/site.f1d7aa30.js +1 -0
  98. package/dist/assets/suno.11a87282.js +1 -0
  99. package/dist/assets/suno.1be97baf.js +1 -0
  100. package/dist/assets/suno.24cd0310.js +1 -0
  101. package/dist/assets/suno.25bb05ed.js +1 -0
  102. package/dist/assets/suno.49a68bb2.js +1 -0
  103. package/dist/assets/suno.4eca31c0.js +1 -0
  104. package/dist/assets/suno.543a3c6e.js +1 -0
  105. package/dist/assets/suno.5f9effcb.js +1 -0
  106. package/dist/assets/suno.662af20d.js +1 -0
  107. package/dist/assets/suno.6ccfde65.js +1 -0
  108. package/dist/assets/suno.7ed12627.js +1 -0
  109. package/dist/assets/suno.89ed91a4.js +1 -0
  110. package/dist/assets/suno.98ce96c4.js +1 -0
  111. package/dist/assets/suno.c871ede5.js +1 -0
  112. package/dist/assets/suno.c885f440.js +1 -0
  113. package/dist/assets/suno.ddd59617.js +1 -0
  114. package/dist/assets/suno.ef7efa5e.js +1 -0
  115. package/dist/assets/suno.fea07aa0.js +1 -0
  116. package/dist/index.html +2 -2
  117. package/package.json +1 -1
  118. package/dist/assets/Index.5afe44ec.js +0 -3
  119. package/dist/assets/Index.9deb653e.css +0 -1
  120. package/dist/assets/MarkdownRenderer.1b4c01e5.js +0 -1
  121. package/dist/assets/chat.15ec587f.js +0 -1
  122. package/dist/assets/chat.410230f9.js +0 -1
  123. package/dist/assets/chat.47ae8101.js +0 -1
  124. package/dist/assets/chat.6eda6ee7.js +0 -1
  125. package/dist/assets/chat.7dbed540.js +0 -1
  126. package/dist/assets/chat.81a8849f.js +0 -1
  127. package/dist/assets/chat.951453e8.js +0 -1
  128. package/dist/assets/chat.a27d15da.js +0 -1
  129. package/dist/assets/chat.a6b68525.js +0 -1
  130. package/dist/assets/chat.a7b89cfd.js +0 -1
  131. package/dist/assets/chat.bddee5c4.js +0 -1
  132. package/dist/assets/chat.cbaab915.js +0 -1
  133. package/dist/assets/chat.db1daca8.js +0 -1
  134. package/dist/assets/chat.dd3ed400.js +0 -1
  135. package/dist/assets/chat.de73056c.js +0 -1
  136. package/dist/assets/chat.e0cb47d5.js +0 -1
  137. package/dist/assets/chat.e6fbf80e.js +0 -1
  138. package/dist/assets/common.13804e02.js +0 -1
  139. package/dist/assets/common.1dea6262.js +0 -1
  140. package/dist/assets/common.1fe387de.js +0 -1
  141. package/dist/assets/common.227fc276.js +0 -1
  142. package/dist/assets/common.2314c831.js +0 -1
  143. package/dist/assets/common.2ec4539a.js +0 -1
  144. package/dist/assets/common.3a101f7e.js +0 -1
  145. package/dist/assets/common.3d8fed46.js +0 -1
  146. package/dist/assets/common.4d1fe119.js +0 -1
  147. package/dist/assets/common.77aaeb64.js +0 -1
  148. package/dist/assets/common.7d2b3e02.js +0 -1
  149. package/dist/assets/common.835c9a60.js +0 -1
  150. package/dist/assets/common.b48482ce.js +0 -1
  151. package/dist/assets/common.bd34d69d.js +0 -1
  152. package/dist/assets/common.cb02cfd0.js +0 -1
  153. package/dist/assets/common.d17d597f.js +0 -1
  154. package/dist/assets/index.56bf2312.css +0 -1
  155. package/dist/assets/site.08e4c14c.js +0 -1
  156. package/dist/assets/site.151688dc.js +0 -1
  157. package/dist/assets/site.1567a853.js +0 -1
  158. package/dist/assets/site.1a5f33f4.js +0 -1
  159. package/dist/assets/site.45b77f12.js +0 -1
  160. package/dist/assets/site.4676fe09.js +0 -1
  161. package/dist/assets/site.5276fc3b.js +0 -1
  162. package/dist/assets/site.63f28d5c.js +0 -1
  163. package/dist/assets/site.6a7df014.js +0 -1
  164. package/dist/assets/site.7bf7f5f0.js +0 -1
  165. package/dist/assets/site.a5272b41.js +0 -1
  166. package/dist/assets/site.b1264b69.js +0 -1
  167. package/dist/assets/site.c7ce6362.js +0 -1
  168. package/dist/assets/site.cc83d8e1.js +0 -1
  169. package/dist/assets/site.d1137fd7.js +0 -1
  170. package/dist/assets/site.e785a0fb.js +0 -1
  171. package/dist/assets/site.f1603ace.js +0 -1
  172. package/dist/assets/suno.067d08d5.js +0 -1
  173. package/dist/assets/suno.06f488a0.js +0 -1
  174. package/dist/assets/suno.0d0b3167.js +0 -1
  175. package/dist/assets/suno.130d375e.js +0 -1
  176. package/dist/assets/suno.131a13da.js +0 -1
  177. package/dist/assets/suno.1a4dee58.js +0 -1
  178. package/dist/assets/suno.256e43be.js +0 -1
  179. package/dist/assets/suno.2b0db2f6.js +0 -1
  180. package/dist/assets/suno.406d72fb.js +0 -1
  181. package/dist/assets/suno.62991510.js +0 -1
  182. package/dist/assets/suno.a1c54502.js +0 -1
  183. package/dist/assets/suno.aa1e6bd8.js +0 -1
  184. package/dist/assets/suno.bbc0ba33.js +0 -1
  185. package/dist/assets/suno.c7868d9e.js +0 -1
  186. package/dist/assets/suno.c7d66002.js +0 -1
  187. package/dist/assets/suno.d55c5890.js +0 -1
  188. package/dist/assets/suno.f8f4e59f.js +0 -1
  189. package/dist/assets/suno.f9072af1.js +0 -1
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{_}from"./index.fe7d50bd.js";import{d as s,e as c}from"./vendor-element-plus.b61d898b.js";import{H as i,al as e,L as p,M as o,o as m,V as t}from"./vendor-@vue.30126b18.js";import"./vendor-markdown.64d20655.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-fortawesome.a228a0e7.js";const l=i({name:"LayoutAuth",components:{ElContainer:s,ElMain:c}});function u(d,f,v,h,x,w){const n=e("router-view"),r=e("el-main"),a=e("el-container");return m(),p(a,null,{default:o(()=>[t(r,null,{default:o(()=>[t(n)]),_:1})]),_:1})}var L=_(l,[["render",u],["__scopeId","data-v-8e16c232"],["__file","/home/runner/work/Nexior/Nexior/src/layouts/Auth.vue"]]);export{L as default};
1
+ import"./vendor-others.32a9cc65.js";import{_}from"./index.66e73c9d.js";import{d as s,e as c}from"./vendor-element-plus.b61d898b.js";import{H as i,al as e,L as p,M as o,o as m,V as t}from"./vendor-@vue.30126b18.js";import"./vendor-markdown.64d20655.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-fortawesome.a228a0e7.js";const l=i({name:"LayoutAuth",components:{ElContainer:s,ElMain:c}});function u(d,f,v,h,x,w){const n=e("router-view"),r=e("el-main"),a=e("el-container");return m(),p(a,null,{default:o(()=>[t(r,null,{default:o(()=>[t(n)]),_:1})]),_:1})}var L=_(l,[["render",u],["__scopeId","data-v-8e16c232"],["__file","/home/runner/work/Nexior/Nexior/src/layouts/Auth.vue"]]);export{L as default};
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{_ as r}from"./index.fe7d50bd.js";import{H as t}from"./vendor-@vue.30126b18.js";import"./vendor-element-plus.b61d898b.js";import"./vendor-markdown.64d20655.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-fortawesome.a228a0e7.js";const a=t({name:"AuthCallback",data(){var e;return{redirect:(e=this.$route.query.redirect)==null?void 0:e.toString()}},async mounted(){this.redirect?await this.$router.push(this.redirect):await this.$router.push("/")}});var n=r(a,[["__scopeId","data-v-4aa7f9d0"],["__file","/home/runner/work/Nexior/Nexior/src/pages/auth/Callback.vue"]]);export{n as default};
1
+ import"./vendor-others.32a9cc65.js";import{_ as r}from"./index.66e73c9d.js";import{H as t}from"./vendor-@vue.30126b18.js";import"./vendor-element-plus.b61d898b.js";import"./vendor-markdown.64d20655.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-fortawesome.a228a0e7.js";const a=t({name:"AuthCallback",data(){var e;return{redirect:(e=this.$route.query.redirect)==null?void 0:e.toString()}},async mounted(){this.redirect?await this.$router.push(this.redirect):await this.$router.push("/")}});var n=r(a,[["__scopeId","data-v-4aa7f9d0"],["__file","/home/runner/work/Nexior/Nexior/src/pages/auth/Callback.vue"]]);export{n as default};
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{aj as v,ai as y,_ as C}from"./index.fe7d50bd.js";import{ar as $}from"./vendor-fortawesome.a228a0e7.js";import{q as w,r as g}from"./vendor-element-plus.b61d898b.js";import{H as k,al as n,o as s,e as d,L as l,M as p,f as r,V as N,T as u,U as x,ai as A,S as I,R as M,I as E}from"./vendor-@vue.30126b18.js";const R=k({name:"LayoutChatdoc",components:{ElMenu:w,ElMenuItem:g,FontAwesomeIcon:$},data(){var e,t;return{repositoryId:(t=(e=this.$route.params)==null?void 0:e.repositoryId)==null?void 0:t.toString(),drawer:!1,menuItems:[{index:"chat",title:this.$t("chatdoc.nav.chat"),route:{name:v}},{index:"manage",title:this.$t("chatdoc.nav.manage"),route:{name:y}}]}},computed:{activeMenu(){var t;const e=this.menuItems.filter(o=>{var a;return((a=o.route)==null?void 0:a.name)===this.$route.name});if(e)return(t=e[0])==null?void 0:t.index},repository(){var e,t,o;return(o=(t=(e=this.$store.state)==null?void 0:e.chatdoc)==null?void 0:t.repositories)==null?void 0:o.find(a=>a.id===this.repositoryId)}},async mounted(){await this.getService(),await this.onGetApplications(),await this.onGetRepositories()},methods:{async getService(){await this.$store.dispatch("chatdoc/getService")},async onGetApplications(){await this.$store.dispatch("chatdoc/getApplications")},async onGetRepositories(){await this.$store.dispatch("chatdoc/getRepositories")},async onClickMenu(e){this.activeMenu=e.index,e.route&&await this.$router.push({...e.route,params:{id:this.repositoryId}})}}}),S={class:"main"},T={class:"repository"},O={class:"chatdoc"};function V(e,t,o,a,G,L){const m=n("font-awesome-icon"),h=n("el-menu-item"),_=n("el-menu");return s(),d("div",S,[e.repositoryId?(s(),l(_,{key:0,"default-active":e.activeMenu,mode:"horizontal",ellipsis:!1,class:"menu"},{default:p(()=>{var c;return[r("div",T,[N(m,{class:"mr-2",icon:["fas","book"]}),r("span",null,u((c=e.repository)==null?void 0:c.name),1)]),(s(!0),d(x,null,A(e.menuItems,(i,f)=>(s(),l(h,{key:f,index:i.index,onClick:B=>e.onClickMenu(i)},{default:p(()=>[I(u(i.title),1)]),_:2},1032,["index","onClick"]))),128))]}),_:1},8,["default-active"])):M("v-if",!0),r("div",O,[E(e.$slots,"chatdoc",{},void 0,!0)])])}var j=C(R,[["render",V],["__scopeId","data-v-35d9dd71"],["__file","/home/runner/work/Nexior/Nexior/src/layouts/Chatdoc.vue"]]);export{j as L};
1
+ import"./vendor-others.32a9cc65.js";import{aj as v,ai as y,_ as C}from"./index.66e73c9d.js";import{ar as $}from"./vendor-fortawesome.a228a0e7.js";import{q as w,r as g}from"./vendor-element-plus.b61d898b.js";import{H as k,al as n,o as s,e as d,L as l,M as p,f as r,V as N,T as u,U as x,ai as A,S as I,R as M,I as E}from"./vendor-@vue.30126b18.js";const R=k({name:"LayoutChatdoc",components:{ElMenu:w,ElMenuItem:g,FontAwesomeIcon:$},data(){var e,t;return{repositoryId:(t=(e=this.$route.params)==null?void 0:e.repositoryId)==null?void 0:t.toString(),drawer:!1,menuItems:[{index:"chat",title:this.$t("chatdoc.nav.chat"),route:{name:v}},{index:"manage",title:this.$t("chatdoc.nav.manage"),route:{name:y}}]}},computed:{activeMenu(){var t;const e=this.menuItems.filter(o=>{var a;return((a=o.route)==null?void 0:a.name)===this.$route.name});if(e)return(t=e[0])==null?void 0:t.index},repository(){var e,t,o;return(o=(t=(e=this.$store.state)==null?void 0:e.chatdoc)==null?void 0:t.repositories)==null?void 0:o.find(a=>a.id===this.repositoryId)}},async mounted(){await this.getService(),await this.onGetApplications(),await this.onGetRepositories()},methods:{async getService(){await this.$store.dispatch("chatdoc/getService")},async onGetApplications(){await this.$store.dispatch("chatdoc/getApplications")},async onGetRepositories(){await this.$store.dispatch("chatdoc/getRepositories")},async onClickMenu(e){this.activeMenu=e.index,e.route&&await this.$router.push({...e.route,params:{id:this.repositoryId}})}}}),S={class:"main"},T={class:"repository"},O={class:"chatdoc"};function V(e,t,o,a,G,L){const m=n("font-awesome-icon"),h=n("el-menu-item"),_=n("el-menu");return s(),d("div",S,[e.repositoryId?(s(),l(_,{key:0,"default-active":e.activeMenu,mode:"horizontal",ellipsis:!1,class:"menu"},{default:p(()=>{var c;return[r("div",T,[N(m,{class:"mr-2",icon:["fas","book"]}),r("span",null,u((c=e.repository)==null?void 0:c.name),1)]),(s(!0),d(x,null,A(e.menuItems,(i,f)=>(s(),l(h,{key:f,index:i.index,onClick:B=>e.onClickMenu(i)},{default:p(()=>[I(u(i.title),1)]),_:2},1032,["index","onClick"]))),128))]}),_:1},8,["default-active"])):M("v-if",!0),r("div",O,[E(e.$slots,"chatdoc",{},void 0,!0)])])}var j=C(R,[["render",V],["__scopeId","data-v-35d9dd71"],["__file","/home/runner/work/Nexior/Nexior/src/layouts/Chatdoc.vue"]]);export{j as L};
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{N as v}from"./Navigator.bd5bb4d4.js";import{i as h,R as $,a as w,b as N,c as g,_}from"./index.fe7d50bd.js";import{ar as x}from"./vendor-fortawesome.a228a0e7.js";import{H as m,al as a,o as t,e as i,f as s,U as C,ai as L,P as O,V as r,T as y,L as E,R as k}from"./vendor-@vue.30126b18.js";import"./vendor-element-plus.b61d898b.js";import"./vendor-markdown.64d20655.js";import"./EditArray.78f5f86c.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";const S=m({name:"Navigator",components:{FontAwesomeIcon:x},computed:{isOfficial(){return h()},active(){return this.$route.matched[0].path},user(){return this.$store.getters.user},links(){return[{key:"application-list",text:this.$t("console.menu.applicationList"),name:$,icon:"fa-solid fa-cube"},{key:"order-list",text:this.$t("console.menu.orderList"),name:w,icon:"fa-solid fa-store"},{key:"usage-list",text:this.$t("console.menu.usageList"),name:N,icon:"fa-solid fa-rotate-left"}]}},mounted(){},methods:{onHome(){this.$router.push({name:g})},onNavigate(e){e.name?this.$router.push({name:e.name}):e.href&&window.open(e.href,"_blank")}}}),I={class:"side-panel"},T={class:"links"},R=["onClick"],b={class:"icon"},P={class:"text"},U={class:"outer"};function A(e,c,d,p,u,f){const n=a("font-awesome-icon");return t(),i("div",I,[s("div",T,[(t(!0),i(C,null,L(e.links,(o,l)=>(t(),i("a",{key:l,class:O({link:!0,active:e.$route.name===o.name}),onClick:H=>e.onNavigate(o)},[s("span",b,[r(n,{icon:o.icon,class:"text-sm"},null,8,["icon"])]),s("span",P,y(o.text),1),s("span",U,[!o.name&&o.href?(t(),E(n,{key:0,icon:"fa-solid fa-up-right-from-square",class:"text-sm ml-2"})):k("v-if",!0)]),c[0]||(c[0]=s("span",{class:"suffix"},null,-1))],10,R))),128))])])}var B=_(S,[["render",A],["__scopeId","data-v-3859f1b5"],["__file","/home/runner/work/Nexior/Nexior/src/components/console/SidePanel.vue"]]);const V=m({name:"LayoutConsole",components:{SidePanel:B,Navigator:v},data(){return{mobile:window.innerWidth<768}},mounted(){window.addEventListener("resize",()=>{this.mobile=window.innerWidth<768})}}),D={class:"wrapper"},z={class:"main"};function F(e,c,d,p,u,f){const n=a("side-panel"),o=a("router-view"),l=a("navigator");return t(),i("div",D,[s("div",z,[r(n,{class:"side"}),r(o,{class:"panel"})]),r(l,{class:"navigator",direction:e.mobile?"row":"column"},null,8,["direction"])])}var Z=_(V,[["render",F],["__scopeId","data-v-44569c68"],["__file","/home/runner/work/Nexior/Nexior/src/layouts/Console.vue"]]);export{Z as default};
1
+ import"./vendor-others.32a9cc65.js";import{N as v}from"./Navigator.38ac2806.js";import{i as h,R as $,a as w,b as N,c as g,_}from"./index.66e73c9d.js";import{ar as x}from"./vendor-fortawesome.a228a0e7.js";import{H as m,al as a,o as t,e as i,f as s,U as C,ai as L,P as O,V as r,T as y,L as E,R as k}from"./vendor-@vue.30126b18.js";import"./vendor-element-plus.b61d898b.js";import"./vendor-markdown.64d20655.js";import"./EditArray.b5790d1c.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";const S=m({name:"Navigator",components:{FontAwesomeIcon:x},computed:{isOfficial(){return h()},active(){return this.$route.matched[0].path},user(){return this.$store.getters.user},links(){return[{key:"application-list",text:this.$t("console.menu.applicationList"),name:$,icon:"fa-solid fa-cube"},{key:"order-list",text:this.$t("console.menu.orderList"),name:w,icon:"fa-solid fa-store"},{key:"usage-list",text:this.$t("console.menu.usageList"),name:N,icon:"fa-solid fa-rotate-left"}]}},mounted(){},methods:{onHome(){this.$router.push({name:g})},onNavigate(e){e.name?this.$router.push({name:e.name}):e.href&&window.open(e.href,"_blank")}}}),I={class:"side-panel"},T={class:"links"},R=["onClick"],b={class:"icon"},P={class:"text"},U={class:"outer"};function A(e,c,d,p,u,f){const n=a("font-awesome-icon");return t(),i("div",I,[s("div",T,[(t(!0),i(C,null,L(e.links,(o,l)=>(t(),i("a",{key:l,class:O({link:!0,active:e.$route.name===o.name}),onClick:H=>e.onNavigate(o)},[s("span",b,[r(n,{icon:o.icon,class:"text-sm"},null,8,["icon"])]),s("span",P,y(o.text),1),s("span",U,[!o.name&&o.href?(t(),E(n,{key:0,icon:"fa-solid fa-up-right-from-square",class:"text-sm ml-2"})):k("v-if",!0)]),c[0]||(c[0]=s("span",{class:"suffix"},null,-1))],10,R))),128))])])}var B=_(S,[["render",A],["__scopeId","data-v-3859f1b5"],["__file","/home/runner/work/Nexior/Nexior/src/components/console/SidePanel.vue"]]);const V=m({name:"LayoutConsole",components:{SidePanel:B,Navigator:v},data(){return{mobile:window.innerWidth<768}},mounted(){window.addEventListener("resize",()=>{this.mobile=window.innerWidth<768})}}),D={class:"wrapper"},z={class:"main"};function F(e,c,d,p,u,f){const n=a("side-panel"),o=a("router-view"),l=a("navigator");return t(),i("div",D,[s("div",z,[r(n,{class:"side"}),r(o,{class:"panel"})]),r(l,{class:"navigator",direction:e.mobile?"row":"column"},null,8,["direction"])])}var Z=_(V,[["render",F],["__scopeId","data-v-44569c68"],["__file","/home/runner/work/Nexior/Nexior/src/layouts/Console.vue"]]);export{Z as default};
@@ -1 +1 @@
1
- import{a as le}from"./vendor-axios.168e6950.js";import{ak as de}from"./vendor-others.32a9cc65.js";import{_ as D,K as J,L as N,M as oe,N as ne,O as B,P as ce,Q as ue,T as pe,U as me,V as he,W as Z,X as O,H as ge,A as _e,Y as j,Z as x,$ as ee,a0 as Q,a1 as H,a2 as K,a3 as fe,a4 as $e,a5 as ye}from"./index.fe7d50bd.js";import{H as I,o as n,e as u,al as l,L as f,M as C,V as m,f as r,O as M,W,T as R,R as w,av as ve,U as L,ai as U,as as X,$ as T,S as z,P as G,aw as we,a0 as Ce,I as se}from"./vendor-@vue.30126b18.js";import{M as ke}from"./MarkdownRenderer.1b4c01e5.js";import{C as be}from"./CopyToClipboard.2d947214.js";import{ar as A}from"./vendor-fortawesome.a228a0e7.js";import{s as Y,P as Ee,I as Re,u as ae,m as Se,t as ie,x as qe,y as te,h as De,i as Ie,j as Ne,H as Ge,Q as Ae}from"./vendor-element-plus.b61d898b.js";import{I as Oe}from"./ImagePreview.a0e715c5.js";import"./vendor-markdown.64d20655.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-highlight.js.6ee9ffbc.js";const Te=I({name:"AnsweringMark",data(){return{}},computed:{conversationId(){var e,s;return(s=(e=this.$route.params)==null?void 0:e.id)==null?void 0:s.toString()}}}),Me={class:"mark"};function Le(e,s,o,p,h,a){return n(),u("div",Me)}var Ue=D(Te,[["render",Le],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/AnsweringMark.vue"]]);const Pe=I({name:"CopyToClipboard",components:{FontAwesomeIcon:A,ElTooltip:Y},props:{messages:{type:Array,required:!1,default:()=>[]}},emits:["restart"],data(){return{copied:!1}},methods:{onRestart(){this.$emit("restart")}}});function Ve(e,s,o,p,h,a){const i=l("font-awesome-icon"),c=l("el-tooltip");return n(),f(c,{effect:"dark",content:e.$t("common.button.restart"),placement:"bottom"},{default:C(()=>[m(i,{icon:"fa-solid fa-sync",class:"icon-sync",onClick:e.onRestart},null,8,["onClick"])]),_:1},8,["content"])}var Fe=D(Pe,[["render",Ve],["__scopeId","data-v-18116778"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/RestartToGenerate.vue"]]);const He=I({name:"EditMessage",components:{FontAwesomeIcon:A,ElTooltip:Y},props:{messages:{type:Array,required:!1,default:()=>[]}},emits:["click"],data(){return{copied:!1}},methods:{onEdit(){this.$emit("click")}}});function Be(e,s,o,p,h,a){const i=l("font-awesome-icon"),c=l("el-tooltip");return n(),u("span",null,[m(c,{effect:"dark",content:e.$t("common.button.restart"),placement:"bottom"},{default:C(()=>[m(i,{icon:"fa-solid fa-edit",class:"icon icon-edit",onClick:e.onEdit},null,8,["onClick"])]),_:1},8,["content"])])}var We=D(He,[["render",Be],["__scopeId","data-v-5c26bf56"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/EditMessage.vue"]]);const je=I({name:"FilePreview",components:{FontAwesomeIcon:A,ElProgress:Ee},props:{name:{type:String,required:!0},percentage:{type:Number,required:!0},closable:{type:Boolean,required:!1,default:!0}},emits:["remove"],methods:{isImageUrl:J}}),Ke={class:"file"},ze={class:"left"},Qe={class:"wrapper"},Je={class:"right"},Xe={class:"text-xs font-bold truncate"},Ye={key:0,class:"close"};function Ze(e,s,o,p,h,a){const i=l("font-awesome-icon"),c=l("el-progress");return n(),u("div",Ke,[r("div",ze,[r("div",Qe,[m(i,{icon:"fa-regular fa-file-alt"}),M(m(c,{type:"circle","stroke-width":3,percentage:e.percentage,width:25},null,8,["percentage"]),[[W,e.percentage&&e.percentage<100]])])]),r("div",Je,[r("span",Xe,R(e.name),1)]),e.closable?(n(),u("div",Ye,[m(i,{icon:"fa-solid fa-xmark",class:"icon icon-close",onClick:s[0]||(s[0]=$=>e.$emit("remove"))})])):w("v-if",!0)])}var re=D(je,[["render",Ze],["__scopeId","data-v-0b782a78"],["__file","/home/runner/work/Nexior/Nexior/src/components/common/FilePreview.vue"]]);const xe=I({name:"Message",components:{EditMessage:We,CopyToClipboard:be,RestartToGenerate:Fe,AnsweringMark:Ue,MarkdownRenderer:ke,ElAlert:Re,FilePreview:re,ElButton:ae,ElImage:Se,ElInput:ie},props:{messages:{type:Array,required:!1,default:()=>[]},message:{type:Object,required:!0},application:{type:Object,required:!0}},emits:["stop","edit","restart"],data(){return{copied:!1,isEditing:!1,questionValue:this.message.content,messageState:N}},computed:{modelGroup(){return this.$store.state.chat.modelGroup},errorText(){var e,s,o;if(console.debug("error",this.message.error),!(!this.message.error||!((e=this.message.error)!=null&&e.code))){if((s=this.message.error)!=null&&s.message)return this.message.error.message;switch((o=this.message.error)==null?void 0:o.code){case Z:return this.$t("chat.message.errorUsedUp");case he:return this.$t("chat.message.errorApiError");case me:return this.$t("chat.message.errorBadRequest");case pe:return this.$t("chat.message.errorTimeout");case ue:return this.$t("chat.message.errorTooManyRequests");case ce:return this.$t("chat.message.errorContentTooLarge");case B:return this.$t("chat.message.errorNotApplied");case ne:return;case oe:default:return this.$t("chat.message.errorUnknown")}}},showBuyMore(){var e;return this.message.role===O&&((e=this.message.error)==null?void 0:e.code)===Z}},watch:{},methods:{startEditing(){this.isEditing=!0,this.questionValue=this.message.content,console.debug("start to get answer",this.message)},cancelEdit(){this.isEditing=!1},onRestart(){this.$emit("restart",this.message)},onEdit(){this.isEditing=!1,this.onSubmit()},onSubmit(){this.$emit("edit",this.message,this.questionValue)},onCopy(){de(this.message.content.toString(),{debug:!0}),this.copied=!0,setTimeout(()=>{this.copied=!1},3e3)},onBuyMore(){var e;this.$router.push({name:ge,params:{id:(e=this.application)==null?void 0:e.id}})}}}),es=["role"],ss={class:"author"},ts={key:0,class:"main"},os={initial:{opacity:0,y:5},enter:{opacity:1,y:0,scale:1},delay:200,duration:300,layout:!0,transition:{enter:{delay:.2,duration:.5},layout:{duration:.3,easing:"ease-in-out"}},class:"content"},ns={key:0,class:"message-content"},as={key:1},is=["src"],rs={key:1,class:"edits"},ls={class:"flex justify-end"},ds={class:"operations"};function cs(e,s,o,p,h,a){var E;const i=l("el-image"),c=l("markdown-renderer"),$=l("file-preview"),y=l("el-input"),d=l("el-button"),t=l("answering-mark"),k=l("edit-message"),S=l("copy-to-clipboard"),g=l("restart-to-generate"),_=l("el-alert"),q=ve("motion");return n(),u("div",{class:G({message:!0,[e.message.role]:!0}),role:e.message.role},[r("div",ss,[e.message.role==="assistant"?(n(),f(i,{key:0,src:e.modelGroup.icon,fit:"cover",class:"avatar"},null,8,["src"])):w("v-if",!0)]),e.errorText?(n(),f(_,{key:1,class:"error",title:e.errorText,type:"error",closable:!1},null,8,["title"])):(n(),u("div",ts,[M((n(),u("div",os,[e.isEditing?(n(),u("div",rs,[m(y,{modelValue:e.questionValue,"onUpdate:modelValue":s[0]||(s[0]=v=>e.questionValue=v),type:"textarea",class:"mb-2",onKeydown:X(T(e.onEdit,["exact","prevent"]),["enter"])},null,8,["modelValue","onKeydown"]),r("div",ls,[m(d,{round:"",onClick:e.cancelEdit},{default:C(()=>[z(R(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),m(d,{type:"primary",class:"btn-confirm",round:"",onClick:e.onEdit},{default:C(()=>[z(R(e.$t("common.button.confirm")),1)]),_:1},8,["onClick"])])])):(n(),u("div",ns,[Array.isArray(e.message.content)?(n(),u("div",as,[(n(!0),u(L,null,U(e.message.content,(v,P)=>{var V,F;return n(),u("div",{key:P},[v.type==="image_url"?(n(),u("img",{key:0,src:typeof(v==null?void 0:v.image_url)=="string"?v.image_url:(V=v.image_url)==null?void 0:V.url,fit:"cover",class:"image"},null,8,is)):w("v-if",!0),v.file_url?(n(),f($,{key:1,name:typeof(v==null?void 0:v.file_url)=="string"?v.file_url:(F=v.file_url)==null?void 0:F.url,percentage:0,closable:!1,class:"mt-2"},null,8,["name"])):w("v-if",!0),v.type==="text"?(n(),f(c,{key:P,content:v.text},null,8,["content"])):w("v-if",!0)])}),128))])):(n(),f(c,{key:0,content:(E=e.message)==null?void 0:E.content},null,8,["content"]))])),e.message.state===e.messageState.PENDING?(n(),f(t,{key:2})):w("v-if",!0)])),[[q]]),r("div",ds,[e.message.role==="user"&&!e.isEditing&&!Array.isArray(e.message.content)?(n(),f(k,{key:0,class:"btn-edit",onClick:e.startEditing},null,8,["onClick"])):w("v-if",!0),!Array.isArray(e.message.content)&&(e.message.state===e.messageState.FINISHED||e.message.state===e.messageState.FAILED)?(n(),f(S,{key:1,content:e.message.content,class:"btn-copy"},null,8,["content"])):w("v-if",!0),!Array.isArray(e.message.content)&&(e.message.state===e.messageState.FINISHED||e.message.state===e.messageState.FAILED)&&e.message.role==="assistant"&&e.message===e.messages[e.messages.length-1]?(n(),f(g,{key:2,class:"btn-restart",messages:e.messages,onRestart:e.onRestart},null,8,["messages","onRestart"])):w("v-if",!0)])])),e.showBuyMore?(n(),f(d,{key:2,round:"",type:"primary",class:"btn btn-buy",size:"small",onClick:e.onBuyMore},{default:C(()=>[z(R(e.$t("common.button.buyMore")),1)]),_:1},8,["onClick"])):w("v-if",!0)],10,es)}var us=D(xe,[["render",cs],["__scopeId","data-v-f0476f80"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/Message.vue"]]);const ps=I({name:"Composer",components:{FilePreview:re,ImagePreview:Oe,ElTooltip:Y,FontAwesomeIcon:A,ElUpload:qe},props:{disabled:{type:Boolean,required:!1,default:!1},references:{type:Array,required:!1,default:()=>[]},question:{type:String,required:!0}},emits:["update:question","update:references","submit","stop"],data(){return{inputHeight:"35px",questionValue:this.question,fileList:[],uploadUrl:_e()+"/api/v1/files/"}},computed:{model(){return this.$store.state.chat.model},modelGroup(){return this.$store.state.chat.modelGroup},headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>{var s;return(s=e==null?void 0:e.response)==null?void 0:s.file_url})}},watch:{urls(e){console.debug("File URLs:",e),e.length>0&&this.$emit("update:references",e)},questionValue(e){this.$emit("update:question",e)},question(e){e!==this.questionValue&&(this.questionValue=e)},references(e){console.debug("References updated:",e),e.length===0&&(this.fileList=[])}},methods:{isImageUrl:J,adjustTextareaHeight(){this.$nextTick(()=>{const e=this.$refs.textarea;e&&(e.style.height="35px",e.style.height=e.scrollHeight+"px")})},onSubmit(){!this.question||this.$emit("submit")},onStop(){this.$emit("stop")},onProgress(e,s,o){console.debug("File upload progress:",s.name,e.loaded,e.total)},onExceed(){te.warning(this.$t("chat.message.uploadReferencesExceed"))},onError(){te.error(this.$t("chat.message.uploadReferencesError"))}}}),ms={class:"composer"},hs={class:"tools"},gs=["disabled","placeholder"];function _s(e,s,o,p,h,a){const i=l("image-preview"),c=l("file-preview"),$=l("font-awesome-icon"),y=l("el-tooltip"),d=l("el-upload");return n(),u("div",ms,[r("div",hs,[m(d,{"file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=t=>e.fileList=t),class:G({upload:!0,disabled:!e.model.isFileSupported||e.disabled}),disabled:!e.model.isFileSupported||e.disabled,name:"file",limit:10,multiple:!0,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-progress":e.onProgress,headers:e.headers},{file:C(({file:t})=>{var k;return[e.isImageUrl(t.name)?(n(),f(i,{key:0,url:t.url||((k=t.response)==null?void 0:k.file_url),name:t.name,percentage:t.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(t),1)},null,8,["url","name","percentage","onRemove"])):(n(),f(c,{key:1,name:t.name,percentage:t.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(t),1)},null,8,["name","percentage","onRemove"]))]}),default:C(()=>[m(y,{class:"box-item",effect:"dark",content:e.$t("chat.message.uploadFile"),placement:"bottom"},{default:C(()=>[r("span",{class:G({btn:!0,"btn-upload":!0,disabled:!e.model.isFileSupported||e.disabled})},[m($,{icon:"fa-solid fa-plus",class:"icon icon-attachment"})],2)]),_:1},8,["content"])]),_:1},8,["file-list","class","disabled","action","on-exceed","on-error","on-progress","headers"])]),M(r("span",{class:G({btn:!0,"btn-send":!0,disabled:!e.questionValue}),onClick:s[1]||(s[1]=(...t)=>e.onSubmit&&e.onSubmit(...t))},[m($,{icon:"fa-solid fa-location-arrow",class:"icon icon-send"})],2),[[W,!e.disabled]]),M(r("span",{class:G({btn:!0,"btn-stop":!0,disabled:!e.disabled}),onClick:s[2]||(s[2]=(...t)=>e.onStop&&e.onStop(...t))},[m($,{icon:"fa-solid fa-stop",class:"icon icon-stop"})],2),[[W,e.disabled]]),M(r("textarea",{ref:"textarea","onUpdate:modelValue":s[3]||(s[3]=t=>e.questionValue=t),disabled:e.disabled,class:"input",placeholder:e.$t("chat.message.newMessagePlaceholder"),style:Ce({height:e.inputHeight}),onKeydown:s[4]||(s[4]=X(T((...t)=>e.onSubmit&&e.onSubmit(...t),["exact","prevent"]),["enter"])),onInput:s[5]||(s[5]=(...t)=>e.adjustTextareaHeight&&e.adjustTextareaHeight(...t))},null,44,gs),[[we,e.questionValue]])])}var fs=D(ps,[["render",_s],["__scopeId","data-v-a443d292"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/Composer.vue"]]);const $s=I({name:"ModelSelector",components:{ElDropdown:De,ElDropdownMenu:Ie,ElDropdownItem:Ne,FontAwesomeIcon:A},emits:["update:modelValue","select","model-group-changed","model-changed"],data(){return{options:[j,x,ee]}},computed:{model(){return console.log("model",this.$store.state.chat.model),this.$store.state.chat.model},modelGroup(){var e;return((e=this.$route.meta)==null?void 0:e.modelGroup)||j}},watch:{modelGroup(e){console.debug("modelGroup from route changed",e),this.$store.dispatch("chat/setModelGroup",e),this.$store.dispatch("chat/setModel",e.models[0])}},mounted(){console.debug("ModelSelector mounted, checking model group");const s=[j,x,ee].find(o=>o.name===this.modelGroup.name);console.debug("Found model group:",s),s&&(this.$store.dispatch("chat/setModelGroup",s),this.$store.dispatch("chat/setModel",s.models[0]))},methods:{onModelGroupChange(e){this.$store.dispatch("chat/setModelGroup",e),this.$emit("model-group-changed",e)},onModelChange(e){this.$store.dispatch("chat/setModel",e),this.$emit("model-changed",e)}}}),ys={class:"selector"},vs={class:"flex justify-center mr-1"},ws={class:"icon"},Cs=["src"],ks={class:"name"},bs={class:"angle"},Es={class:"item"},Rs={class:"icon"},Ss=["src"],qs={class:"info"},Ds={class:"name"},Is={class:"description"},Ns={class:"flex justify-center"},Gs={class:"name"},As={class:"angle"},Os={class:"item"},Ts={class:"info"},Ms={key:0,class:"name"},Ls={key:1,class:"description"};function Us(e,s,o,p,h,a){const i=l("font-awesome-icon"),c=l("el-dropdown-item"),$=l("el-dropdown-menu"),y=l("el-dropdown");return n(),u("div",ys,[M(m(y,{trigger:"click","popper-class":"popper"},{dropdown:C(()=>[m($,null,{default:C(()=>[(n(!0),u(L,null,U(e.options,(d,t)=>(n(),f(c,{key:t,onClick:k=>e.onModelGroupChange(d)},{default:C(()=>[r("div",Es,[r("div",Rs,[r("img",{src:d.icon},null,8,Ss)]),r("div",qs,[r("p",Ds,R(d.getDisplayName()),1),r("p",Is,R(d.getDescription()),1)])])]),_:2},1032,["onClick"]))),128))]),_:1})]),default:C(()=>{var d;return[r("div",vs,[r("span",ws,[r("img",{src:e.modelGroup.icon},null,8,Cs)]),r("span",ks,R((d=e.modelGroup)==null?void 0:d.getDisplayName()),1),r("span",bs,[m(i,{icon:"fa-solid fa-angle-down"})])])]}),_:1},512),[[W,!1]]),m(y,{trigger:"click","popper-class":"popper"},{dropdown:C(()=>[e.modelGroup&&e.modelGroup.models?(n(),f($,{key:0},{default:C(()=>[(n(!0),u(L,null,U(e.modelGroup.models,(d,t)=>(n(),f(c,{key:t,onClick:k=>e.onModelChange(d)},{default:C(()=>[r("div",Os,[r("div",Ts,[d.getDisplayName?(n(),u("p",Ms,R(d.getDisplayName()),1)):w("v-if",!0),d.getDescription?(n(),u("p",Ls,R(d.getDescription()),1)):w("v-if",!0)])])]),_:2},1032,["onClick"]))),128))]),_:1})):w("v-if",!0)]),default:C(()=>{var d;return[r("div",Ns,[r("span",Gs,R((d=e.model)==null?void 0:d.getDisplayName()),1),r("span",As,[m(i,{icon:"fa-solid fa-angle-down"})])])]}),_:1})])}var Ps=D($s,[["render",Us],["__scopeId","data-v-358d65be"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/ModelSelector.vue"]]);const Vs={},Fs={class:"disclaimer"};function Hs(e,s){return n(),u("p",Fs,R(e.$t("chat.message.howToUse")),1)}var Bs=D(Vs,[["render",Hs],["__scopeId","data-v-42e751f2"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/Disclaimer.vue"]]);const Ws=I({name:"SidePanel",components:{ElInput:ie,FontAwesomeIcon:A,ElSkeleton:Ge},props:{},emits:["change-conversation"],computed:{modelGroup(){return this.$store.state.chat.modelGroup},conversationId(){var e,s,o;return console.debug("conversationId in side",(e=this.$route.params)==null?void 0:e.id),(o=(s=this.$route.params)==null?void 0:s.id)==null?void 0:o.toString()},conversationGroups(){var i,c,$,y,d,t,k,S;let e=this.$store.state.chat.conversations;console.debug("conversations",e),console.debug("modelGroup",this.modelGroup),e=e==null?void 0:e.filter(g=>{var _,q;return g.model&&((q=(_=this.modelGroup.models)==null?void 0:_.map(E=>E.name))==null?void 0:q.includes(g.model))}),console.debug("filtered conversations",e);const s=new Date;s.setHours(0,0,0,0);const o=new Date(s);o.setDate(o.getDate()-1);const p=new Date(s);p.setDate(p.getDate()-s.getDay());const h=new Date(p);h.setDate(h.getDate()-7);const a=e==null?void 0:e.reduce((g,_)=>{const q=new Date(_.updated_at*1e3);return q>=s?g.today.push(_):q>=o?g.yesterday.push(_):q>=p?g.thisWeek.push(_):g.earlier.push(_),g},{today:[],yesterday:[],thisWeek:[],earlier:[]});return{...((i=a==null?void 0:a.today)==null?void 0:i.length)>0?{today:(c=a==null?void 0:a.today)==null?void 0:c.sort((g,_)=>_.updated_at-g.updated_at)}:{},...(($=a==null?void 0:a.yesterday)==null?void 0:$.length)>0?{yesterday:(y=a==null?void 0:a.yesterday)==null?void 0:y.sort((g,_)=>_.updated_at-g.updated_at)}:{},...((d=a==null?void 0:a.thisWeek)==null?void 0:d.length)>0?{thisWeek:(t=a==null?void 0:a.thisWeek)==null?void 0:t.sort((g,_)=>_.updated_at-g.updated_at)}:{},...((k=a==null?void 0:a.earlier)==null?void 0:k.length)>0?{earlier:(S=a==null?void 0:a.earlier)==null?void 0:S.sort((g,_)=>_.updated_at-g.updated_at)}:{}}},application(){return this.$store.state.chat.application},loading(){return this.$store.state.chat.status.getConversations===Q.Request},token(){var e,s;return(s=(e=this.$store.state.chat)==null?void 0:e.credential)==null?void 0:s.token}},methods:{async onNewConversation(){console.debug("onNewConversation from side panel"),this.$emit("change-conversation",void 0)},async onConfirm(e){const s=this.token;if(!s){console.error("Token is not found");return}(e==null?void 0:e.deleting)&&e.id?(await H.deleteConversation(e.id,{token:s}),await this.$store.dispatch("chat/getConversations")):e!=null&&e.editing?(await H.updateConversation(e,{token:s}),await this.$store.dispatch("chat/getConversations")):e.editing=!0},onClickConversation(e){console.debug("onClickConversation in side panel",e),this.$emit("change-conversation",e)}}}),js={class:"panel"},Ks={key:1,class:"conversations"},zs={class:"icons"},Qs={class:"title"},Js={class:"key"},Xs=["onClick"],Ys={class:"title"},Zs={key:0},xs={key:1},et={key:2},st={class:"operations"};function tt(e,s,o,p,h,a){const i=l("el-skeleton"),c=l("font-awesome-icon"),$=l("el-input");return n(),u("div",js,[e.loading&&e.conversationGroups===void 0?(n(),f(i,{key:0})):(n(),u("div",Ks,[r("div",{class:"conversation",onClick:s[0]||(s[0]=(...y)=>e.onNewConversation&&e.onNewConversation(...y))},[r("div",zs,[m(c,{icon:"fa-solid fa-plus",class:"icon"})]),r("div",Qs,R(e.$t("chat.message.startNewChat")),1)]),(n(!0),u(L,null,U(e.conversationGroups,(y,d)=>(n(),u("div",{key:d,class:"group"},[r("div",Js,R(e.$t(`chat.group.${d}`)),1),(n(!0),u(L,null,U(y,(t,k)=>{var S,g,_,q;return n(),u("div",{key:k,class:G({conversation:!0,active:t.id===e.conversationId}),onClick:E=>e.onClickConversation(t.id)},[r("div",Ys,[t!=null&&t.deleting?(n(),u("span",Zs,R(`${e.$t("chat.message.confirmDelete")}?`),1)):t!=null&&t.editing?(n(),u("span",xs,[m($,{modelValue:t.title,"onUpdate:modelValue":E=>t.title=E,onKeydown:X(E=>e.onConfirm(t),["enter"])},null,8,["modelValue","onUpdate:modelValue","onKeydown"])])):(t==null?void 0:t.title)||(t==null?void 0:t.messages)?(n(),u("span",et,R((t==null?void 0:t.title)||((g=(S=t==null?void 0:t.messages)==null?void 0:S[(t==null?void 0:t.messages.length)-1])==null?void 0:g.content)||((q=(_=t==null?void 0:t.messages)==null?void 0:_[0])==null?void 0:q.content)),1)):w("v-if",!0)]),r("div",st,[!(t!=null&&t.editing)&&!t.deleting?(n(),f(c,{key:0,icon:"fa-solid fa-edit",class:"icon icon-edit",onClick:T(E=>t.editing=!0,["stop"])},null,8,["onClick"])):w("v-if",!0),!(t!=null&&t.editing)&&!t.deleting?(n(),f(c,{key:1,icon:"fa-solid fa-trash",class:"icon icon-delete",onClick:T(E=>t.deleting=!0,["stop"])},null,8,["onClick"])):w("v-if",!0),(t==null?void 0:t.editing)||t.deleting?(n(),f(c,{key:2,icon:"fa-solid fa-check",class:"icon icon-confirm",onClick:T(E=>e.onConfirm(t),["stop"])},null,8,["onClick"])):w("v-if",!0),(t==null?void 0:t.editing)||t.deleting?(n(),f(c,{key:3,icon:"fa-solid fa-xmark",class:"icon icon-cancel",onClick:T(E=>{t.editing=!1,t.deleting=!1},["stop"])},null,8,["onClick"])):w("v-if",!0)])],10,Xs)}),128))]))),128))]))])}var ot=D(Ws,[["render",tt],["__scopeId","data-v-d866c834"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/SidePanel.vue"]]);const nt=I({name:"LayoutChat",components:{SidePanel:ot,ElDrawer:Ae,ElButton:ae,FontAwesomeIcon:A},emits:["change-conversation"],data(){return{drawer:!1}},methods:{onChangeConversation(e){console.debug("onChangeConversation in layout",e),this.$emit("change-conversation",e)}}}),at={class:"main"},it={class:"side"},rt={class:"chat"};function lt(e,s,o,p,h,a){const i=l("side-panel"),c=l("font-awesome-icon"),$=l("el-button"),y=l("el-drawer");return n(),u("div",at,[r("div",it,[se(e.$slots,"side",{},()=>[m(i,{onChangeConversation:e.onChangeConversation},null,8,["onChangeConversation"])],!0)]),r("div",rt,[se(e.$slots,"chat",{},void 0,!0)]),m($,{round:"",class:"menu",onClick:s[0]||(s[0]=d=>e.drawer=!0)},{default:C(()=>[m(c,{icon:"fa-solid fa-bars",class:"icon-menu"})]),_:1}),m(y,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=d=>e.drawer=d),"with-header":!1,size:"290px",class:"drawer"},{default:C(()=>[m(i)]),_:1},8,["modelValue"])])}var dt=D(nt,[["render",lt],["__scopeId","data-v-8d7a06d2"],["__file","/home/runner/work/Nexior/Nexior/src/layouts/Chat.vue"]]);const ct=I({name:"ChatConversation",components:{Composer:fs,Disclaimer:Bs,ModelSelector:Ps,Message:us,Layout:dt},data(){var e,s;return{drawer:!1,question:"",references:[],upload:!1,answering:!1,canceler:void 0,messages:((s=(e=this.$store.state.chat.conversations)==null?void 0:e.find(o=>{var p;return o.id===((p=this.$route.params.id)==null?void 0:p.toString())}))==null?void 0:s.messages)||[]}},computed:{modelGroup(){return this.$store.state.chat.modelGroup},model(){return this.$store.state.chat.model},conversationId(){var e;return(e=this.$route.params.id)==null?void 0:e.toString()},conversation(){var e;return(e=this.$store.state.chat.conversations)==null?void 0:e.find(s=>s.id===this.conversationId)},service(){return this.$store.state.chat.service},application(){return this.$store.state.chat.application},applications(){return this.$store.state.chat.applications},credential(){var e;return(e=this.$store.state.chat)==null?void 0:e.credential},needApply(){return this.$store.state.chat.status.getApplications===Q.Success&&!this.application},conversations(){return this.$store.state.chat.conversations},initializing(){return this.$store.state.chat.status.getApplications===Q.Request}},watch:{async references(e){console.log("references changed",e)},async modelGroup(e){console.debug("modelGroup changed",e)},async conversationId(e){console.debug("conversationId changed",e)}},async mounted(){await this.onGetService(),await this.onGetApplication(),await this.onGetConversations()},methods:{async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("chat/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("chat/getApplications"),console.debug("end onGetApplication")},async onGetConversations(){console.debug("start onGetConversations"),await this.$store.dispatch("chat/getConversations"),console.debug("end onGetConversations")},async onDraft(e){this.question=e,this.onSubmit()},async onStop(){this.canceler&&(this.canceler.abort(),this.answering=!1)},async onRestart(e){var c,$,y,d,t,k,S,g,_,q,E,v,P,V,F;const s=this.messages.findIndex(b=>b===e),o=this.messages[s-1];let p=[];if(s!==-1){if(p=this.messages.slice(0,s-1),this.messages=this.messages.slice(0,s),this.references=[],typeof o.content=="string")this.question=o.content;else if(Array.isArray(o.content))for(let b=0;b<(o==null?void 0:o.content.length);b++)o.content[b].type==="image_url"&&(typeof(($=(c=o==null?void 0:o.content)==null?void 0:c[b])==null?void 0:$.image_url)=="string"?this.references.push((d=(y=o==null?void 0:o.content)==null?void 0:y[b])==null?void 0:d.image_url):this.references.push((S=(k=(t=o==null?void 0:o.content)==null?void 0:t[b])==null?void 0:k.image_url)==null?void 0:S.url)),o.content[b].type==="file_url"&&(typeof((_=(g=o==null?void 0:o.content)==null?void 0:g[b])==null?void 0:_.file_url)=="string"?this.references.push((E=(q=o==null?void 0:o.content)==null?void 0:q[b])==null?void 0:E.file_url):this.references.push((V=(P=(v=o==null?void 0:o.content)==null?void 0:v[b])==null?void 0:P.file_url)==null?void 0:V.url)),o.content[b].type==="text"&&(this.question=o.content[b].text)}console.debug("onRestart!",this.question,JSON.stringify(this.references));const h=(F=this.credential)==null?void 0:F.token,a=this.question;if(!h||!a){console.error("no token or endpoint or question"),this.messages.push({error:{code:B},role:O,state:N.FAILED});return}let i=this.conversationId;H.updateConversation({id:this.conversationId,messages:p},{token:h}).then(async()=>{await this.$store.dispatch("chat/setConversation",{id:i,messages:this.messages}),console.debug("finished update conversation",this.messages),console.debug("onRestart",this.question),await this.onRequest()}).catch(b=>{this.handleRequestError(b)})},async onEdit(e,s){var a;const o=this.messages.findIndex(i=>i===e);o!==-1&&(this.messages=this.messages.slice(0,o)),this.question=s;const p=(a=this.credential)==null?void 0:a.token;if(!p){console.error("no token or endpoint or question"),this.messages.push({error:{code:B},role:O,state:N.FAILED});return}let h=this.conversationId;H.updateConversation({id:this.conversationId,messages:this.messages},{token:p}).then(async()=>{await this.$store.dispatch("chat/setConversation",{id:h,messages:this.messages}),console.debug("finished update conversation",this.messages),this.messages.push({content:this.question,role:K}),console.debug("onEdit",this.question),await this.onRequest()}).catch(i=>{this.handleRequestError(i)})},async onNewConversation(){this.$router.push({params:{id:""}}),this.messages=[],this.question="",this.references=[]},async onRestoreConversation(e){var i;console.debug("onRestoreConversation id",e),console.debug("onRestoreConversation route",this.$route);const s=this.$router.resolve({path:this.$route.path,params:{id:e}});console.debug("onRestoreConversation newRoute",s),this.$router.push(s);const o=(i=this.conversations)==null?void 0:i.find(c=>c.id===e),p=o==null?void 0:o.model;console.debug("conversation model",p);const h=fe.find(c=>c.name===p);console.debug("target model",h);const a=$e.find(c=>c.name===(h==null?void 0:h.modelGroup));console.debug("target model group",a),this.$store.dispatch("chat/setModelGroup",a),this.$store.dispatch("chat/setModel",h),this.messages=(o==null?void 0:o.messages)||[],this.onScrollDown()},async onChangeConversation(e){console.log("onChangeConversation in conversation",e),e?this.onRestoreConversation(e):this.onNewConversation()},async onSubmit(){if(this.references.length>0){let e=[];e.push({type:"text",text:this.question});for(let s=0;s<this.references.length;s++)J(this.references[s])?e.push({type:"image_url",image_url:this.references[s]}):e.push({type:"file_url",file_url:this.references[s]});this.messages.push({content:e,role:K})}else this.messages.push({content:this.question,role:K});console.debug("onSubmit",this.question,this.references),await this.onRequest()},async onRequest(){var h;console.debug("start to get answer",this.messages);const e=(h=this.credential)==null?void 0:h.token,s=this.question,o=this.references;if(console.debug("validated",s,o),this.question="",this.references=[],!e||!s){console.error("no token or endpoint or question"),this.messages.push({error:{code:B},role:O,state:N.FAILED});return}let p=this.conversationId;this.messages.push({content:"",role:O,state:N.PENDING}),console.debug("start to get answer",this.messages),this.onScrollDown(),this.answering=!0,this.canceler=new AbortController,H.chatConversation({question:s,model:this.model.name,references:o,id:this.conversationId,stateful:!0},{token:e,stream:a=>{console.debug("stream response",a);const i=this.messages[this.messages.length-1];this.messages[this.messages.length-1]={role:O,content:a.answer,state:(i==null?void 0:i.state)!==N.FINISHED?N.ANSWERING:i==null?void 0:i.state},p=a==null?void 0:a.id},signal:this.canceler.signal}).then(async()=>{console.debug("finished fetch answer",this.messages),this.messages[this.messages.length-1].state=N.FINISHED,console.debug("finished fetch answer",JSON.stringify(this.messages)),await this.$store.dispatch("chat/setConversation",{id:p,messages:this.messages}),this.answering=!1,p&&await this.$router.push({params:{id:p}}),this.onScrollDown(),await this.$store.dispatch("chat/getConversations"),await this.$store.dispatch("chat/getApplications")}).catch(a=>{this.handleRequestError(a)})},async handleRequestError(e){if(console.error("error happened",e),this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].state=N.FAILED),e.name==="AbortError"){console.error("aborted");return}else e instanceof ye?(console.debug("BaseError",e),this.messages[this.messages.length-1].error={code:e.code,message:e.detail}):le.isCancel(e)?this.messages[this.messages.length-1].error={code:ne}:this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].error={code:oe});this.answering=!1},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".messages");!e||!this.messages||this.messages.length===0||(e.scrollTop=e==null?void 0:e.scrollHeight)},0)}}}),ut={key:0,class:"messages"},pt={class:"starter"};function mt(e,s,o,p,h,a){const i=l("model-selector"),c=l("message"),$=l("composer"),y=l("disclaimer"),d=l("layout");return n(),f(d,{onChangeConversation:s[4]||(s[4]=t=>e.onChangeConversation(t))},{chat:C(()=>[m(i,{class:"selector",onModelGroupChanged:s[0]||(s[0]=t=>e.onChangeConversation(void 0))}),r("div",{class:G({dialogue:!0,empty:e.messages.length===0})},[e.messages.length>0?(n(),u("div",ut,[(n(!0),u(L,null,U(e.messages,(t,k)=>(n(),f(c,{key:k,message:t,messages:e.messages,question:e.question,application:e.application,class:"message","onUpdate:question":s[1]||(s[1]=S=>e.question=S),onEdit:e.onEdit,onRestart:e.onRestart},null,8,["message","messages","question","application","onEdit","onRestart"]))),128))])):w("v-if",!0),r("div",pt,[m($,{question:e.question,"onUpdate:question":s[2]||(s[2]=t=>e.question=t),disabled:e.answering,references:e.references,"onUpdate:references":s[3]||(s[3]=t=>e.references=t),onSubmit:e.onSubmit,onStop:e.onStop},null,8,["question","disabled","references","onSubmit","onStop"]),m(y,{class:"disclaimer"})])],2)]),_:1})}var Rt=D(ct,[["render",mt],["__scopeId","data-v-3ab2fb26"],["__file","/home/runner/work/Nexior/Nexior/src/pages/chat/Conversation.vue"]]);export{Rt as default};
1
+ import{a as le}from"./vendor-axios.168e6950.js";import{ak as de}from"./vendor-others.32a9cc65.js";import{_ as D,K as J,L as N,M as oe,N as ne,O as B,P as ce,Q as ue,T as pe,U as me,V as he,W as Z,X as O,H as ge,A as _e,Y as j,Z as x,$ as ee,a0 as Q,a1 as H,a2 as K,a3 as fe,a4 as $e,a5 as ye}from"./index.66e73c9d.js";import{H as I,o as n,e as u,al as l,L as f,M as C,V as m,f as r,O as M,W,T as R,R as w,av as ve,U as L,ai as U,as as X,$ as T,S as z,P as G,aw as we,a0 as Ce,I as se}from"./vendor-@vue.30126b18.js";import{M as ke}from"./MarkdownRenderer.3cc48d18.js";import{C as be}from"./CopyToClipboard.d3bd0d2e.js";import{ar as A}from"./vendor-fortawesome.a228a0e7.js";import{s as Y,P as Ee,I as Re,u as ae,m as Se,t as ie,x as qe,y as te,h as De,i as Ie,j as Ne,H as Ge,Q as Ae}from"./vendor-element-plus.b61d898b.js";import{I as Oe}from"./ImagePreview.432fe959.js";import"./vendor-markdown.64d20655.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-highlight.js.6ee9ffbc.js";const Te=I({name:"AnsweringMark",data(){return{}},computed:{conversationId(){var e,s;return(s=(e=this.$route.params)==null?void 0:e.id)==null?void 0:s.toString()}}}),Me={class:"mark"};function Le(e,s,o,p,h,a){return n(),u("div",Me)}var Ue=D(Te,[["render",Le],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/AnsweringMark.vue"]]);const Pe=I({name:"CopyToClipboard",components:{FontAwesomeIcon:A,ElTooltip:Y},props:{messages:{type:Array,required:!1,default:()=>[]}},emits:["restart"],data(){return{copied:!1}},methods:{onRestart(){this.$emit("restart")}}});function Ve(e,s,o,p,h,a){const i=l("font-awesome-icon"),c=l("el-tooltip");return n(),f(c,{effect:"dark",content:e.$t("common.button.restart"),placement:"bottom"},{default:C(()=>[m(i,{icon:"fa-solid fa-sync",class:"icon-sync",onClick:e.onRestart},null,8,["onClick"])]),_:1},8,["content"])}var Fe=D(Pe,[["render",Ve],["__scopeId","data-v-18116778"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/RestartToGenerate.vue"]]);const He=I({name:"EditMessage",components:{FontAwesomeIcon:A,ElTooltip:Y},props:{messages:{type:Array,required:!1,default:()=>[]}},emits:["click"],data(){return{copied:!1}},methods:{onEdit(){this.$emit("click")}}});function Be(e,s,o,p,h,a){const i=l("font-awesome-icon"),c=l("el-tooltip");return n(),u("span",null,[m(c,{effect:"dark",content:e.$t("common.button.restart"),placement:"bottom"},{default:C(()=>[m(i,{icon:"fa-solid fa-edit",class:"icon icon-edit",onClick:e.onEdit},null,8,["onClick"])]),_:1},8,["content"])])}var We=D(He,[["render",Be],["__scopeId","data-v-5c26bf56"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/EditMessage.vue"]]);const je=I({name:"FilePreview",components:{FontAwesomeIcon:A,ElProgress:Ee},props:{name:{type:String,required:!0},percentage:{type:Number,required:!0},closable:{type:Boolean,required:!1,default:!0}},emits:["remove"],methods:{isImageUrl:J}}),Ke={class:"file"},ze={class:"left"},Qe={class:"wrapper"},Je={class:"right"},Xe={class:"text-xs font-bold truncate"},Ye={key:0,class:"close"};function Ze(e,s,o,p,h,a){const i=l("font-awesome-icon"),c=l("el-progress");return n(),u("div",Ke,[r("div",ze,[r("div",Qe,[m(i,{icon:"fa-regular fa-file-alt"}),M(m(c,{type:"circle","stroke-width":3,percentage:e.percentage,width:25},null,8,["percentage"]),[[W,e.percentage&&e.percentage<100]])])]),r("div",Je,[r("span",Xe,R(e.name),1)]),e.closable?(n(),u("div",Ye,[m(i,{icon:"fa-solid fa-xmark",class:"icon icon-close",onClick:s[0]||(s[0]=$=>e.$emit("remove"))})])):w("v-if",!0)])}var re=D(je,[["render",Ze],["__scopeId","data-v-0b782a78"],["__file","/home/runner/work/Nexior/Nexior/src/components/common/FilePreview.vue"]]);const xe=I({name:"Message",components:{EditMessage:We,CopyToClipboard:be,RestartToGenerate:Fe,AnsweringMark:Ue,MarkdownRenderer:ke,ElAlert:Re,FilePreview:re,ElButton:ae,ElImage:Se,ElInput:ie},props:{messages:{type:Array,required:!1,default:()=>[]},message:{type:Object,required:!0},application:{type:Object,required:!0}},emits:["stop","edit","restart"],data(){return{copied:!1,isEditing:!1,questionValue:this.message.content,messageState:N}},computed:{modelGroup(){return this.$store.state.chat.modelGroup},errorText(){var e,s,o;if(console.debug("error",this.message.error),!(!this.message.error||!((e=this.message.error)!=null&&e.code))){if((s=this.message.error)!=null&&s.message)return this.message.error.message;switch((o=this.message.error)==null?void 0:o.code){case Z:return this.$t("chat.message.errorUsedUp");case he:return this.$t("chat.message.errorApiError");case me:return this.$t("chat.message.errorBadRequest");case pe:return this.$t("chat.message.errorTimeout");case ue:return this.$t("chat.message.errorTooManyRequests");case ce:return this.$t("chat.message.errorContentTooLarge");case B:return this.$t("chat.message.errorNotApplied");case ne:return;case oe:default:return this.$t("chat.message.errorUnknown")}}},showBuyMore(){var e;return this.message.role===O&&((e=this.message.error)==null?void 0:e.code)===Z}},watch:{},methods:{startEditing(){this.isEditing=!0,this.questionValue=this.message.content,console.debug("start to get answer",this.message)},cancelEdit(){this.isEditing=!1},onRestart(){this.$emit("restart",this.message)},onEdit(){this.isEditing=!1,this.onSubmit()},onSubmit(){this.$emit("edit",this.message,this.questionValue)},onCopy(){de(this.message.content.toString(),{debug:!0}),this.copied=!0,setTimeout(()=>{this.copied=!1},3e3)},onBuyMore(){var e;this.$router.push({name:ge,params:{id:(e=this.application)==null?void 0:e.id}})}}}),es=["role"],ss={class:"author"},ts={key:0,class:"main"},os={initial:{opacity:0,y:5},enter:{opacity:1,y:0,scale:1},delay:200,duration:300,layout:!0,transition:{enter:{delay:.2,duration:.5},layout:{duration:.3,easing:"ease-in-out"}},class:"content"},ns={key:0,class:"message-content"},as={key:1},is=["src"],rs={key:1,class:"edits"},ls={class:"flex justify-end"},ds={class:"operations"};function cs(e,s,o,p,h,a){var E;const i=l("el-image"),c=l("markdown-renderer"),$=l("file-preview"),y=l("el-input"),d=l("el-button"),t=l("answering-mark"),k=l("edit-message"),S=l("copy-to-clipboard"),g=l("restart-to-generate"),_=l("el-alert"),q=ve("motion");return n(),u("div",{class:G({message:!0,[e.message.role]:!0}),role:e.message.role},[r("div",ss,[e.message.role==="assistant"?(n(),f(i,{key:0,src:e.modelGroup.icon,fit:"cover",class:"avatar"},null,8,["src"])):w("v-if",!0)]),e.errorText?(n(),f(_,{key:1,class:"error",title:e.errorText,type:"error",closable:!1},null,8,["title"])):(n(),u("div",ts,[M((n(),u("div",os,[e.isEditing?(n(),u("div",rs,[m(y,{modelValue:e.questionValue,"onUpdate:modelValue":s[0]||(s[0]=v=>e.questionValue=v),type:"textarea",class:"mb-2",onKeydown:X(T(e.onEdit,["exact","prevent"]),["enter"])},null,8,["modelValue","onKeydown"]),r("div",ls,[m(d,{round:"",onClick:e.cancelEdit},{default:C(()=>[z(R(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),m(d,{type:"primary",class:"btn-confirm",round:"",onClick:e.onEdit},{default:C(()=>[z(R(e.$t("common.button.confirm")),1)]),_:1},8,["onClick"])])])):(n(),u("div",ns,[Array.isArray(e.message.content)?(n(),u("div",as,[(n(!0),u(L,null,U(e.message.content,(v,P)=>{var V,F;return n(),u("div",{key:P},[v.type==="image_url"?(n(),u("img",{key:0,src:typeof(v==null?void 0:v.image_url)=="string"?v.image_url:(V=v.image_url)==null?void 0:V.url,fit:"cover",class:"image"},null,8,is)):w("v-if",!0),v.file_url?(n(),f($,{key:1,name:typeof(v==null?void 0:v.file_url)=="string"?v.file_url:(F=v.file_url)==null?void 0:F.url,percentage:0,closable:!1,class:"mt-2"},null,8,["name"])):w("v-if",!0),v.type==="text"?(n(),f(c,{key:P,content:v.text},null,8,["content"])):w("v-if",!0)])}),128))])):(n(),f(c,{key:0,content:(E=e.message)==null?void 0:E.content},null,8,["content"]))])),e.message.state===e.messageState.PENDING?(n(),f(t,{key:2})):w("v-if",!0)])),[[q]]),r("div",ds,[e.message.role==="user"&&!e.isEditing&&!Array.isArray(e.message.content)?(n(),f(k,{key:0,class:"btn-edit",onClick:e.startEditing},null,8,["onClick"])):w("v-if",!0),!Array.isArray(e.message.content)&&(e.message.state===e.messageState.FINISHED||e.message.state===e.messageState.FAILED)?(n(),f(S,{key:1,content:e.message.content,class:"btn-copy"},null,8,["content"])):w("v-if",!0),!Array.isArray(e.message.content)&&(e.message.state===e.messageState.FINISHED||e.message.state===e.messageState.FAILED)&&e.message.role==="assistant"&&e.message===e.messages[e.messages.length-1]?(n(),f(g,{key:2,class:"btn-restart",messages:e.messages,onRestart:e.onRestart},null,8,["messages","onRestart"])):w("v-if",!0)])])),e.showBuyMore?(n(),f(d,{key:2,round:"",type:"primary",class:"btn btn-buy",size:"small",onClick:e.onBuyMore},{default:C(()=>[z(R(e.$t("common.button.buyMore")),1)]),_:1},8,["onClick"])):w("v-if",!0)],10,es)}var us=D(xe,[["render",cs],["__scopeId","data-v-f0476f80"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/Message.vue"]]);const ps=I({name:"Composer",components:{FilePreview:re,ImagePreview:Oe,ElTooltip:Y,FontAwesomeIcon:A,ElUpload:qe},props:{disabled:{type:Boolean,required:!1,default:!1},references:{type:Array,required:!1,default:()=>[]},question:{type:String,required:!0}},emits:["update:question","update:references","submit","stop"],data(){return{inputHeight:"35px",questionValue:this.question,fileList:[],uploadUrl:_e()+"/api/v1/files/"}},computed:{model(){return this.$store.state.chat.model},modelGroup(){return this.$store.state.chat.modelGroup},headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>{var s;return(s=e==null?void 0:e.response)==null?void 0:s.file_url})}},watch:{urls(e){console.debug("File URLs:",e),e.length>0&&this.$emit("update:references",e)},questionValue(e){this.$emit("update:question",e)},question(e){e!==this.questionValue&&(this.questionValue=e)},references(e){console.debug("References updated:",e),e.length===0&&(this.fileList=[])}},methods:{isImageUrl:J,adjustTextareaHeight(){this.$nextTick(()=>{const e=this.$refs.textarea;e&&(e.style.height="35px",e.style.height=e.scrollHeight+"px")})},onSubmit(){!this.question||this.$emit("submit")},onStop(){this.$emit("stop")},onProgress(e,s,o){console.debug("File upload progress:",s.name,e.loaded,e.total)},onExceed(){te.warning(this.$t("chat.message.uploadReferencesExceed"))},onError(){te.error(this.$t("chat.message.uploadReferencesError"))}}}),ms={class:"composer"},hs={class:"tools"},gs=["disabled","placeholder"];function _s(e,s,o,p,h,a){const i=l("image-preview"),c=l("file-preview"),$=l("font-awesome-icon"),y=l("el-tooltip"),d=l("el-upload");return n(),u("div",ms,[r("div",hs,[m(d,{"file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=t=>e.fileList=t),class:G({upload:!0,disabled:!e.model.isFileSupported||e.disabled}),disabled:!e.model.isFileSupported||e.disabled,name:"file",limit:10,multiple:!0,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-progress":e.onProgress,headers:e.headers},{file:C(({file:t})=>{var k;return[e.isImageUrl(t.name)?(n(),f(i,{key:0,url:t.url||((k=t.response)==null?void 0:k.file_url),name:t.name,percentage:t.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(t),1)},null,8,["url","name","percentage","onRemove"])):(n(),f(c,{key:1,name:t.name,percentage:t.percentage,onRemove:S=>e.fileList.splice(e.fileList.indexOf(t),1)},null,8,["name","percentage","onRemove"]))]}),default:C(()=>[m(y,{class:"box-item",effect:"dark",content:e.$t("chat.message.uploadFile"),placement:"bottom"},{default:C(()=>[r("span",{class:G({btn:!0,"btn-upload":!0,disabled:!e.model.isFileSupported||e.disabled})},[m($,{icon:"fa-solid fa-plus",class:"icon icon-attachment"})],2)]),_:1},8,["content"])]),_:1},8,["file-list","class","disabled","action","on-exceed","on-error","on-progress","headers"])]),M(r("span",{class:G({btn:!0,"btn-send":!0,disabled:!e.questionValue}),onClick:s[1]||(s[1]=(...t)=>e.onSubmit&&e.onSubmit(...t))},[m($,{icon:"fa-solid fa-location-arrow",class:"icon icon-send"})],2),[[W,!e.disabled]]),M(r("span",{class:G({btn:!0,"btn-stop":!0,disabled:!e.disabled}),onClick:s[2]||(s[2]=(...t)=>e.onStop&&e.onStop(...t))},[m($,{icon:"fa-solid fa-stop",class:"icon icon-stop"})],2),[[W,e.disabled]]),M(r("textarea",{ref:"textarea","onUpdate:modelValue":s[3]||(s[3]=t=>e.questionValue=t),disabled:e.disabled,class:"input",placeholder:e.$t("chat.message.newMessagePlaceholder"),style:Ce({height:e.inputHeight}),onKeydown:s[4]||(s[4]=X(T((...t)=>e.onSubmit&&e.onSubmit(...t),["exact","prevent"]),["enter"])),onInput:s[5]||(s[5]=(...t)=>e.adjustTextareaHeight&&e.adjustTextareaHeight(...t))},null,44,gs),[[we,e.questionValue]])])}var fs=D(ps,[["render",_s],["__scopeId","data-v-a443d292"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/Composer.vue"]]);const $s=I({name:"ModelSelector",components:{ElDropdown:De,ElDropdownMenu:Ie,ElDropdownItem:Ne,FontAwesomeIcon:A},emits:["update:modelValue","select","model-group-changed","model-changed"],data(){return{options:[j,x,ee]}},computed:{model(){return console.log("model",this.$store.state.chat.model),this.$store.state.chat.model},modelGroup(){var e;return((e=this.$route.meta)==null?void 0:e.modelGroup)||j}},watch:{modelGroup(e){console.debug("modelGroup from route changed",e),this.$store.dispatch("chat/setModelGroup",e),this.$store.dispatch("chat/setModel",e.models[0])}},mounted(){console.debug("ModelSelector mounted, checking model group");const s=[j,x,ee].find(o=>o.name===this.modelGroup.name);console.debug("Found model group:",s),s&&(this.$store.dispatch("chat/setModelGroup",s),this.$store.dispatch("chat/setModel",s.models[0]))},methods:{onModelGroupChange(e){this.$store.dispatch("chat/setModelGroup",e),this.$emit("model-group-changed",e)},onModelChange(e){this.$store.dispatch("chat/setModel",e),this.$emit("model-changed",e)}}}),ys={class:"selector"},vs={class:"flex justify-center mr-1"},ws={class:"icon"},Cs=["src"],ks={class:"name"},bs={class:"angle"},Es={class:"item"},Rs={class:"icon"},Ss=["src"],qs={class:"info"},Ds={class:"name"},Is={class:"description"},Ns={class:"flex justify-center"},Gs={class:"name"},As={class:"angle"},Os={class:"item"},Ts={class:"info"},Ms={key:0,class:"name"},Ls={key:1,class:"description"};function Us(e,s,o,p,h,a){const i=l("font-awesome-icon"),c=l("el-dropdown-item"),$=l("el-dropdown-menu"),y=l("el-dropdown");return n(),u("div",ys,[M(m(y,{trigger:"click","popper-class":"popper"},{dropdown:C(()=>[m($,null,{default:C(()=>[(n(!0),u(L,null,U(e.options,(d,t)=>(n(),f(c,{key:t,onClick:k=>e.onModelGroupChange(d)},{default:C(()=>[r("div",Es,[r("div",Rs,[r("img",{src:d.icon},null,8,Ss)]),r("div",qs,[r("p",Ds,R(d.getDisplayName()),1),r("p",Is,R(d.getDescription()),1)])])]),_:2},1032,["onClick"]))),128))]),_:1})]),default:C(()=>{var d;return[r("div",vs,[r("span",ws,[r("img",{src:e.modelGroup.icon},null,8,Cs)]),r("span",ks,R((d=e.modelGroup)==null?void 0:d.getDisplayName()),1),r("span",bs,[m(i,{icon:"fa-solid fa-angle-down"})])])]}),_:1},512),[[W,!1]]),m(y,{trigger:"click","popper-class":"popper"},{dropdown:C(()=>[e.modelGroup&&e.modelGroup.models?(n(),f($,{key:0},{default:C(()=>[(n(!0),u(L,null,U(e.modelGroup.models,(d,t)=>(n(),f(c,{key:t,onClick:k=>e.onModelChange(d)},{default:C(()=>[r("div",Os,[r("div",Ts,[d.getDisplayName?(n(),u("p",Ms,R(d.getDisplayName()),1)):w("v-if",!0),d.getDescription?(n(),u("p",Ls,R(d.getDescription()),1)):w("v-if",!0)])])]),_:2},1032,["onClick"]))),128))]),_:1})):w("v-if",!0)]),default:C(()=>{var d;return[r("div",Ns,[r("span",Gs,R((d=e.model)==null?void 0:d.getDisplayName()),1),r("span",As,[m(i,{icon:"fa-solid fa-angle-down"})])])]}),_:1})])}var Ps=D($s,[["render",Us],["__scopeId","data-v-358d65be"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/ModelSelector.vue"]]);const Vs={},Fs={class:"disclaimer"};function Hs(e,s){return n(),u("p",Fs,R(e.$t("chat.message.howToUse")),1)}var Bs=D(Vs,[["render",Hs],["__scopeId","data-v-42e751f2"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/Disclaimer.vue"]]);const Ws=I({name:"SidePanel",components:{ElInput:ie,FontAwesomeIcon:A,ElSkeleton:Ge},props:{},emits:["change-conversation"],computed:{modelGroup(){return this.$store.state.chat.modelGroup},conversationId(){var e,s,o;return console.debug("conversationId in side",(e=this.$route.params)==null?void 0:e.id),(o=(s=this.$route.params)==null?void 0:s.id)==null?void 0:o.toString()},conversationGroups(){var i,c,$,y,d,t,k,S;let e=this.$store.state.chat.conversations;console.debug("conversations",e),console.debug("modelGroup",this.modelGroup),e=e==null?void 0:e.filter(g=>{var _,q;return g.model&&((q=(_=this.modelGroup.models)==null?void 0:_.map(E=>E.name))==null?void 0:q.includes(g.model))}),console.debug("filtered conversations",e);const s=new Date;s.setHours(0,0,0,0);const o=new Date(s);o.setDate(o.getDate()-1);const p=new Date(s);p.setDate(p.getDate()-s.getDay());const h=new Date(p);h.setDate(h.getDate()-7);const a=e==null?void 0:e.reduce((g,_)=>{const q=new Date(_.updated_at*1e3);return q>=s?g.today.push(_):q>=o?g.yesterday.push(_):q>=p?g.thisWeek.push(_):g.earlier.push(_),g},{today:[],yesterday:[],thisWeek:[],earlier:[]});return{...((i=a==null?void 0:a.today)==null?void 0:i.length)>0?{today:(c=a==null?void 0:a.today)==null?void 0:c.sort((g,_)=>_.updated_at-g.updated_at)}:{},...(($=a==null?void 0:a.yesterday)==null?void 0:$.length)>0?{yesterday:(y=a==null?void 0:a.yesterday)==null?void 0:y.sort((g,_)=>_.updated_at-g.updated_at)}:{},...((d=a==null?void 0:a.thisWeek)==null?void 0:d.length)>0?{thisWeek:(t=a==null?void 0:a.thisWeek)==null?void 0:t.sort((g,_)=>_.updated_at-g.updated_at)}:{},...((k=a==null?void 0:a.earlier)==null?void 0:k.length)>0?{earlier:(S=a==null?void 0:a.earlier)==null?void 0:S.sort((g,_)=>_.updated_at-g.updated_at)}:{}}},application(){return this.$store.state.chat.application},loading(){return this.$store.state.chat.status.getConversations===Q.Request},token(){var e,s;return(s=(e=this.$store.state.chat)==null?void 0:e.credential)==null?void 0:s.token}},methods:{async onNewConversation(){console.debug("onNewConversation from side panel"),this.$emit("change-conversation",void 0)},async onConfirm(e){const s=this.token;if(!s){console.error("Token is not found");return}(e==null?void 0:e.deleting)&&e.id?(await H.deleteConversation(e.id,{token:s}),await this.$store.dispatch("chat/getConversations")):e!=null&&e.editing?(await H.updateConversation(e,{token:s}),await this.$store.dispatch("chat/getConversations")):e.editing=!0},onClickConversation(e){console.debug("onClickConversation in side panel",e),this.$emit("change-conversation",e)}}}),js={class:"panel"},Ks={key:1,class:"conversations"},zs={class:"icons"},Qs={class:"title"},Js={class:"key"},Xs=["onClick"],Ys={class:"title"},Zs={key:0},xs={key:1},et={key:2},st={class:"operations"};function tt(e,s,o,p,h,a){const i=l("el-skeleton"),c=l("font-awesome-icon"),$=l("el-input");return n(),u("div",js,[e.loading&&e.conversationGroups===void 0?(n(),f(i,{key:0})):(n(),u("div",Ks,[r("div",{class:"conversation",onClick:s[0]||(s[0]=(...y)=>e.onNewConversation&&e.onNewConversation(...y))},[r("div",zs,[m(c,{icon:"fa-solid fa-plus",class:"icon"})]),r("div",Qs,R(e.$t("chat.message.startNewChat")),1)]),(n(!0),u(L,null,U(e.conversationGroups,(y,d)=>(n(),u("div",{key:d,class:"group"},[r("div",Js,R(e.$t(`chat.group.${d}`)),1),(n(!0),u(L,null,U(y,(t,k)=>{var S,g,_,q;return n(),u("div",{key:k,class:G({conversation:!0,active:t.id===e.conversationId}),onClick:E=>e.onClickConversation(t.id)},[r("div",Ys,[t!=null&&t.deleting?(n(),u("span",Zs,R(`${e.$t("chat.message.confirmDelete")}?`),1)):t!=null&&t.editing?(n(),u("span",xs,[m($,{modelValue:t.title,"onUpdate:modelValue":E=>t.title=E,onKeydown:X(E=>e.onConfirm(t),["enter"])},null,8,["modelValue","onUpdate:modelValue","onKeydown"])])):(t==null?void 0:t.title)||(t==null?void 0:t.messages)?(n(),u("span",et,R((t==null?void 0:t.title)||((g=(S=t==null?void 0:t.messages)==null?void 0:S[(t==null?void 0:t.messages.length)-1])==null?void 0:g.content)||((q=(_=t==null?void 0:t.messages)==null?void 0:_[0])==null?void 0:q.content)),1)):w("v-if",!0)]),r("div",st,[!(t!=null&&t.editing)&&!t.deleting?(n(),f(c,{key:0,icon:"fa-solid fa-edit",class:"icon icon-edit",onClick:T(E=>t.editing=!0,["stop"])},null,8,["onClick"])):w("v-if",!0),!(t!=null&&t.editing)&&!t.deleting?(n(),f(c,{key:1,icon:"fa-solid fa-trash",class:"icon icon-delete",onClick:T(E=>t.deleting=!0,["stop"])},null,8,["onClick"])):w("v-if",!0),(t==null?void 0:t.editing)||t.deleting?(n(),f(c,{key:2,icon:"fa-solid fa-check",class:"icon icon-confirm",onClick:T(E=>e.onConfirm(t),["stop"])},null,8,["onClick"])):w("v-if",!0),(t==null?void 0:t.editing)||t.deleting?(n(),f(c,{key:3,icon:"fa-solid fa-xmark",class:"icon icon-cancel",onClick:T(E=>{t.editing=!1,t.deleting=!1},["stop"])},null,8,["onClick"])):w("v-if",!0)])],10,Xs)}),128))]))),128))]))])}var ot=D(Ws,[["render",tt],["__scopeId","data-v-d866c834"],["__file","/home/runner/work/Nexior/Nexior/src/components/chat/SidePanel.vue"]]);const nt=I({name:"LayoutChat",components:{SidePanel:ot,ElDrawer:Ae,ElButton:ae,FontAwesomeIcon:A},emits:["change-conversation"],data(){return{drawer:!1}},methods:{onChangeConversation(e){console.debug("onChangeConversation in layout",e),this.$emit("change-conversation",e)}}}),at={class:"main"},it={class:"side"},rt={class:"chat"};function lt(e,s,o,p,h,a){const i=l("side-panel"),c=l("font-awesome-icon"),$=l("el-button"),y=l("el-drawer");return n(),u("div",at,[r("div",it,[se(e.$slots,"side",{},()=>[m(i,{onChangeConversation:e.onChangeConversation},null,8,["onChangeConversation"])],!0)]),r("div",rt,[se(e.$slots,"chat",{},void 0,!0)]),m($,{round:"",class:"menu",onClick:s[0]||(s[0]=d=>e.drawer=!0)},{default:C(()=>[m(c,{icon:"fa-solid fa-bars",class:"icon-menu"})]),_:1}),m(y,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=d=>e.drawer=d),"with-header":!1,size:"290px",class:"drawer"},{default:C(()=>[m(i)]),_:1},8,["modelValue"])])}var dt=D(nt,[["render",lt],["__scopeId","data-v-8d7a06d2"],["__file","/home/runner/work/Nexior/Nexior/src/layouts/Chat.vue"]]);const ct=I({name:"ChatConversation",components:{Composer:fs,Disclaimer:Bs,ModelSelector:Ps,Message:us,Layout:dt},data(){var e,s;return{drawer:!1,question:"",references:[],upload:!1,answering:!1,canceler:void 0,messages:((s=(e=this.$store.state.chat.conversations)==null?void 0:e.find(o=>{var p;return o.id===((p=this.$route.params.id)==null?void 0:p.toString())}))==null?void 0:s.messages)||[]}},computed:{modelGroup(){return this.$store.state.chat.modelGroup},model(){return this.$store.state.chat.model},conversationId(){var e;return(e=this.$route.params.id)==null?void 0:e.toString()},conversation(){var e;return(e=this.$store.state.chat.conversations)==null?void 0:e.find(s=>s.id===this.conversationId)},service(){return this.$store.state.chat.service},application(){return this.$store.state.chat.application},applications(){return this.$store.state.chat.applications},credential(){var e;return(e=this.$store.state.chat)==null?void 0:e.credential},needApply(){return this.$store.state.chat.status.getApplications===Q.Success&&!this.application},conversations(){return this.$store.state.chat.conversations},initializing(){return this.$store.state.chat.status.getApplications===Q.Request}},watch:{async references(e){console.log("references changed",e)},async modelGroup(e){console.debug("modelGroup changed",e)},async conversationId(e){console.debug("conversationId changed",e)}},async mounted(){await this.onGetService(),await this.onGetApplication(),await this.onGetConversations()},methods:{async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("chat/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("chat/getApplications"),console.debug("end onGetApplication")},async onGetConversations(){console.debug("start onGetConversations"),await this.$store.dispatch("chat/getConversations"),console.debug("end onGetConversations")},async onDraft(e){this.question=e,this.onSubmit()},async onStop(){this.canceler&&(this.canceler.abort(),this.answering=!1)},async onRestart(e){var c,$,y,d,t,k,S,g,_,q,E,v,P,V,F;const s=this.messages.findIndex(b=>b===e),o=this.messages[s-1];let p=[];if(s!==-1){if(p=this.messages.slice(0,s-1),this.messages=this.messages.slice(0,s),this.references=[],typeof o.content=="string")this.question=o.content;else if(Array.isArray(o.content))for(let b=0;b<(o==null?void 0:o.content.length);b++)o.content[b].type==="image_url"&&(typeof(($=(c=o==null?void 0:o.content)==null?void 0:c[b])==null?void 0:$.image_url)=="string"?this.references.push((d=(y=o==null?void 0:o.content)==null?void 0:y[b])==null?void 0:d.image_url):this.references.push((S=(k=(t=o==null?void 0:o.content)==null?void 0:t[b])==null?void 0:k.image_url)==null?void 0:S.url)),o.content[b].type==="file_url"&&(typeof((_=(g=o==null?void 0:o.content)==null?void 0:g[b])==null?void 0:_.file_url)=="string"?this.references.push((E=(q=o==null?void 0:o.content)==null?void 0:q[b])==null?void 0:E.file_url):this.references.push((V=(P=(v=o==null?void 0:o.content)==null?void 0:v[b])==null?void 0:P.file_url)==null?void 0:V.url)),o.content[b].type==="text"&&(this.question=o.content[b].text)}console.debug("onRestart!",this.question,JSON.stringify(this.references));const h=(F=this.credential)==null?void 0:F.token,a=this.question;if(!h||!a){console.error("no token or endpoint or question"),this.messages.push({error:{code:B},role:O,state:N.FAILED});return}let i=this.conversationId;H.updateConversation({id:this.conversationId,messages:p},{token:h}).then(async()=>{await this.$store.dispatch("chat/setConversation",{id:i,messages:this.messages}),console.debug("finished update conversation",this.messages),console.debug("onRestart",this.question),await this.onRequest()}).catch(b=>{this.handleRequestError(b)})},async onEdit(e,s){var a;const o=this.messages.findIndex(i=>i===e);o!==-1&&(this.messages=this.messages.slice(0,o)),this.question=s;const p=(a=this.credential)==null?void 0:a.token;if(!p){console.error("no token or endpoint or question"),this.messages.push({error:{code:B},role:O,state:N.FAILED});return}let h=this.conversationId;H.updateConversation({id:this.conversationId,messages:this.messages},{token:p}).then(async()=>{await this.$store.dispatch("chat/setConversation",{id:h,messages:this.messages}),console.debug("finished update conversation",this.messages),this.messages.push({content:this.question,role:K}),console.debug("onEdit",this.question),await this.onRequest()}).catch(i=>{this.handleRequestError(i)})},async onNewConversation(){this.$router.push({params:{id:""}}),this.messages=[],this.question="",this.references=[]},async onRestoreConversation(e){var i;console.debug("onRestoreConversation id",e),console.debug("onRestoreConversation route",this.$route);const s=this.$router.resolve({path:this.$route.path,params:{id:e}});console.debug("onRestoreConversation newRoute",s),this.$router.push(s);const o=(i=this.conversations)==null?void 0:i.find(c=>c.id===e),p=o==null?void 0:o.model;console.debug("conversation model",p);const h=fe.find(c=>c.name===p);console.debug("target model",h);const a=$e.find(c=>c.name===(h==null?void 0:h.modelGroup));console.debug("target model group",a),this.$store.dispatch("chat/setModelGroup",a),this.$store.dispatch("chat/setModel",h),this.messages=(o==null?void 0:o.messages)||[],this.onScrollDown()},async onChangeConversation(e){console.log("onChangeConversation in conversation",e),e?this.onRestoreConversation(e):this.onNewConversation()},async onSubmit(){if(this.references.length>0){let e=[];e.push({type:"text",text:this.question});for(let s=0;s<this.references.length;s++)J(this.references[s])?e.push({type:"image_url",image_url:this.references[s]}):e.push({type:"file_url",file_url:this.references[s]});this.messages.push({content:e,role:K})}else this.messages.push({content:this.question,role:K});console.debug("onSubmit",this.question,this.references),await this.onRequest()},async onRequest(){var h;console.debug("start to get answer",this.messages);const e=(h=this.credential)==null?void 0:h.token,s=this.question,o=this.references;if(console.debug("validated",s,o),this.question="",this.references=[],!e||!s){console.error("no token or endpoint or question"),this.messages.push({error:{code:B},role:O,state:N.FAILED});return}let p=this.conversationId;this.messages.push({content:"",role:O,state:N.PENDING}),console.debug("start to get answer",this.messages),this.onScrollDown(),this.answering=!0,this.canceler=new AbortController,H.chatConversation({question:s,model:this.model.name,references:o,id:this.conversationId,stateful:!0},{token:e,stream:a=>{console.debug("stream response",a);const i=this.messages[this.messages.length-1];this.messages[this.messages.length-1]={role:O,content:a.answer,state:(i==null?void 0:i.state)!==N.FINISHED?N.ANSWERING:i==null?void 0:i.state},p=a==null?void 0:a.id},signal:this.canceler.signal}).then(async()=>{console.debug("finished fetch answer",this.messages),this.messages[this.messages.length-1].state=N.FINISHED,console.debug("finished fetch answer",JSON.stringify(this.messages)),await this.$store.dispatch("chat/setConversation",{id:p,messages:this.messages}),this.answering=!1,p&&await this.$router.push({params:{id:p}}),this.onScrollDown(),await this.$store.dispatch("chat/getConversations"),await this.$store.dispatch("chat/getApplications")}).catch(a=>{this.handleRequestError(a)})},async handleRequestError(e){if(console.error("error happened",e),this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].state=N.FAILED),e.name==="AbortError"){console.error("aborted");return}else e instanceof ye?(console.debug("BaseError",e),this.messages[this.messages.length-1].error={code:e.code,message:e.detail}):le.isCancel(e)?this.messages[this.messages.length-1].error={code:ne}:this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].error={code:oe});this.answering=!1},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".messages");!e||!this.messages||this.messages.length===0||(e.scrollTop=e==null?void 0:e.scrollHeight)},0)}}}),ut={key:0,class:"messages"},pt={class:"starter"};function mt(e,s,o,p,h,a){const i=l("model-selector"),c=l("message"),$=l("composer"),y=l("disclaimer"),d=l("layout");return n(),f(d,{onChangeConversation:s[4]||(s[4]=t=>e.onChangeConversation(t))},{chat:C(()=>[m(i,{class:"selector",onModelGroupChanged:s[0]||(s[0]=t=>e.onChangeConversation(void 0))}),r("div",{class:G({dialogue:!0,empty:e.messages.length===0})},[e.messages.length>0?(n(),u("div",ut,[(n(!0),u(L,null,U(e.messages,(t,k)=>(n(),f(c,{key:k,message:t,messages:e.messages,question:e.question,application:e.application,class:"message","onUpdate:question":s[1]||(s[1]=S=>e.question=S),onEdit:e.onEdit,onRestart:e.onRestart},null,8,["message","messages","question","application","onEdit","onRestart"]))),128))])):w("v-if",!0),r("div",pt,[m($,{question:e.question,"onUpdate:question":s[2]||(s[2]=t=>e.question=t),disabled:e.answering,references:e.references,"onUpdate:references":s[3]||(s[3]=t=>e.references=t),onSubmit:e.onSubmit,onStop:e.onStop},null,8,["question","disabled","references","onSubmit","onStop"]),m(y,{class:"disclaimer"})])],2)]),_:1})}var Rt=D(ct,[["render",mt],["__scopeId","data-v-3ab2fb26"],["__file","/home/runner/work/Nexior/Nexior/src/pages/chat/Conversation.vue"]]);export{Rt as default};
@@ -1 +1 @@
1
- import{ak as L}from"./vendor-others.32a9cc65.js";import{L as P}from"./Chatdoc.f109a4af.js";import{aj as F,al as b,am as A,_ as I,M as T,O as q,P as H,Q as z,T as G,U as K,V as W,W as v,X as N,a0 as O,a2 as Q,N as j,an as J}from"./index.fe7d50bd.js";import{a as X}from"./vendor-axios.168e6950.js";import{ar as D}from"./vendor-fortawesome.a228a0e7.js";import{t as V,H as Y,I as Z,u as x}from"./vendor-element-plus.b61d898b.js";import{H as E,al as l,o,e as c,L as h,f as i,V as m,T as k,U as R,ai as M,P as S,as as U,R as f,$ as w,M as B,S as ee}from"./vendor-@vue.30126b18.js";import{M as se}from"./MarkdownRenderer.1b4c01e5.js";import{C as te}from"./CopyToClipboard.2d947214.js";import{A as oe}from"./Status.c5ff1830.js";import"./vendor-markdown.64d20655.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-highlight.js.6ee9ffbc.js";var $=(e=>(e.PENDING="pending",e.ANSWERING="answering",e.FINISHED="finished",e.FAILED="failed",e))($||{});const ie=E({name:"SidePanel",components:{ElInput:V,FontAwesomeIcon:D,ElSkeleton:Y},props:{},emits:["click"],computed:{repositoryId(){var e,t;return(t=(e=this.$route.params)==null?void 0:e.repositoryId)==null?void 0:t.toString()},conversationId(){var e,t;return(t=(e=this.$route.params)==null?void 0:e.conversationId)==null?void 0:t.toString()},repository(){var e,t,n;return(n=(t=(e=this.$store.state)==null?void 0:e.chatdoc)==null?void 0:t.repositories)==null?void 0:n.find(d=>d.id===this.repositoryId)},conversations(){var e;return(e=this.repository)==null?void 0:e.conversations},application(){return this.$store.state.chatdoc.application}},methods:{async onNewConversation(){this.$router.push({name:F,params:{repositoryId:this.repositoryId}})},async onConfirm(e){e!=null&&e.deleting?(await b.deleteConversation(e.id),await this.$store.dispatch("chat/getConversations")):e!=null&&e.editing?(await b.updateConversation(e),await this.$store.dispatch("chat/getConversations")):e.editing=!0},onClick(e){!e||(this.$router.push({name:A,params:{repositoryId:this.repositoryId,conversationId:e}}),this.$emit("click",e))}}}),ne={class:"panel"},ae={key:1,class:"conversations"},re={class:"icons"},le={class:"title"},de=["onClick"],ce={class:"icons"},ue={class:"title"},pe={key:0},he={key:1},me={key:2},_e={class:"operations"};function ge(e,t,n,d,r,y){const u=l("el-skeleton"),a=l("font-awesome-icon"),_=l("el-input");return o(),c("div",ne,[e.conversations===void 0?(o(),h(u,{key:0})):(o(),c("div",ae,[i("div",{class:"conversation",onClick:t[0]||(t[0]=(...s)=>e.onNewConversation&&e.onNewConversation(...s))},[i("div",re,[m(a,{icon:"fa-solid fa-plus",class:"icon"})]),i("div",le,k(e.$t("chatdoc.message.startNewChat")),1)]),(o(!0),c(R,null,M(e.conversations,(s,C)=>{var p;return o(),c("div",{key:C,class:S({conversation:!0,active:s.id===e.conversationId}),onClick:g=>e.onClick(s.id)},[i("div",ce,[m(a,{icon:"fa-regular fa-comment",class:"icon"})]),i("div",ue,[s!=null&&s.deleting?(o(),c("span",pe,k(`${e.$t("chatdoc.message.confirmDelete")}?`),1)):s!=null&&s.editing?(o(),c("span",he,[m(_,{modelValue:s.title,"onUpdate:modelValue":g=>s.title=g,onKeydown:U(g=>e.onConfirm(s),["enter"])},null,8,["modelValue","onUpdate:modelValue","onKeydown"])])):(s==null?void 0:s.title)||(s==null?void 0:s.messages)?(o(),c("span",me,k((s==null?void 0:s.title)||((p=s==null?void 0:s.messages[(s==null?void 0:s.messages.length)-1])==null?void 0:p.content)),1)):f("v-if",!0)]),i("div",_e,[!(s!=null&&s.editing)&&!s.deleting?(o(),h(a,{key:0,icon:"fa-solid fa-edit",class:"icon icon-edit",onClick:w(g=>s.editing=!0,["stop"])},null,8,["onClick"])):f("v-if",!0),!(s!=null&&s.editing)&&!s.deleting?(o(),h(a,{key:1,icon:"fa-solid fa-trash",class:"icon icon-delete",onClick:w(g=>s.deleting=!0,["stop"])},null,8,["onClick"])):f("v-if",!0),(s==null?void 0:s.editing)||s.deleting?(o(),h(a,{key:2,icon:"fa-solid fa-check",class:"icon icon-confirm",onClick:w(g=>e.onConfirm(s),["stop"])},null,8,["onClick"])):f("v-if",!0),(s==null?void 0:s.editing)||s.deleting?(o(),h(a,{key:3,icon:"fa-solid fa-xmark",class:"icon icon-cancel",onClick:w(g=>{s.editing=!1,s.deleting=!1},["stop"])},null,8,["onClick"])):f("v-if",!0)])],10,de)}),128))]))])}var fe=I(ie,[["render",ge],["__scopeId","data-v-2282a6e1"],["__file","/home/runner/work/Nexior/Nexior/src/components/chatdoc/Conversations.vue"]]);const ye=E({name:"AnsweringMark",data(){return{}},computed:{conversationId(){var e,t;return(t=(e=this.$route.params)==null?void 0:e.conversationId)==null?void 0:t.toString()}}}),$e={class:"mark"};function Ce(e,t,n,d,r,y){return o(),c("div",$e)}var we=I(ye,[["render",Ce],["__file","/home/runner/work/Nexior/Nexior/src/components/chatdoc/AnsweringMark.vue"]]);const ke=E({name:"Message",components:{CopyToClipboard:te,AnsweringMark:we,MarkdownRenderer:se,ElAlert:Z,ElButton:x},props:{message:{type:Object,required:!0}},emits:["stop"],data(){return{copied:!1,messageState:$}},computed:{errorText(){var e,t;if(!(!this.message.error||!((e=this.message.error)!=null&&e.code)))switch((t=this.message.error)==null?void 0:t.code){case v:return this.$t("chatdoc.message.errorUsedUp");case W:return this.$t("chatdoc.message.errorApiError");case K:return this.$t("chatdoc.message.errorBadRequest");case G:return this.$t("chatdoc.message.errorTimeout");case z:return this.$t("chatdoc.message.errorTooManyRequests");case H:return this.$t("chatdoc.message.errorContentTooLarge");case q:return this.$t("chatdoc.message.errorNotApplied");case T:default:return this.$t("chatdoc.message.errorUnknown")}},showBuyMore(){var e;return this.message.role===N&&((e=this.message.error)==null?void 0:e.code)===v}},methods:{onCopy(){L(this.message.content.toString(),{debug:!0}),this.copied=!0,setTimeout(()=>{this.copied=!1},3e3)},onBuyMore(){}}}),Ie=["role"],Ee={class:"content"},Ne={class:"operations"};function Re(e,t,n,d,r,y){var p;const u=l("markdown-renderer"),a=l("answering-mark"),_=l("copy-to-clipboard"),s=l("el-alert"),C=l("el-button");return o(),c(R,null,[i("div",{class:S({message:!0,[e.message.role]:!0,hidden:e.errorText&&e.message.role==="assistant"}),role:e.message.role},[i("div",Ee,[m(u,{content:(p=e.message)==null?void 0:p.content},null,8,["content"]),e.message.state===e.messageState.PENDING?(o(),h(a,{key:0})):f("v-if",!0)]),i("div",Ne,[m(_,{content:e.message.content,class:"btn-copy"},null,8,["content"])])],10,Ie),e.errorText?(o(),h(s,{key:0,class:"error",title:e.errorText,type:"error",closable:!1},null,8,["title"])):f("v-if",!0),e.showBuyMore?(o(),h(C,{key:1,round:"",type:"primary",class:"btn btn-buy",size:"small",onClick:e.onBuyMore},{default:B(()=>[ee(k(e.$t("common.button.buyMore")),1)]),_:1},8,["onClick"])):f("v-if",!0)],64)}var be=I(ke,[["render",Re],["__scopeId","data-v-95a62450"],["__file","/home/runner/work/Nexior/Nexior/src/components/chatdoc/Message.vue"]]);const Se=E({name:"InputBox",components:{ElInput:V,FontAwesomeIcon:D},props:{disabled:{type:Boolean,required:!1,default:!1},question:{type:String,required:!0}},emits:["update:question","submit"],data(){return{questionValue:this.question,fileList:[]}},computed:{model(){return this.$store.state.chat.model}},watch:{questionValue(e){this.$emit("update:question",e)},question(e){e!==this.questionValue&&(this.questionValue=e)},references(e){e.length===0&&(this.fileList=[])}},methods:{onSubmit(){!this.question||this.$emit("submit")}}}),ve={class:"input-box"},Oe={class:"info"};function Ae(e,t,n,d,r,y){const u=l("font-awesome-icon"),a=l("el-input");return o(),c(R,null,[i("div",ve,[i("span",{class:S({btn:!0,"btn-send":!0,disabled:!e.question}),onClick:t[0]||(t[0]=(..._)=>e.onSubmit&&e.onSubmit(..._))},[m(u,{icon:"fa-solid fa-location-arrow",class:"icon icon-send"})],2),m(a,{modelValue:e.questionValue,"onUpdate:modelValue":t[1]||(t[1]=_=>e.questionValue=_),disabled:e.disabled,class:"input",type:"textarea",placeholder:e.$t("chat.message.newMessagePlaceholder"),onKeydown:U(w(e.onSubmit,["exact","prevent"]),["enter"])},null,8,["modelValue","disabled","placeholder","onKeydown"])]),i("p",Oe,k(e.$t("chat.message.howToUse")),1)],64)}var Te=I(Se,[["render",Ae],["__scopeId","data-v-7ed35c20"],["__file","/home/runner/work/Nexior/Nexior/src/components/chatdoc/InputBox.vue"]]);const qe=E({name:"ChatdocConversation",components:{Layout:P,Conversations:fe,Message:be,InputBox:Te,ApplicationStatus:oe},data(){return{loading:!1,repositoryId:this.$route.params.repositoryId.toString(),answering:!1,question:""}},computed:{messages:{get(){var e,t;return((t=(e=this.conversations)==null?void 0:e.find(n=>{var d;return n.id===((d=this.$route.params.conversationId)==null?void 0:d.toString())}))==null?void 0:t.messages)||[]},set(e){console.debug("set messages",e)}},repository(){var e,t,n;return(n=(t=(e=this.$store.state)==null?void 0:e.chatdoc)==null?void 0:t.repositories)==null?void 0:n.find(d=>d.id===this.repositoryId)},conversations(){var e;return(e=this.repository)==null?void 0:e.conversations},conversationId(){var e;return(e=this.$route.params.conversationId)==null?void 0:e.toString()},application(){return this.$store.state.chatdoc.application},credential(){return this.$store.state.chatdoc.credential},needApply(){return this.$store.state.chatdoc.status.getApplications===O.Success&&!this.application},initializing(){return this.$store.state.chatdoc.status.getApplications===O.Request},service(){return this.$store.state.chatdoc.service}},async mounted(){console.debug("start get conversations"),this.loading=!0,this.$store.dispatch("chatdoc/getConversations",{repositoryId:this.repositoryId}).finally(()=>{this.loading=!1})},methods:{async onSubmit(){this.messages.push({content:this.question,role:Q}),await this.onFetchAnswer()},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".dialogue");!e||!this.messages||this.messages.length===0||(e.scrollTop=e==null?void 0:e.scrollHeight)},0)},async onFetchAnswer(){var d;const e=(d=this.credential)==null?void 0:d.token,t=this.question;if(console.debug(this.onFetchAnswer,"validated",t),this.question="",!e||!t){console.error("no token or endpoint or question"),this.messages.push({error:{code:q},role:N,state:$.FAILED});return}let n=this.conversationId;this.messages.push({content:"",role:N,state:$.PENDING}),console.debug("start to get answer",this.messages),this.onScrollDown(),this.answering=!0,b.chatConversation({repositoryId:this.repositoryId,question:t,id:this.conversationId},{token:e,stream:r=>{this.messages[this.messages.length-1]={role:N,content:r.answer,state:$.ANSWERING},n=r.id,this.onScrollDown()}}).then(async()=>{console.debug("finished fetch answer"),this.messages[this.messages.length-1].state=$.FINISHED,await this.$store.dispatch("chatdoc/setConversation",{id:n,messages:this.messages,repositoryId:this.repositoryId}),this.answering=!1,this.conversationId||(console.debug("push to conversation",n),await this.$router.push({name:A,params:{conversationId:n,repositoryId:this.repositoryId}})),this.onScrollDown(),await this.$store.dispatch("chatdoc/getConversations",{repositoryId:this.repositoryId})}).catch(r=>{var y,u;if(this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].state=$.FAILED),console.error(r),X.isCancel(r))this.messages[this.messages.length-1].error={code:j};else if((y=r==null?void 0:r.response)!=null&&y.data){let a=(u=r==null?void 0:r.response)==null?void 0:u.data;J(a)&&(a=JSON.parse(a)),this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].error=a.error)}else this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].error={code:T});this.answering=!1})}}}),De={class:"wrapper"},Ve={class:"chat"},Me={class:"status"},Ue={class:"dialogue"},Be={class:"messages"},Le={class:"bottom"};function Pe(e,t,n,d,r,y){const u=l("conversations"),a=l("application-status"),_=l("message"),s=l("input-box"),C=l("layout");return o(),h(C,null,{chatdoc:B(()=>[i("div",De,[m(u,{class:"side"}),i("div",Ve,[i("div",Me,[m(a,{"show-price":!1,initializing:e.initializing,application:e.application,"need-apply":e.needApply,service:e.service,onRefresh:t[0]||(t[0]=p=>e.$store.dispatch("chatdoc/getApplications"))},null,8,["initializing","application","need-apply","service"])]),i("div",Ue,[i("div",Be,[(o(!0),c(R,null,M(e.messages,(p,g)=>(o(),h(_,{key:g,message:p,class:"message"},null,8,["message"]))),128))])]),i("div",Le,[m(s,{disabled:e.answering,question:e.question,"onUpdate:question":t[1]||(t[1]=p=>e.question=p),onSubmit:e.onSubmit},null,8,["disabled","question","onSubmit"])])])])]),_:1})}var es=I(qe,[["render",Pe],["__scopeId","data-v-24089614"],["__file","/home/runner/work/Nexior/Nexior/src/pages/chatdoc/Conversation.vue"]]);export{es as default};
1
+ import{ak as L}from"./vendor-others.32a9cc65.js";import{L as P}from"./Chatdoc.f0e4f98a.js";import{aj as F,al as b,am as A,_ as I,M as T,O as q,P as H,Q as z,T as G,U as K,V as W,W as v,X as N,a0 as O,a2 as Q,N as j,an as J}from"./index.66e73c9d.js";import{a as X}from"./vendor-axios.168e6950.js";import{ar as D}from"./vendor-fortawesome.a228a0e7.js";import{t as V,H as Y,I as Z,u as x}from"./vendor-element-plus.b61d898b.js";import{H as E,al as l,o,e as c,L as h,f as i,V as m,T as k,U as R,ai as M,P as S,as as U,R as f,$ as w,M as B,S as ee}from"./vendor-@vue.30126b18.js";import{M as se}from"./MarkdownRenderer.3cc48d18.js";import{C as te}from"./CopyToClipboard.d3bd0d2e.js";import{A as oe}from"./Status.dfe496d9.js";import"./vendor-markdown.64d20655.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-highlight.js.6ee9ffbc.js";var $=(e=>(e.PENDING="pending",e.ANSWERING="answering",e.FINISHED="finished",e.FAILED="failed",e))($||{});const ie=E({name:"SidePanel",components:{ElInput:V,FontAwesomeIcon:D,ElSkeleton:Y},props:{},emits:["click"],computed:{repositoryId(){var e,t;return(t=(e=this.$route.params)==null?void 0:e.repositoryId)==null?void 0:t.toString()},conversationId(){var e,t;return(t=(e=this.$route.params)==null?void 0:e.conversationId)==null?void 0:t.toString()},repository(){var e,t,n;return(n=(t=(e=this.$store.state)==null?void 0:e.chatdoc)==null?void 0:t.repositories)==null?void 0:n.find(d=>d.id===this.repositoryId)},conversations(){var e;return(e=this.repository)==null?void 0:e.conversations},application(){return this.$store.state.chatdoc.application}},methods:{async onNewConversation(){this.$router.push({name:F,params:{repositoryId:this.repositoryId}})},async onConfirm(e){e!=null&&e.deleting?(await b.deleteConversation(e.id),await this.$store.dispatch("chat/getConversations")):e!=null&&e.editing?(await b.updateConversation(e),await this.$store.dispatch("chat/getConversations")):e.editing=!0},onClick(e){!e||(this.$router.push({name:A,params:{repositoryId:this.repositoryId,conversationId:e}}),this.$emit("click",e))}}}),ne={class:"panel"},ae={key:1,class:"conversations"},re={class:"icons"},le={class:"title"},de=["onClick"],ce={class:"icons"},ue={class:"title"},pe={key:0},he={key:1},me={key:2},_e={class:"operations"};function ge(e,t,n,d,r,y){const u=l("el-skeleton"),a=l("font-awesome-icon"),_=l("el-input");return o(),c("div",ne,[e.conversations===void 0?(o(),h(u,{key:0})):(o(),c("div",ae,[i("div",{class:"conversation",onClick:t[0]||(t[0]=(...s)=>e.onNewConversation&&e.onNewConversation(...s))},[i("div",re,[m(a,{icon:"fa-solid fa-plus",class:"icon"})]),i("div",le,k(e.$t("chatdoc.message.startNewChat")),1)]),(o(!0),c(R,null,M(e.conversations,(s,C)=>{var p;return o(),c("div",{key:C,class:S({conversation:!0,active:s.id===e.conversationId}),onClick:g=>e.onClick(s.id)},[i("div",ce,[m(a,{icon:"fa-regular fa-comment",class:"icon"})]),i("div",ue,[s!=null&&s.deleting?(o(),c("span",pe,k(`${e.$t("chatdoc.message.confirmDelete")}?`),1)):s!=null&&s.editing?(o(),c("span",he,[m(_,{modelValue:s.title,"onUpdate:modelValue":g=>s.title=g,onKeydown:U(g=>e.onConfirm(s),["enter"])},null,8,["modelValue","onUpdate:modelValue","onKeydown"])])):(s==null?void 0:s.title)||(s==null?void 0:s.messages)?(o(),c("span",me,k((s==null?void 0:s.title)||((p=s==null?void 0:s.messages[(s==null?void 0:s.messages.length)-1])==null?void 0:p.content)),1)):f("v-if",!0)]),i("div",_e,[!(s!=null&&s.editing)&&!s.deleting?(o(),h(a,{key:0,icon:"fa-solid fa-edit",class:"icon icon-edit",onClick:w(g=>s.editing=!0,["stop"])},null,8,["onClick"])):f("v-if",!0),!(s!=null&&s.editing)&&!s.deleting?(o(),h(a,{key:1,icon:"fa-solid fa-trash",class:"icon icon-delete",onClick:w(g=>s.deleting=!0,["stop"])},null,8,["onClick"])):f("v-if",!0),(s==null?void 0:s.editing)||s.deleting?(o(),h(a,{key:2,icon:"fa-solid fa-check",class:"icon icon-confirm",onClick:w(g=>e.onConfirm(s),["stop"])},null,8,["onClick"])):f("v-if",!0),(s==null?void 0:s.editing)||s.deleting?(o(),h(a,{key:3,icon:"fa-solid fa-xmark",class:"icon icon-cancel",onClick:w(g=>{s.editing=!1,s.deleting=!1},["stop"])},null,8,["onClick"])):f("v-if",!0)])],10,de)}),128))]))])}var fe=I(ie,[["render",ge],["__scopeId","data-v-2282a6e1"],["__file","/home/runner/work/Nexior/Nexior/src/components/chatdoc/Conversations.vue"]]);const ye=E({name:"AnsweringMark",data(){return{}},computed:{conversationId(){var e,t;return(t=(e=this.$route.params)==null?void 0:e.conversationId)==null?void 0:t.toString()}}}),$e={class:"mark"};function Ce(e,t,n,d,r,y){return o(),c("div",$e)}var we=I(ye,[["render",Ce],["__file","/home/runner/work/Nexior/Nexior/src/components/chatdoc/AnsweringMark.vue"]]);const ke=E({name:"Message",components:{CopyToClipboard:te,AnsweringMark:we,MarkdownRenderer:se,ElAlert:Z,ElButton:x},props:{message:{type:Object,required:!0}},emits:["stop"],data(){return{copied:!1,messageState:$}},computed:{errorText(){var e,t;if(!(!this.message.error||!((e=this.message.error)!=null&&e.code)))switch((t=this.message.error)==null?void 0:t.code){case v:return this.$t("chatdoc.message.errorUsedUp");case W:return this.$t("chatdoc.message.errorApiError");case K:return this.$t("chatdoc.message.errorBadRequest");case G:return this.$t("chatdoc.message.errorTimeout");case z:return this.$t("chatdoc.message.errorTooManyRequests");case H:return this.$t("chatdoc.message.errorContentTooLarge");case q:return this.$t("chatdoc.message.errorNotApplied");case T:default:return this.$t("chatdoc.message.errorUnknown")}},showBuyMore(){var e;return this.message.role===N&&((e=this.message.error)==null?void 0:e.code)===v}},methods:{onCopy(){L(this.message.content.toString(),{debug:!0}),this.copied=!0,setTimeout(()=>{this.copied=!1},3e3)},onBuyMore(){}}}),Ie=["role"],Ee={class:"content"},Ne={class:"operations"};function Re(e,t,n,d,r,y){var p;const u=l("markdown-renderer"),a=l("answering-mark"),_=l("copy-to-clipboard"),s=l("el-alert"),C=l("el-button");return o(),c(R,null,[i("div",{class:S({message:!0,[e.message.role]:!0,hidden:e.errorText&&e.message.role==="assistant"}),role:e.message.role},[i("div",Ee,[m(u,{content:(p=e.message)==null?void 0:p.content},null,8,["content"]),e.message.state===e.messageState.PENDING?(o(),h(a,{key:0})):f("v-if",!0)]),i("div",Ne,[m(_,{content:e.message.content,class:"btn-copy"},null,8,["content"])])],10,Ie),e.errorText?(o(),h(s,{key:0,class:"error",title:e.errorText,type:"error",closable:!1},null,8,["title"])):f("v-if",!0),e.showBuyMore?(o(),h(C,{key:1,round:"",type:"primary",class:"btn btn-buy",size:"small",onClick:e.onBuyMore},{default:B(()=>[ee(k(e.$t("common.button.buyMore")),1)]),_:1},8,["onClick"])):f("v-if",!0)],64)}var be=I(ke,[["render",Re],["__scopeId","data-v-95a62450"],["__file","/home/runner/work/Nexior/Nexior/src/components/chatdoc/Message.vue"]]);const Se=E({name:"InputBox",components:{ElInput:V,FontAwesomeIcon:D},props:{disabled:{type:Boolean,required:!1,default:!1},question:{type:String,required:!0}},emits:["update:question","submit"],data(){return{questionValue:this.question,fileList:[]}},computed:{model(){return this.$store.state.chat.model}},watch:{questionValue(e){this.$emit("update:question",e)},question(e){e!==this.questionValue&&(this.questionValue=e)},references(e){e.length===0&&(this.fileList=[])}},methods:{onSubmit(){!this.question||this.$emit("submit")}}}),ve={class:"input-box"},Oe={class:"info"};function Ae(e,t,n,d,r,y){const u=l("font-awesome-icon"),a=l("el-input");return o(),c(R,null,[i("div",ve,[i("span",{class:S({btn:!0,"btn-send":!0,disabled:!e.question}),onClick:t[0]||(t[0]=(..._)=>e.onSubmit&&e.onSubmit(..._))},[m(u,{icon:"fa-solid fa-location-arrow",class:"icon icon-send"})],2),m(a,{modelValue:e.questionValue,"onUpdate:modelValue":t[1]||(t[1]=_=>e.questionValue=_),disabled:e.disabled,class:"input",type:"textarea",placeholder:e.$t("chat.message.newMessagePlaceholder"),onKeydown:U(w(e.onSubmit,["exact","prevent"]),["enter"])},null,8,["modelValue","disabled","placeholder","onKeydown"])]),i("p",Oe,k(e.$t("chat.message.howToUse")),1)],64)}var Te=I(Se,[["render",Ae],["__scopeId","data-v-7ed35c20"],["__file","/home/runner/work/Nexior/Nexior/src/components/chatdoc/InputBox.vue"]]);const qe=E({name:"ChatdocConversation",components:{Layout:P,Conversations:fe,Message:be,InputBox:Te,ApplicationStatus:oe},data(){return{loading:!1,repositoryId:this.$route.params.repositoryId.toString(),answering:!1,question:""}},computed:{messages:{get(){var e,t;return((t=(e=this.conversations)==null?void 0:e.find(n=>{var d;return n.id===((d=this.$route.params.conversationId)==null?void 0:d.toString())}))==null?void 0:t.messages)||[]},set(e){console.debug("set messages",e)}},repository(){var e,t,n;return(n=(t=(e=this.$store.state)==null?void 0:e.chatdoc)==null?void 0:t.repositories)==null?void 0:n.find(d=>d.id===this.repositoryId)},conversations(){var e;return(e=this.repository)==null?void 0:e.conversations},conversationId(){var e;return(e=this.$route.params.conversationId)==null?void 0:e.toString()},application(){return this.$store.state.chatdoc.application},credential(){return this.$store.state.chatdoc.credential},needApply(){return this.$store.state.chatdoc.status.getApplications===O.Success&&!this.application},initializing(){return this.$store.state.chatdoc.status.getApplications===O.Request},service(){return this.$store.state.chatdoc.service}},async mounted(){console.debug("start get conversations"),this.loading=!0,this.$store.dispatch("chatdoc/getConversations",{repositoryId:this.repositoryId}).finally(()=>{this.loading=!1})},methods:{async onSubmit(){this.messages.push({content:this.question,role:Q}),await this.onFetchAnswer()},async onScrollDown(){setTimeout(()=>{const e=document.querySelector(".dialogue");!e||!this.messages||this.messages.length===0||(e.scrollTop=e==null?void 0:e.scrollHeight)},0)},async onFetchAnswer(){var d;const e=(d=this.credential)==null?void 0:d.token,t=this.question;if(console.debug(this.onFetchAnswer,"validated",t),this.question="",!e||!t){console.error("no token or endpoint or question"),this.messages.push({error:{code:q},role:N,state:$.FAILED});return}let n=this.conversationId;this.messages.push({content:"",role:N,state:$.PENDING}),console.debug("start to get answer",this.messages),this.onScrollDown(),this.answering=!0,b.chatConversation({repositoryId:this.repositoryId,question:t,id:this.conversationId},{token:e,stream:r=>{this.messages[this.messages.length-1]={role:N,content:r.answer,state:$.ANSWERING},n=r.id,this.onScrollDown()}}).then(async()=>{console.debug("finished fetch answer"),this.messages[this.messages.length-1].state=$.FINISHED,await this.$store.dispatch("chatdoc/setConversation",{id:n,messages:this.messages,repositoryId:this.repositoryId}),this.answering=!1,this.conversationId||(console.debug("push to conversation",n),await this.$router.push({name:A,params:{conversationId:n,repositoryId:this.repositoryId}})),this.onScrollDown(),await this.$store.dispatch("chatdoc/getConversations",{repositoryId:this.repositoryId})}).catch(r=>{var y,u;if(this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].state=$.FAILED),console.error(r),X.isCancel(r))this.messages[this.messages.length-1].error={code:j};else if((y=r==null?void 0:r.response)!=null&&y.data){let a=(u=r==null?void 0:r.response)==null?void 0:u.data;J(a)&&(a=JSON.parse(a)),this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].error=a.error)}else this.messages&&this.messages.length>0&&(this.messages[this.messages.length-1].error={code:T});this.answering=!1})}}}),De={class:"wrapper"},Ve={class:"chat"},Me={class:"status"},Ue={class:"dialogue"},Be={class:"messages"},Le={class:"bottom"};function Pe(e,t,n,d,r,y){const u=l("conversations"),a=l("application-status"),_=l("message"),s=l("input-box"),C=l("layout");return o(),h(C,null,{chatdoc:B(()=>[i("div",De,[m(u,{class:"side"}),i("div",Ve,[i("div",Me,[m(a,{"show-price":!1,initializing:e.initializing,application:e.application,"need-apply":e.needApply,service:e.service,onRefresh:t[0]||(t[0]=p=>e.$store.dispatch("chatdoc/getApplications"))},null,8,["initializing","application","need-apply","service"])]),i("div",Ue,[i("div",Be,[(o(!0),c(R,null,M(e.messages,(p,g)=>(o(),h(_,{key:g,message:p,class:"message"},null,8,["message"]))),128))])]),i("div",Le,[m(s,{disabled:e.answering,question:e.question,"onUpdate:question":t[1]||(t[1]=p=>e.question=p),onSubmit:e.onSubmit},null,8,["disabled","question","onSubmit"])])])])]),_:1})}var es=I(qe,[["render",Pe],["__scopeId","data-v-24089614"],["__file","/home/runner/work/Nexior/Nexior/src/pages/chatdoc/Conversation.vue"]]);export{es as default};
@@ -1 +1 @@
1
- import{ak as s}from"./vendor-others.32a9cc65.js";import{ar as i}from"./vendor-fortawesome.a228a0e7.js";import{_ as m}from"./index.fe7d50bd.js";import{s as l}from"./vendor-element-plus.b61d898b.js";import{H as d,al as n,o as c,L as a,M as p,V as r}from"./vendor-@vue.30126b18.js";const _=d({name:"CopyToClipboard",components:{FontAwesomeIcon:i,ElTooltip:l},props:{content:{type:String,required:!0}},data(){return{copied:!1}},methods:{onCopy(){s(this.content,{debug:!0}),this.copied=!0,setTimeout(()=>{this.copied=!1},3e3)}}});function f(o,u,C,y,b,k){const e=n("font-awesome-icon"),t=n("el-tooltip");return o.copied?(c(),a(t,{key:1,visible:o.copied,effect:"dark",content:o.$t("common.message.copied"),placement:"bottom"},{default:p(()=>[r(e,{icon:"fa-solid fa-check",class:"icon-check"})]),_:1},8,["visible","content"])):(c(),a(t,{key:0,effect:"dark",content:o.$t("common.button.copy"),placement:"bottom"},{default:p(()=>[r(e,{icon:"fa-regular fa-copy",class:"icon-copy",onClick:o.onCopy},null,8,["onClick"])]),_:1},8,["content"]))}var w=m(_,[["render",f],["__scopeId","data-v-1ba27772"],["__file","/home/runner/work/Nexior/Nexior/src/components/common/CopyToClipboard.vue"]]);export{w as C};
1
+ import{ak as s}from"./vendor-others.32a9cc65.js";import{ar as i}from"./vendor-fortawesome.a228a0e7.js";import{_ as m}from"./index.66e73c9d.js";import{s as l}from"./vendor-element-plus.b61d898b.js";import{H as d,al as n,o as c,L as a,M as p,V as r}from"./vendor-@vue.30126b18.js";const _=d({name:"CopyToClipboard",components:{FontAwesomeIcon:i,ElTooltip:l},props:{content:{type:String,required:!0}},data(){return{copied:!1}},methods:{onCopy(){s(this.content,{debug:!0}),this.copied=!0,setTimeout(()=>{this.copied=!1},3e3)}}});function f(o,u,C,y,b,k){const e=n("font-awesome-icon"),t=n("el-tooltip");return o.copied?(c(),a(t,{key:1,visible:o.copied,effect:"dark",content:o.$t("common.message.copied"),placement:"bottom"},{default:p(()=>[r(e,{icon:"fa-solid fa-check",class:"icon-check"})]),_:1},8,["visible","content"])):(c(),a(t,{key:0,effect:"dark",content:o.$t("common.button.copy"),placement:"bottom"},{default:p(()=>[r(e,{icon:"fa-regular fa-copy",class:"icon-copy",onClick:o.onCopy},null,8,["onClick"])]),_:1},8,["content"]))}var w=m(_,[["render",f],["__scopeId","data-v-1ba27772"],["__file","/home/runner/work/Nexior/Nexior/src/components/common/CopyToClipboard.vue"]]);export{w as C};
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{o as P}from"./order.7d8c923b.js";import{_ as S,I as K}from"./index.fe7d50bd.js";import{O as w}from"./order.aa35b6fb.js";import{Q as M}from"./vendor-qrcode.38ad4424.js";import{E as z,A as j,B as U,u as X,F as Y,H as Z,l as x,I as ee,J as ae,K as te}from"./vendor-element-plus.b61d898b.js";import{H as C,al as i,o,L as u,M as a,V as t,f as c,R as n,T as l,e as d,U as re,S as $,P as H}from"./vendor-@vue.30126b18.js";import{g as oe}from"./price.b6c86059.js";import{C as se}from"./CopyToClipboard.2d947214.js";import"./vendor-markdown.64d20655.js";import"./vendor-axios.168e6950.js";import"./vendor-fortawesome.a228a0e7.js";const ie=C({name:"PayOrderDialog",components:{ElDialog:z,QrCode:M,ElRow:j,ElCol:U},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:["hide","update:modelValue"],data(){return{refreshTimer:void 0}},mounted(){this.onRefresh()},unmounted(){this.refreshTimer&&clearTimeout(this.refreshTimer)},methods:{onRefresh(){if(!this.modelValue.id){console.error("id does not exist");return}P.refresh(this.modelValue.id).then(({data:e})=>{e.state!==w.PAID?setTimeout(()=>{this.onRefresh()},2e3):this.$emit("hide"),this.$emit("update:modelValue",e)}).catch(()=>{setTimeout(()=>{this.onRefresh()},2e3)})}}}),le={class:"paycode wechat"},ne={class:"help-text"};function de(e,r,D,E,T,I){const p=i("qr-code"),m=i("el-col"),k=i("el-row"),W=i("el-dialog");return o(),u(W,{"model-value":e.visible,title:e.$t("application.title.buyService"),width:"500px",center:""},{default:a(()=>[t(k,{class:"paycodes"},{default:a(()=>[t(m,{span:12},{default:a(()=>{var f,b;return[c("div",le,[(f=e.modelValue)!=null&&f.pay_url?(o(),u(p,{key:0,value:(b=e.modelValue)==null?void 0:b.pay_url,size:200,class:"qrcode m-auto"},null,8,["value"])):n("v-if",!0),c("p",ne,l(e.$t("order.message.wechatPayHelp")),1)])]}),_:1}),t(m,{span:12},{default:a(()=>r[0]||(r[0]=[c("div",{class:"help-img"},[c("img",{src:"https://midas.gtimg.cn/enterprise/images/ep_sys_wx_tip.jpg"})],-1)])),_:1,__:[0]})]),_:1})]),_:1},8,["model-value","title"])}var pe=S(ie,[["render",de],["__scopeId","data-v-875060be"],["__file","/home/runner/work/Nexior/Nexior/src/components/order/WechatPay.vue"]]);const ye=C({name:"PayOrderDialog",components:{ElDialog:z},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:["hide","update:modelValue"],data(){return{refreshTimer:void 0}},watch:{visible:{handler(e){e&&this.modelValue.pay_url&&window.open(this.modelValue.pay_url,"_blank")}}},mounted(){this.onRefresh()},unmounted(){this.refreshTimer&&clearTimeout(this.refreshTimer)},methods:{onRefresh(){if(!this.modelValue.id){console.error("id does not exist");return}P.refresh(this.modelValue.id).then(({data:e})=>{e.state!==w.PAID?setTimeout(()=>{this.onRefresh()},2e3):this.$emit("hide"),this.$emit("update:modelValue",e)}).catch(()=>{setTimeout(()=>{this.onRefresh()},5e3)})}}}),ue={class:"text-center"};function ce(e,r,D,E,T,I){const p=i("el-dialog");return o(),u(p,{"model-value":e.visible,title:e.$t("application.title.buyService"),width:"500px",center:""},{default:a(()=>[c("p",ue,l(e.$t("order.message.buyInExternalUrl")),1)]),_:1},8,["model-value","title"])}var me=S(ye,[["render",ce],["__scopeId","data-v-85959ecc"],["__file","/home/runner/work/Nexior/Nexior/src/components/order/StripePay.vue"]]);var L=(e=>(e.WechatPay="WechatPay",e.Stripe="Stripe",e.AliPay="AliPay",e))(L||{});const fe=C({name:"ConsoleOrderDetail",components:{ElButton:X,CopyToClipboard:se,ElRow:j,ElCard:Y,ElCol:U,ElSkeleton:Z,ElDivider:x,ElAlert:ee,ElDescriptions:ae,ElDescriptionsItem:te,WechatPayOrder:pe,StripePayOrder:me},data(){return{PayWay:L,payWay:"WechatPay",OrderState:w,order:void 0,showPayWays:!0,loading:!1,paying:!1,prepaying:!1,applicationType:K}},computed:{id(){var e,r;return(r=(e=this.$route.params)==null?void 0:e.id)==null?void 0:r.toString()},redirect(){var e;return(e=this.$route.query)==null?void 0:e.redirect}},watch:{order:{handler(e){if((e==null?void 0:e.state)===w.PAID){setTimeout(()=>{var r;this.redirect&&window.location.replace((r=this.redirect)==null?void 0:r.toString())},2e3);return}},deep:!0}},mounted(){this.onFetchData()},methods:{getPriceString:oe,onFetchData(){this.loading=!0,P.refresh(this.id).then(({data:e})=>{this.order=e,e.pay_way&&(this.payWay=e.pay_way),this.loading=!1}).catch(()=>{this.loading=!1})},onRepay(){this.paying=!0},onPay(){this.prepaying=!0,P.pay(this.id,{pay_way:this.payWay}).then(({data:e})=>{this.prepaying=!1,this.order=e,this.order.price&&this.order.price>0&&(this.paying=!0)}).catch(()=>{this.prepaying=!1})}}}),he={class:"title"},_e={key:0,class:"pt-5"},ve={key:1,class:"order"},ge={key:0},$e={key:1},be={key:0,class:"price unfree"},Pe={key:1,class:"price free"},we={key:0,class:"payways mb-6"},ke={class:"payname"};const We={class:"payname"},Ve={key:1},Se={key:2};function Ce(e,r,D,E,T,I){const p=i("el-col"),m=i("el-row"),k=i("el-skeleton"),W=i("copy-to-clipboard"),f=i("el-descriptions-item"),b=i("el-descriptions"),V=i("el-divider"),N=i("el-alert"),O=i("el-button"),Q=i("el-card"),G=i("wechat-pay-order"),J=i("stripe-pay-order");return o(),d(re,null,[t(m,{class:"panel"},{default:a(()=>[t(p,{span:24},{default:a(()=>[t(m,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[c("h2",he,l(e.$t("order.title.info")),1)]),_:1})]),_:1}),t(m,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[t(Q,{shadow:"hover"},{default:a(()=>{var h,A,R,B,q;return[t(m,null,{default:a(()=>[t(p,{span:16,offset:4},{default:a(()=>[e.loading?(o(),d("div",_e,[t(k,{animated:""})])):(o(),d("div",ve,[t(b,{column:1},{default:a(()=>{var v,g,F;return[t(f,{label:e.$t("order.field.id")},{default:a(()=>{var s,y,_;return[c("span",null,l((s=e.order)==null?void 0:s.id),1),(y=e.order)!=null&&y.id?(o(),u(W,{key:0,content:(_=e.order)==null?void 0:_.id,class:"inline-block"},null,8,["content"])):n("v-if",!0)]}),_:1},8,["label"]),t(f,{label:e.$t("order.field.description")},{default:a(()=>{var s;return[$(l((s=e.order)==null?void 0:s.description),1)]}),_:1},8,["label"]),(g=(v=e.order)==null?void 0:v.application)!=null&&g.service?(o(),u(f,{key:0,label:e.$t("order.field.api")},{default:a(()=>{var s,y,_;return[$(l((_=(y=(s=e.order)==null?void 0:s.application)==null?void 0:y.service)==null?void 0:_.title),1)]}),_:1},8,["label"])):n("v-if",!0),(F=e.order)!=null&&F.pay_way?(o(),u(f,{key:1,label:e.$t("order.field.payWay")},{default:a(()=>{var s,y;return[((s=e.order)==null?void 0:s.pay_way)===e.PayWay.WechatPay?(o(),d("span",ge,l(e.$t("order.title.wechatPay")),1)):n("v-if",!0),((y=e.order)==null?void 0:y.pay_way)===e.PayWay.Stripe?(o(),d("span",$e,l(e.$t("order.title.stripe")),1)):n("v-if",!0)]}),_:1},8,["label"])):n("v-if",!0),t(f,{label:e.$t("order.field.createdAt")},{default:a(()=>{var s;return[$(l(e.$dayjs.format((s=e.order)==null?void 0:s.created_at)),1)]}),_:1},8,["label"]),t(f,{label:e.$t("order.field.price")},{default:a(()=>{var s,y,_;return[((s=e.order)==null?void 0:s.price)&&((y=e.order)==null?void 0:y.price)>0?(o(),d("span",be,l(e.getPriceString({value:(_=e.order)==null?void 0:_.price})),1)):(o(),d("span",Pe,l(e.$t("order.message.free")),1))]}),_:1},8,["label"])]}),_:1})]))]),_:1})]),_:1}),((h=e.order)==null?void 0:h.state)===e.OrderState.PAID||((A=e.order)==null?void 0:A.state)===e.OrderState.FINISHED?(o(),u(m,{key:0,class:"mb-5"},{default:a(()=>[t(p,{span:16,offset:4},{default:a(()=>[t(V,{"border-style":"dashed"}),t(N,{title:e.$t("order.message.paidSuccessfully"),type:"success","show-icon":"",closable:!1},null,8,["title"])]),_:1})]),_:1})):n("v-if",!0),((R=e.order)==null?void 0:R.state)===e.OrderState.EXPIRED?(o(),u(m,{key:1,class:"mb-5"},{default:a(()=>[t(p,{span:16,offset:4},{default:a(()=>[t(V,{"border-style":"dashed"}),t(N,{title:e.$t("order.message.orderExpired"),type:"error","show-icon":"",closable:!1},null,8,["title"])]),_:1})]),_:1})):n("v-if",!0),((B=e.order)==null?void 0:B.state)===e.OrderState.PENDING||((q=e.order)==null?void 0:q.state)===e.OrderState.FAILED?(o(),u(m,{key:2},{default:a(()=>[t(p,{span:16,offset:4},{default:a(()=>{var v;return[t(V,{"border-style":"dashed"}),e.showPayWays&&e.order.price&&e.order.price>0&&!e.order.pay_way?(o(),d("div",we,[(o(),d("div",{key:0,class:H({payway:!0,wechatpay:!0,active:e.payWay===e.PayWay.WechatPay}),onClick:r[0]||(r[0]=g=>e.payWay=e.PayWay.WechatPay)},[r[7]||(r[7]=c("span",{class:"payicon wechatpay"},null,-1)),c("span",ke,l(e.$t("order.title.wechatPay")),1)],2)),n("v-if",!0),(o(),d("div",{key:2,class:H({payway:!0,stripe:!0,active:e.payWay===e.PayWay.Stripe}),onClick:r[2]||(r[2]=g=>e.payWay=e.PayWay.Stripe)},[r[9]||(r[9]=c("span",{class:"payicon stripe"},null,-1)),c("span",We,l(e.$t("order.title.stripe")),1)],2))])):n("v-if",!0),(v=e.order)!=null&&v.pay_way?(o(),d("div",Se,[t(O,{type:"primary",round:"",size:"large",class:"btn-repay",onClick:e.onRepay},{default:a(()=>[$(l(e.$t("common.button.repay")),1)]),_:1},8,["onClick"])])):(o(),d("div",Ve,[t(O,{loading:e.prepaying,round:"",type:"primary",size:"large",class:"btn-pay",onClick:e.onPay},{default:a(()=>[$(l(e.$t("common.button.pay")),1)]),_:1},8,["loading","onClick"])]))]}),_:1})]),_:1})):n("v-if",!0)]}),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e.order&&e.payWay===e.PayWay.WechatPay?(o(),u(G,{key:0,modelValue:e.order,"onUpdate:modelValue":r[3]||(r[3]=h=>e.order=h),visible:e.paying,onHide:r[4]||(r[4]=h=>e.paying=!1)},null,8,["modelValue","visible"])):n("v-if",!0),e.order&&e.payWay===e.PayWay.Stripe?(o(),u(J,{key:1,modelValue:e.order,"onUpdate:modelValue":r[5]||(r[5]=h=>e.order=h),visible:e.paying,onHide:r[6]||(r[6]=h=>e.paying=!1)},null,8,["modelValue","visible"])):n("v-if",!0)],64)}var ze=S(fe,[["render",Ce],["__scopeId","data-v-2d1dc98e"],["__file","/home/runner/work/Nexior/Nexior/src/pages/console/order/Detail.vue"]]);export{ze as default};
1
+ import"./vendor-others.32a9cc65.js";import{o as P}from"./order.8ba2e7e4.js";import{_ as S,I as K}from"./index.66e73c9d.js";import{O as w}from"./order.aa35b6fb.js";import{Q as M}from"./vendor-qrcode.38ad4424.js";import{E as z,A as j,B as U,u as X,F as Y,H as Z,l as x,I as ee,J as ae,K as te}from"./vendor-element-plus.b61d898b.js";import{H as C,al as i,o,L as u,M as a,V as t,f as c,R as n,T as l,e as d,U as re,S as $,P as H}from"./vendor-@vue.30126b18.js";import{g as oe}from"./price.b517b0e3.js";import{C as se}from"./CopyToClipboard.d3bd0d2e.js";import"./vendor-markdown.64d20655.js";import"./vendor-axios.168e6950.js";import"./vendor-fortawesome.a228a0e7.js";const ie=C({name:"PayOrderDialog",components:{ElDialog:z,QrCode:M,ElRow:j,ElCol:U},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:["hide","update:modelValue"],data(){return{refreshTimer:void 0}},mounted(){this.onRefresh()},unmounted(){this.refreshTimer&&clearTimeout(this.refreshTimer)},methods:{onRefresh(){if(!this.modelValue.id){console.error("id does not exist");return}P.refresh(this.modelValue.id).then(({data:e})=>{e.state!==w.PAID?setTimeout(()=>{this.onRefresh()},2e3):this.$emit("hide"),this.$emit("update:modelValue",e)}).catch(()=>{setTimeout(()=>{this.onRefresh()},2e3)})}}}),le={class:"paycode wechat"},ne={class:"help-text"};function de(e,r,D,E,T,I){const p=i("qr-code"),m=i("el-col"),k=i("el-row"),W=i("el-dialog");return o(),u(W,{"model-value":e.visible,title:e.$t("application.title.buyService"),width:"500px",center:""},{default:a(()=>[t(k,{class:"paycodes"},{default:a(()=>[t(m,{span:12},{default:a(()=>{var f,b;return[c("div",le,[(f=e.modelValue)!=null&&f.pay_url?(o(),u(p,{key:0,value:(b=e.modelValue)==null?void 0:b.pay_url,size:200,class:"qrcode m-auto"},null,8,["value"])):n("v-if",!0),c("p",ne,l(e.$t("order.message.wechatPayHelp")),1)])]}),_:1}),t(m,{span:12},{default:a(()=>r[0]||(r[0]=[c("div",{class:"help-img"},[c("img",{src:"https://midas.gtimg.cn/enterprise/images/ep_sys_wx_tip.jpg"})],-1)])),_:1,__:[0]})]),_:1})]),_:1},8,["model-value","title"])}var pe=S(ie,[["render",de],["__scopeId","data-v-875060be"],["__file","/home/runner/work/Nexior/Nexior/src/components/order/WechatPay.vue"]]);const ye=C({name:"PayOrderDialog",components:{ElDialog:z},props:{modelValue:{type:Object,required:!0},visible:{type:Boolean,required:!1,default:!1}},emits:["hide","update:modelValue"],data(){return{refreshTimer:void 0}},watch:{visible:{handler(e){e&&this.modelValue.pay_url&&window.open(this.modelValue.pay_url,"_blank")}}},mounted(){this.onRefresh()},unmounted(){this.refreshTimer&&clearTimeout(this.refreshTimer)},methods:{onRefresh(){if(!this.modelValue.id){console.error("id does not exist");return}P.refresh(this.modelValue.id).then(({data:e})=>{e.state!==w.PAID?setTimeout(()=>{this.onRefresh()},2e3):this.$emit("hide"),this.$emit("update:modelValue",e)}).catch(()=>{setTimeout(()=>{this.onRefresh()},5e3)})}}}),ue={class:"text-center"};function ce(e,r,D,E,T,I){const p=i("el-dialog");return o(),u(p,{"model-value":e.visible,title:e.$t("application.title.buyService"),width:"500px",center:""},{default:a(()=>[c("p",ue,l(e.$t("order.message.buyInExternalUrl")),1)]),_:1},8,["model-value","title"])}var me=S(ye,[["render",ce],["__scopeId","data-v-85959ecc"],["__file","/home/runner/work/Nexior/Nexior/src/components/order/StripePay.vue"]]);var L=(e=>(e.WechatPay="WechatPay",e.Stripe="Stripe",e.AliPay="AliPay",e))(L||{});const fe=C({name:"ConsoleOrderDetail",components:{ElButton:X,CopyToClipboard:se,ElRow:j,ElCard:Y,ElCol:U,ElSkeleton:Z,ElDivider:x,ElAlert:ee,ElDescriptions:ae,ElDescriptionsItem:te,WechatPayOrder:pe,StripePayOrder:me},data(){return{PayWay:L,payWay:"WechatPay",OrderState:w,order:void 0,showPayWays:!0,loading:!1,paying:!1,prepaying:!1,applicationType:K}},computed:{id(){var e,r;return(r=(e=this.$route.params)==null?void 0:e.id)==null?void 0:r.toString()},redirect(){var e;return(e=this.$route.query)==null?void 0:e.redirect}},watch:{order:{handler(e){if((e==null?void 0:e.state)===w.PAID){setTimeout(()=>{var r;this.redirect&&window.location.replace((r=this.redirect)==null?void 0:r.toString())},2e3);return}},deep:!0}},mounted(){this.onFetchData()},methods:{getPriceString:oe,onFetchData(){this.loading=!0,P.refresh(this.id).then(({data:e})=>{this.order=e,e.pay_way&&(this.payWay=e.pay_way),this.loading=!1}).catch(()=>{this.loading=!1})},onRepay(){this.paying=!0},onPay(){this.prepaying=!0,P.pay(this.id,{pay_way:this.payWay}).then(({data:e})=>{this.prepaying=!1,this.order=e,this.order.price&&this.order.price>0&&(this.paying=!0)}).catch(()=>{this.prepaying=!1})}}}),he={class:"title"},_e={key:0,class:"pt-5"},ve={key:1,class:"order"},ge={key:0},$e={key:1},be={key:0,class:"price unfree"},Pe={key:1,class:"price free"},we={key:0,class:"payways mb-6"},ke={class:"payname"};const We={class:"payname"},Ve={key:1},Se={key:2};function Ce(e,r,D,E,T,I){const p=i("el-col"),m=i("el-row"),k=i("el-skeleton"),W=i("copy-to-clipboard"),f=i("el-descriptions-item"),b=i("el-descriptions"),V=i("el-divider"),N=i("el-alert"),O=i("el-button"),Q=i("el-card"),G=i("wechat-pay-order"),J=i("stripe-pay-order");return o(),d(re,null,[t(m,{class:"panel"},{default:a(()=>[t(p,{span:24},{default:a(()=>[t(m,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[c("h2",he,l(e.$t("order.title.info")),1)]),_:1})]),_:1}),t(m,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[t(Q,{shadow:"hover"},{default:a(()=>{var h,A,R,B,q;return[t(m,null,{default:a(()=>[t(p,{span:16,offset:4},{default:a(()=>[e.loading?(o(),d("div",_e,[t(k,{animated:""})])):(o(),d("div",ve,[t(b,{column:1},{default:a(()=>{var v,g,F;return[t(f,{label:e.$t("order.field.id")},{default:a(()=>{var s,y,_;return[c("span",null,l((s=e.order)==null?void 0:s.id),1),(y=e.order)!=null&&y.id?(o(),u(W,{key:0,content:(_=e.order)==null?void 0:_.id,class:"inline-block"},null,8,["content"])):n("v-if",!0)]}),_:1},8,["label"]),t(f,{label:e.$t("order.field.description")},{default:a(()=>{var s;return[$(l((s=e.order)==null?void 0:s.description),1)]}),_:1},8,["label"]),(g=(v=e.order)==null?void 0:v.application)!=null&&g.service?(o(),u(f,{key:0,label:e.$t("order.field.api")},{default:a(()=>{var s,y,_;return[$(l((_=(y=(s=e.order)==null?void 0:s.application)==null?void 0:y.service)==null?void 0:_.title),1)]}),_:1},8,["label"])):n("v-if",!0),(F=e.order)!=null&&F.pay_way?(o(),u(f,{key:1,label:e.$t("order.field.payWay")},{default:a(()=>{var s,y;return[((s=e.order)==null?void 0:s.pay_way)===e.PayWay.WechatPay?(o(),d("span",ge,l(e.$t("order.title.wechatPay")),1)):n("v-if",!0),((y=e.order)==null?void 0:y.pay_way)===e.PayWay.Stripe?(o(),d("span",$e,l(e.$t("order.title.stripe")),1)):n("v-if",!0)]}),_:1},8,["label"])):n("v-if",!0),t(f,{label:e.$t("order.field.createdAt")},{default:a(()=>{var s;return[$(l(e.$dayjs.format((s=e.order)==null?void 0:s.created_at)),1)]}),_:1},8,["label"]),t(f,{label:e.$t("order.field.price")},{default:a(()=>{var s,y,_;return[((s=e.order)==null?void 0:s.price)&&((y=e.order)==null?void 0:y.price)>0?(o(),d("span",be,l(e.getPriceString({value:(_=e.order)==null?void 0:_.price})),1)):(o(),d("span",Pe,l(e.$t("order.message.free")),1))]}),_:1},8,["label"])]}),_:1})]))]),_:1})]),_:1}),((h=e.order)==null?void 0:h.state)===e.OrderState.PAID||((A=e.order)==null?void 0:A.state)===e.OrderState.FINISHED?(o(),u(m,{key:0,class:"mb-5"},{default:a(()=>[t(p,{span:16,offset:4},{default:a(()=>[t(V,{"border-style":"dashed"}),t(N,{title:e.$t("order.message.paidSuccessfully"),type:"success","show-icon":"",closable:!1},null,8,["title"])]),_:1})]),_:1})):n("v-if",!0),((R=e.order)==null?void 0:R.state)===e.OrderState.EXPIRED?(o(),u(m,{key:1,class:"mb-5"},{default:a(()=>[t(p,{span:16,offset:4},{default:a(()=>[t(V,{"border-style":"dashed"}),t(N,{title:e.$t("order.message.orderExpired"),type:"error","show-icon":"",closable:!1},null,8,["title"])]),_:1})]),_:1})):n("v-if",!0),((B=e.order)==null?void 0:B.state)===e.OrderState.PENDING||((q=e.order)==null?void 0:q.state)===e.OrderState.FAILED?(o(),u(m,{key:2},{default:a(()=>[t(p,{span:16,offset:4},{default:a(()=>{var v;return[t(V,{"border-style":"dashed"}),e.showPayWays&&e.order.price&&e.order.price>0&&!e.order.pay_way?(o(),d("div",we,[(o(),d("div",{key:0,class:H({payway:!0,wechatpay:!0,active:e.payWay===e.PayWay.WechatPay}),onClick:r[0]||(r[0]=g=>e.payWay=e.PayWay.WechatPay)},[r[7]||(r[7]=c("span",{class:"payicon wechatpay"},null,-1)),c("span",ke,l(e.$t("order.title.wechatPay")),1)],2)),n("v-if",!0),(o(),d("div",{key:2,class:H({payway:!0,stripe:!0,active:e.payWay===e.PayWay.Stripe}),onClick:r[2]||(r[2]=g=>e.payWay=e.PayWay.Stripe)},[r[9]||(r[9]=c("span",{class:"payicon stripe"},null,-1)),c("span",We,l(e.$t("order.title.stripe")),1)],2))])):n("v-if",!0),(v=e.order)!=null&&v.pay_way?(o(),d("div",Se,[t(O,{type:"primary",round:"",size:"large",class:"btn-repay",onClick:e.onRepay},{default:a(()=>[$(l(e.$t("common.button.repay")),1)]),_:1},8,["onClick"])])):(o(),d("div",Ve,[t(O,{loading:e.prepaying,round:"",type:"primary",size:"large",class:"btn-pay",onClick:e.onPay},{default:a(()=>[$(l(e.$t("common.button.pay")),1)]),_:1},8,["loading","onClick"])]))]}),_:1})]),_:1})):n("v-if",!0)]}),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e.order&&e.payWay===e.PayWay.WechatPay?(o(),u(G,{key:0,modelValue:e.order,"onUpdate:modelValue":r[3]||(r[3]=h=>e.order=h),visible:e.paying,onHide:r[4]||(r[4]=h=>e.paying=!1)},null,8,["modelValue","visible"])):n("v-if",!0),e.order&&e.payWay===e.PayWay.Stripe?(o(),u(J,{key:1,modelValue:e.order,"onUpdate:modelValue":r[5]||(r[5]=h=>e.order=h),visible:e.paying,onHide:r[6]||(r[6]=h=>e.paying=!1)},null,8,["modelValue","visible"])):n("v-if",!0)],64)}var ze=S(fe,[["render",Ce],["__scopeId","data-v-2d1dc98e"],["__file","/home/runner/work/Nexior/Nexior/src/pages/console/order/Detail.vue"]]);export{ze as default};
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{E as C,t as U,u as $,k as V,w as E,x as B,y,b as T}from"./vendor-element-plus.b61d898b.js";import{_ as k,A}from"./index.fe7d50bd.js";import{H as b,al as i,o as m,e as g,V as n,M as o,f as s,S as a,T as r,U as h,ai as L,L as v,as as M}from"./vendor-@vue.30126b18.js";import{ar as z}from"./vendor-fortawesome.a228a0e7.js";const K=b({name:"EditText",components:{ElDialog:C,ElInput:U,ElButton:$,ElIcon:V,Edit:E},props:{modelValue:{type:String,required:!0},title:{type:String,required:!0},placeholder:{type:String,required:!0}},emits:["confirm","cancel"],data(){return{editing:!1,value:this.modelValue}},methods:{onCancel(){this.editing=!1},onConfirm(){this.$emit("confirm",this.value),this.editing=!1}}}),O={class:"dialog-footer"};function D(e,t,w,I,N,S){const c=i("el-input"),u=i("el-button"),p=i("el-dialog"),f=i("edit"),_=i("el-icon");return m(),g(h,null,[n(p,{modelValue:e.editing,"onUpdate:modelValue":t[1]||(t[1]=d=>e.editing=d),title:e.title,width:"400px"},{footer:o(()=>[s("span",O,[n(u,{round:"",onClick:e.onCancel},{default:o(()=>[a(r(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),n(u,{round:"",type:"primary",onClick:e.onConfirm},{default:o(()=>[a(r(e.$t("common.button.confirm")),1)]),_:1},8,["onClick"])])]),default:o(()=>[s("div",null,[n(c,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),placeholder:e.placeholder},null,8,["modelValue","placeholder"])])]),_:1},8,["modelValue","title"]),s("span",{class:"edit",onClick:t[2]||(t[2]=d=>e.editing=!0)},[n(_,{class:"icon"},{default:o(()=>[n(f)]),_:1})])],64)}var te=k(K,[["render",D],["__file","/home/runner/work/Nexior/Nexior/src/components/site/EditText.vue"]]);const F=b({name:"EditImage",components:{ElDialog:C,ElButton:$,FontAwesomeIcon:z,ElIcon:V,Edit:E,ElUpload:B},props:{modelValue:{type:String,required:!0},title:{type:String,required:!0},tip:{type:String,required:!0}},emits:["confirm","cancel"],data(){return{editing:!1,value:this.modelValue,fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>{var t;return(t=e==null?void 0:e.response)==null?void 0:t.file_url})}},methods:{onCancel(){this.editing=!1},onConfirm(){var e;this.$emit("confirm",(e=this.urls)==null?void 0:e[0]),this.editing=!1},onExceed(){y.warning(this.$t("site.message.uploadImageExceed"))},onError(){y.error(this.$t("site.message.uploadImageError"))}}}),J={class:"el-upload__tip"},H={class:"dialog-footer"};function P(e,t,w,I,N,S){const c=i("font-awesome-icon"),u=i("el-button"),p=i("el-upload"),f=i("el-dialog"),_=i("edit"),d=i("el-icon");return m(),g(h,null,[n(f,{modelValue:e.editing,"onUpdate:modelValue":t[1]||(t[1]=l=>e.editing=l),title:e.title,width:"400px"},{footer:o(()=>[s("span",H,[n(u,{round:"",onClick:e.onCancel},{default:o(()=>[a(r(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),n(u,{round:"",type:"primary",onClick:e.onConfirm},{default:o(()=>[a(r(e.$t("common.button.confirm")),1)]),_:1},8,["onClick"])])]),default:o(()=>[s("div",null,[n(p,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=l=>e.fileList=l),name:"file",limit:5,multiple:!0,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,headers:e.headers},{tip:o(()=>[s("div",J,r(e.tip),1)]),default:o(()=>[n(u,{round:"",type:"primary",class:"btn btn-upload"},{default:o(()=>[n(c,{icon:"fa-solid fa-upload",class:"icon mr-2"}),a(" "+r(e.$t("site.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])]),_:1},8,["modelValue","title"]),s("span",{class:"edit",onClick:t[2]||(t[2]=l=>e.editing=!0)},[n(d,{class:"icon"},{default:o(()=>[n(_)]),_:1})])],64)}var oe=k(F,[["render",P],["__file","/home/runner/work/Nexior/Nexior/src/components/site/EditImage.vue"]]);const j=b({name:"EditText",components:{ElDialog:C,ElInput:U,ElButton:$,ElIcon:V,ElTag:T,Edit:E},props:{modelValue:{type:Array,required:!0},title:{type:String,required:!0},placeholder:{type:String,required:!0},tip:{type:String,default:void 0},min:{type:Number,default:void 0},minErrorMessage:{type:String,default:void 0}},emits:["confirm","cancel"],data(){return{inputVisible:!1,inputValue:"",editing:!1,value:JSON.parse(JSON.stringify(this.modelValue))}},methods:{onCancel(){this.editing=!1},onConfirm(){if(this.min!==void 0&&this.value.length<this.min){y.error(this.minErrorMessage);return}this.$emit("confirm",this.value),this.editing=!1},onClose(e){this.value.splice(this.value.indexOf(e),1)},onInputConfirm(){const e=this.inputValue;e&&this.value.push(e),this.inputVisible=!1,this.inputValue=""},onNewItem(){this.inputVisible=!0,this.$nextTick(()=>{this.$refs.input.focus()})}}}),G={class:"block tip"},Q={class:"dialog-footer"};function R(e,t,w,I,N,S){const c=i("el-tag"),u=i("el-input"),p=i("el-button"),f=i("el-dialog"),_=i("edit"),d=i("el-icon");return m(),g(h,null,[n(f,{modelValue:e.editing,"onUpdate:modelValue":t[1]||(t[1]=l=>e.editing=l),title:e.title,width:"400px"},{footer:o(()=>[s("span",Q,[n(p,{round:"",onClick:e.onCancel},{default:o(()=>[a(r(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),n(p,{round:"",type:"primary",onClick:e.onConfirm},{default:o(()=>[a(r(e.$t("common.button.confirm")),1)]),_:1},8,["onClick"])])]),default:o(()=>[(m(!0),g(h,null,L(e.value,(l,q)=>(m(),v(c,{key:q,closable:"",round:"",class:"mr-2 mb-2","disable-transitions":!1,onClose:W=>e.onClose(l)},{default:o(()=>[a(r(l),1)]),_:2},1032,["onClose"]))),128)),e.inputVisible?(m(),v(u,{key:0,ref:"input",modelValue:e.inputValue,"onUpdate:modelValue":t[0]||(t[0]=l=>e.inputValue=l),class:"block",size:"small",onKeyup:M(e.onInputConfirm,["enter"]),onBlur:e.onInputConfirm},null,8,["modelValue","onKeyup","onBlur"])):(m(),v(p,{key:1,round:"",class:"block",size:"small",onClick:e.onNewItem},{default:o(()=>t[3]||(t[3]=[a(" + ")])),_:1,__:[3]},8,["onClick"])),s("span",G,r(e.tip),1)]),_:1},8,["modelValue","title"]),s("span",{class:"edit",onClick:t[2]||(t[2]=l=>e.editing=!0)},[n(d,{class:"icon"},{default:o(()=>[n(_)]),_:1})])],64)}var ne=k(j,[["render",R],["__file","/home/runner/work/Nexior/Nexior/src/components/site/EditArray.vue"]]);export{te as E,oe as a,ne as b};
1
+ import"./vendor-others.32a9cc65.js";import{E as C,t as U,u as $,k as V,w as E,x as B,y,b as T}from"./vendor-element-plus.b61d898b.js";import{_ as k,A}from"./index.66e73c9d.js";import{H as b,al as i,o as m,e as g,V as n,M as o,f as s,S as a,T as r,U as h,ai as L,L as v,as as M}from"./vendor-@vue.30126b18.js";import{ar as z}from"./vendor-fortawesome.a228a0e7.js";const K=b({name:"EditText",components:{ElDialog:C,ElInput:U,ElButton:$,ElIcon:V,Edit:E},props:{modelValue:{type:String,required:!0},title:{type:String,required:!0},placeholder:{type:String,required:!0}},emits:["confirm","cancel"],data(){return{editing:!1,value:this.modelValue}},methods:{onCancel(){this.editing=!1},onConfirm(){this.$emit("confirm",this.value),this.editing=!1}}}),O={class:"dialog-footer"};function D(e,t,w,I,N,S){const c=i("el-input"),u=i("el-button"),p=i("el-dialog"),f=i("edit"),_=i("el-icon");return m(),g(h,null,[n(p,{modelValue:e.editing,"onUpdate:modelValue":t[1]||(t[1]=d=>e.editing=d),title:e.title,width:"400px"},{footer:o(()=>[s("span",O,[n(u,{round:"",onClick:e.onCancel},{default:o(()=>[a(r(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),n(u,{round:"",type:"primary",onClick:e.onConfirm},{default:o(()=>[a(r(e.$t("common.button.confirm")),1)]),_:1},8,["onClick"])])]),default:o(()=>[s("div",null,[n(c,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=d=>e.value=d),placeholder:e.placeholder},null,8,["modelValue","placeholder"])])]),_:1},8,["modelValue","title"]),s("span",{class:"edit",onClick:t[2]||(t[2]=d=>e.editing=!0)},[n(_,{class:"icon"},{default:o(()=>[n(f)]),_:1})])],64)}var te=k(K,[["render",D],["__file","/home/runner/work/Nexior/Nexior/src/components/site/EditText.vue"]]);const F=b({name:"EditImage",components:{ElDialog:C,ElButton:$,FontAwesomeIcon:z,ElIcon:V,Edit:E,ElUpload:B},props:{modelValue:{type:String,required:!0},title:{type:String,required:!0},tip:{type:String,required:!0}},emits:["confirm","cancel"],data(){return{editing:!1,value:this.modelValue,fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>{var t;return(t=e==null?void 0:e.response)==null?void 0:t.file_url})}},methods:{onCancel(){this.editing=!1},onConfirm(){var e;this.$emit("confirm",(e=this.urls)==null?void 0:e[0]),this.editing=!1},onExceed(){y.warning(this.$t("site.message.uploadImageExceed"))},onError(){y.error(this.$t("site.message.uploadImageError"))}}}),J={class:"el-upload__tip"},H={class:"dialog-footer"};function P(e,t,w,I,N,S){const c=i("font-awesome-icon"),u=i("el-button"),p=i("el-upload"),f=i("el-dialog"),_=i("edit"),d=i("el-icon");return m(),g(h,null,[n(f,{modelValue:e.editing,"onUpdate:modelValue":t[1]||(t[1]=l=>e.editing=l),title:e.title,width:"400px"},{footer:o(()=>[s("span",H,[n(u,{round:"",onClick:e.onCancel},{default:o(()=>[a(r(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),n(u,{round:"",type:"primary",onClick:e.onConfirm},{default:o(()=>[a(r(e.$t("common.button.confirm")),1)]),_:1},8,["onClick"])])]),default:o(()=>[s("div",null,[n(p,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=l=>e.fileList=l),name:"file",limit:5,multiple:!0,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,headers:e.headers},{tip:o(()=>[s("div",J,r(e.tip),1)]),default:o(()=>[n(u,{round:"",type:"primary",class:"btn btn-upload"},{default:o(()=>[n(c,{icon:"fa-solid fa-upload",class:"icon mr-2"}),a(" "+r(e.$t("site.button.upload")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","headers"])])]),_:1},8,["modelValue","title"]),s("span",{class:"edit",onClick:t[2]||(t[2]=l=>e.editing=!0)},[n(d,{class:"icon"},{default:o(()=>[n(_)]),_:1})])],64)}var oe=k(F,[["render",P],["__file","/home/runner/work/Nexior/Nexior/src/components/site/EditImage.vue"]]);const j=b({name:"EditText",components:{ElDialog:C,ElInput:U,ElButton:$,ElIcon:V,ElTag:T,Edit:E},props:{modelValue:{type:Array,required:!0},title:{type:String,required:!0},placeholder:{type:String,required:!0},tip:{type:String,default:void 0},min:{type:Number,default:void 0},minErrorMessage:{type:String,default:void 0}},emits:["confirm","cancel"],data(){return{inputVisible:!1,inputValue:"",editing:!1,value:JSON.parse(JSON.stringify(this.modelValue))}},methods:{onCancel(){this.editing=!1},onConfirm(){if(this.min!==void 0&&this.value.length<this.min){y.error(this.minErrorMessage);return}this.$emit("confirm",this.value),this.editing=!1},onClose(e){this.value.splice(this.value.indexOf(e),1)},onInputConfirm(){const e=this.inputValue;e&&this.value.push(e),this.inputVisible=!1,this.inputValue=""},onNewItem(){this.inputVisible=!0,this.$nextTick(()=>{this.$refs.input.focus()})}}}),G={class:"block tip"},Q={class:"dialog-footer"};function R(e,t,w,I,N,S){const c=i("el-tag"),u=i("el-input"),p=i("el-button"),f=i("el-dialog"),_=i("edit"),d=i("el-icon");return m(),g(h,null,[n(f,{modelValue:e.editing,"onUpdate:modelValue":t[1]||(t[1]=l=>e.editing=l),title:e.title,width:"400px"},{footer:o(()=>[s("span",Q,[n(p,{round:"",onClick:e.onCancel},{default:o(()=>[a(r(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),n(p,{round:"",type:"primary",onClick:e.onConfirm},{default:o(()=>[a(r(e.$t("common.button.confirm")),1)]),_:1},8,["onClick"])])]),default:o(()=>[(m(!0),g(h,null,L(e.value,(l,q)=>(m(),v(c,{key:q,closable:"",round:"",class:"mr-2 mb-2","disable-transitions":!1,onClose:W=>e.onClose(l)},{default:o(()=>[a(r(l),1)]),_:2},1032,["onClose"]))),128)),e.inputVisible?(m(),v(u,{key:0,ref:"input",modelValue:e.inputValue,"onUpdate:modelValue":t[0]||(t[0]=l=>e.inputValue=l),class:"block",size:"small",onKeyup:M(e.onInputConfirm,["enter"]),onBlur:e.onInputConfirm},null,8,["modelValue","onKeyup","onBlur"])):(m(),v(p,{key:1,round:"",class:"block",size:"small",onClick:e.onNewItem},{default:o(()=>t[3]||(t[3]=[a(" + ")])),_:1,__:[3]},8,["onClick"])),s("span",G,r(e.tip),1)]),_:1},8,["modelValue","title"]),s("span",{class:"edit",onClick:t[2]||(t[2]=l=>e.editing=!0)},[n(d,{class:"icon"},{default:o(()=>[n(_)]),_:1})])],64)}var ne=k(j,[["render",R],["__file","/home/runner/work/Nexior/Nexior/src/components/site/EditArray.vue"]]);export{te as E,oe as a,ne as b};
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{I as G}from"./api.f60246f3.js";import{_ as V,E as W,F as Q,G as X}from"./index.fe7d50bd.js";import{g as A}from"./price.b6c86059.js";import{H as R,o as t,e as l,T as s,U as B,ai as F,S as y,R as f,al as d,L as $,M as i,V as n,f as T,O as j,P as J,W as H}from"./vendor-@vue.30126b18.js";import{o as Y}from"./order.7d8c923b.js";import{H as Z,A as x,B as ee,F as ae,n as te,o as ie,u as se,l as re,L as ne,M as oe,y as le}from"./vendor-element-plus.b61d898b.js";import"./vendor-markdown.64d20655.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-fortawesome.a228a0e7.js";const ce=R({name:"ApiPrice",props:{price:{type:Number,required:!1,default:0},unit:{type:String,required:!1,default:void 0},start:{type:Boolean,required:!1,default:!1}},methods:{getPriceString:A}}),pe={class:"price-text"},ue={key:0,class:"unfree"},de={key:1,class:"free"};function fe(e,a,p,_,b,E){return t(),l("div",pe,[e.price>0?(t(),l("span",ue,s(e.getPriceString({value:e.price}))+" "+s(e.unit?` / ${e.unit}`:"")+s(e.start?e.$t("common.message.startPrice"):""),1)):(t(),l("span",de,s(e.$t("common.message.free")),1))])}var he=V(ce,[["render",fe],["__scopeId","data-v-d195ccd6"],["__file","/home/runner/work/Nexior/Nexior/src/components/common/Price.vue"]]);const me=R({name:"ServiceEstimation",components:{},props:{service:{type:Object,required:!0},package:{type:Object,required:!0}},methods:{getPriceString:A}}),_e={class:"estimation"},ge={key:0,class:"item"},ve={key:0},ke={key:1},$e={key:2},ye={key:0},be={key:1};function Ee(e,a,p,_,b,E){var h;return t(),l("div",_e,[(t(!0),l(B,null,F((h=e.service)==null?void 0:h.apis,(u,v)=>(t(),l("div",{key:v},[(t(!0),l(B,null,F(u==null?void 0:u.estimation,(c,S)=>{var g,P;return t(),l("div",{key:S,class:"items"},[((g=e.package)==null?void 0:g.amount)&&(c==null?void 0:c.cost)?(t(),l("p",ge,[y(" \u2248 "+s(c.name)+" "+s(Math.round(e.package.amount/c.cost))+" "+s(e.$t("api.unit.count"))+" ",1),e.package.price>0?(t(),l("span",ve," - "+s(e.getPriceString({value:e.package.price/(e.package.amount/c.cost),fractionDigits:3})+" / "+e.$t("api.unit.count")),1)):f("v-if",!0),c.remark?(t(),l("span",ke," ("+s(c.remark)+") ",1)):f("v-if",!0),((P=c==null?void 0:c.comparisons)==null?void 0:P.length)>0?(t(),l("span",$e," - ")):f("v-if",!0),(t(!0),l(B,null,F(c==null?void 0:c.comparisons,(o,O)=>{var C,N;return t(),l("span",{key:O,class:"comparison"},[(o==null?void 0:o.value)<0?(t(),l("i",ye,s(e.$t("api.message.cheaperThan").replace("$[[value]]",(C=o==null?void 0:o.target)==null?void 0:C.toString()))+" "+s(Math.abs(o==null?void 0:o.value)*100)+"% ",1)):f("v-if",!0),(o==null?void 0:o.value)>0?(t(),l("i",be,s(e.$t("api.message.moreExpensiveThan").replace("$[[value]]",(N=o==null?void 0:o.target)==null?void 0:N.toString()))+" "+s(Math.abs(o==null?void 0:o.value)*100)+"% ",1)):f("v-if",!0)])}),128))])):f("v-if",!0)])}),128))]))),128))])}var Se=V(me,[["render",Ee],["__scopeId","data-v-10c89755"],["__file","/home/runner/work/Nexior/Nexior/src/components/service/Estimation.vue"]]);const Ce=R({name:"ConsoleApplicationBuy",components:{ElSkeleton:Z,ElRow:x,ElCol:ee,ElCard:ae,ElForm:te,ElFormItem:ie,ElButton:se,ElDivider:re,ElRadioGroup:ne,ElRadioButton:oe,Price:he,ServiceEstimation:Se},data(){return{lang:this.$i18n.locale,application:void 0,loading:!1,type:G.USAGE,form:{packageId:void 0,amount:void 0},creating:!1}},computed:{applicationId(){var e,a;return(a=(e=this.$route.params)==null?void 0:e.id)==null?void 0:a.toString()},id(){var e,a;return(a=(e=this.$route.params)==null?void 0:e.id)==null?void 0:a.toString()},price(){var e,a,p;return((a=(e=this.application)==null?void 0:e.service)==null?void 0:a.price)&&this.form.amount?this.form.amount*((p=this.application.service)==null?void 0:p.price):0},packages(){var e,a,p;return(p=(a=(e=this.application)==null?void 0:e.service)==null?void 0:a.packages)==null?void 0:p.filter(_=>_.type===G.USAGE)},package(){if(this.packages&&this.form.packageId){const e=this.packages.filter(a=>a.id===this.form.packageId);if(e.length>0)return e[0]}}},mounted(){this.onFetchApplication()},methods:{getDiscount(e){var a,p,_;return this.packages&&this.packages.length>0?(a=this.lang)!=null&&a.startsWith("zh")?(10*(e==null?void 0:e.price)/(e==null?void 0:e.amount)/(this.packages[0].price/((p=this.packages[0])==null?void 0:p.amount))).toFixed(1)+"\u6298":Math.round(100-100*(e==null?void 0:e.price)/(e==null?void 0:e.amount)/(this.packages[0].price/((_=this.packages[0])==null?void 0:_.amount)))+"% OFF":""},onSubscribe(){this.$router.push({name:W,params:this.$route.params})},getPriceString:A,onFetchApplication(){this.loading=!0,Q.get(this.id).then(({data:e})=>{var a,p;this.application=e,this.loading=!1,this.form.packageId=(p=(a=this.packages)==null?void 0:a[0])==null?void 0:p.id}).catch(()=>{this.loading=!1})},onChangeType(){this.$router.push({name:W,params:this.$route.params})},onCreateOrder(){var a,p,_,b,E,h,u,v;if(!((a=this.application)!=null&&a.id))return;this.creating=!0;const e=this.$t(`service.unit.${(_=(p=this.application)==null?void 0:p.service)==null?void 0:_.unit}s`);Y.create({application_id:(b=this.application)==null?void 0:b.id,amount:(E=this.package)==null?void 0:E.amount,...this.form.packageId!=="custom"&&this.package?{package_id:this.package.id}:{},description:`${(u=(h=this.application)==null?void 0:h.service)==null?void 0:u.title} x ${(v=this.package)==null?void 0:v.amount} ${e}`}).then(({data:c})=>{this.creating=!1;const S=c;this.$router.push({name:X,params:{id:S.id}})}).catch(()=>{le.error(this.$t("order.message.createFailed")),this.creating=!1})}}}),Ie={class:"title"},Pe={key:0,class:"ml-2"},Oe={key:1,class:J({price:!0,free:!0})};function Ne(e,a,p,_,b,E){const h=d("el-col"),u=d("el-row"),v=d("el-radio-button"),c=d("el-radio-group"),S=d("el-skeleton"),g=d("el-form-item"),P=d("service-estimation"),o=d("price"),O=d("el-divider"),C=d("el-button"),N=d("el-form"),K=d("el-card");return t(),$(u,{class:"panel"},{default:i(()=>[n(h,{span:24},{default:i(()=>[n(u,null,{default:i(()=>[n(h,{span:24},{default:i(()=>[T("h2",Ie,s(e.$t("common.title.buyMore")),1)]),_:1})]),_:1}),n(u,null,{default:i(()=>[n(h,{span:24},{default:i(()=>[n(K,{shadow:"hover"},{default:i(()=>[j(n(u,null,{default:i(()=>[n(h,{class:"text-center"},{default:i(()=>[e.applicationId?(t(),$(c,{key:0,modelValue:e.type,"onUpdate:modelValue":a[0]||(a[0]=w=>e.type=w),size:"large",class:"mb-4",onChange:e.onChangeType},{default:i(()=>[n(v,{label:"Period"},{default:i(()=>[y(s(e.$t("application.type.period")),1)]),_:1}),n(v,{label:"Usage"},{default:i(()=>[y(s(e.$t("application.type.usage")),1)]),_:1})]),_:1},8,["modelValue","onChange"])):f("v-if",!0)]),_:1})]),_:1},512),[[H,!1]]),n(u,null,{default:i(()=>[n(h,{span:16,offset:4},{default:i(()=>[e.loading?(t(),$(S,{key:0})):e.application?(t(),$(N,{key:1,"label-width":"100px"},{default:i(()=>{var w,U,D,M,L,q;return[n(g,{label:e.$t("application.field.service")},{default:i(()=>{var r,m;return[y(s((m=(r=e.application)==null?void 0:r.service)==null?void 0:m.title),1)]}),_:1},8,["label"]),n(g,{label:e.$t("application.field.package"),class:"mb-0"},{default:i(()=>[e.packages?(t(),$(c,{key:0,modelValue:e.form.packageId,"onUpdate:modelValue":a[1]||(a[1]=r=>e.form.packageId=r)},{default:i(()=>[(t(!0),l(B,null,F(e.packages,(r,m)=>(t(),$(v,{key:m,label:r.id,class:"mb-2"},{default:i(()=>{var k,I;return[j(T("span",{class:"corner"},s(e.getDiscount(r)),513),[[H,m!==0]]),y(" "+s(r.amount)+" "+s(e.$t(`service.unit.${(I=(k=e.application)==null?void 0:k.service)==null?void 0:I.unit}s`)),1)]}),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])):f("v-if",!0)]),_:1},8,["label"]),((U=(w=e.application)==null?void 0:w.service)==null?void 0:U.apis)&&((q=(L=(M=(D=e.application)==null?void 0:D.service)==null?void 0:M.apis)==null?void 0:L.map(r=>r==null?void 0:r.estimation).filter(r=>!!r))==null?void 0:q.length)>0?(t(),$(g,{key:0},{default:i(()=>{var r;return[(r=e.application)!=null&&r.service?(t(),$(P,{key:0,service:e.application.service,package:e.package},null,8,["service","package"])):f("v-if",!0)]}),_:1})):f("v-if",!0),n(g,{label:e.$t("service.field.price")},{default:i(()=>{var r,m,k,I,z;return[n(o,{price:(r=e.package)==null?void 0:r.price},null,8,["price"]),e.package?(t(),l("span",Pe,"("+s(e.getPriceString({value:((m=e.package)==null?void 0:m.price)/((k=e.package)==null?void 0:k.amount)})+" / "+e.$t(`service.unit.${(z=(I=e.application)==null?void 0:I.service)==null?void 0:z.unit}`))+") ",1)):f("v-if",!0)]}),_:1},8,["label"]),n(O,{"border-style":"dashed"}),n(g,{label:e.$t("application.field.shouldPayPrice")},{default:i(()=>{var r,m,k;return[e.package?(t(),l("span",{key:0,class:J({price:!0,unfree:((r=e.package)==null?void 0:r.price)>0,free:((m=e.package)==null?void 0:m.price)===0})},s(e.getPriceString({value:(k=e.package)==null?void 0:k.price})),3)):(t(),l("span",Oe," $ 0 "))]}),_:1},8,["label"]),n(g,null,{default:i(()=>[n(C,{type:"primary",size:"large",class:"btn-create",loading:e.creating,round:"",onClick:e.onCreateOrder},{default:i(()=>[y(s(e.$t("application.button.createOrder")),1)]),_:1},8,["loading","onClick"])]),_:1}),n(O,{"border-style":"dashed"}),n(g,{label:""},{default:i(()=>[T("span",null,s(e.$t("console.message.doNotWantExtra")),1),n(C,{type:"primary",class:"btn btn-subscribe",round:"",size:"small",onClick:e.onSubscribe},{default:i(()=>[y(s(e.$t("console.message.subscribe")),1)]),_:1},8,["onClick"])]),_:1})]}),_:1})):f("v-if",!0)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}var qe=V(Ce,[["render",Ne],["__scopeId","data-v-3eeec565"],["__file","/home/runner/work/Nexior/Nexior/src/pages/console/application/Extra.vue"]]);export{qe as default};
1
+ import"./vendor-others.32a9cc65.js";import{I as G}from"./api.f60246f3.js";import{_ as V,E as W,F as Q,G as X}from"./index.66e73c9d.js";import{g as A}from"./price.b517b0e3.js";import{H as R,o as t,e as l,T as s,U as B,ai as F,S as y,R as f,al as d,L as $,M as i,V as n,f as T,O as j,P as J,W as H}from"./vendor-@vue.30126b18.js";import{o as Y}from"./order.8ba2e7e4.js";import{H as Z,A as x,B as ee,F as ae,n as te,o as ie,u as se,l as re,L as ne,M as oe,y as le}from"./vendor-element-plus.b61d898b.js";import"./vendor-markdown.64d20655.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";import"./vendor-fortawesome.a228a0e7.js";const ce=R({name:"ApiPrice",props:{price:{type:Number,required:!1,default:0},unit:{type:String,required:!1,default:void 0},start:{type:Boolean,required:!1,default:!1}},methods:{getPriceString:A}}),pe={class:"price-text"},ue={key:0,class:"unfree"},de={key:1,class:"free"};function fe(e,a,p,_,b,E){return t(),l("div",pe,[e.price>0?(t(),l("span",ue,s(e.getPriceString({value:e.price}))+" "+s(e.unit?` / ${e.unit}`:"")+s(e.start?e.$t("common.message.startPrice"):""),1)):(t(),l("span",de,s(e.$t("common.message.free")),1))])}var he=V(ce,[["render",fe],["__scopeId","data-v-d195ccd6"],["__file","/home/runner/work/Nexior/Nexior/src/components/common/Price.vue"]]);const me=R({name:"ServiceEstimation",components:{},props:{service:{type:Object,required:!0},package:{type:Object,required:!0}},methods:{getPriceString:A}}),_e={class:"estimation"},ge={key:0,class:"item"},ve={key:0},ke={key:1},$e={key:2},ye={key:0},be={key:1};function Ee(e,a,p,_,b,E){var h;return t(),l("div",_e,[(t(!0),l(B,null,F((h=e.service)==null?void 0:h.apis,(u,v)=>(t(),l("div",{key:v},[(t(!0),l(B,null,F(u==null?void 0:u.estimation,(c,S)=>{var g,P;return t(),l("div",{key:S,class:"items"},[((g=e.package)==null?void 0:g.amount)&&(c==null?void 0:c.cost)?(t(),l("p",ge,[y(" \u2248 "+s(c.name)+" "+s(Math.round(e.package.amount/c.cost))+" "+s(e.$t("api.unit.count"))+" ",1),e.package.price>0?(t(),l("span",ve," - "+s(e.getPriceString({value:e.package.price/(e.package.amount/c.cost),fractionDigits:3})+" / "+e.$t("api.unit.count")),1)):f("v-if",!0),c.remark?(t(),l("span",ke," ("+s(c.remark)+") ",1)):f("v-if",!0),((P=c==null?void 0:c.comparisons)==null?void 0:P.length)>0?(t(),l("span",$e," - ")):f("v-if",!0),(t(!0),l(B,null,F(c==null?void 0:c.comparisons,(o,O)=>{var C,N;return t(),l("span",{key:O,class:"comparison"},[(o==null?void 0:o.value)<0?(t(),l("i",ye,s(e.$t("api.message.cheaperThan").replace("$[[value]]",(C=o==null?void 0:o.target)==null?void 0:C.toString()))+" "+s(Math.abs(o==null?void 0:o.value)*100)+"% ",1)):f("v-if",!0),(o==null?void 0:o.value)>0?(t(),l("i",be,s(e.$t("api.message.moreExpensiveThan").replace("$[[value]]",(N=o==null?void 0:o.target)==null?void 0:N.toString()))+" "+s(Math.abs(o==null?void 0:o.value)*100)+"% ",1)):f("v-if",!0)])}),128))])):f("v-if",!0)])}),128))]))),128))])}var Se=V(me,[["render",Ee],["__scopeId","data-v-10c89755"],["__file","/home/runner/work/Nexior/Nexior/src/components/service/Estimation.vue"]]);const Ce=R({name:"ConsoleApplicationBuy",components:{ElSkeleton:Z,ElRow:x,ElCol:ee,ElCard:ae,ElForm:te,ElFormItem:ie,ElButton:se,ElDivider:re,ElRadioGroup:ne,ElRadioButton:oe,Price:he,ServiceEstimation:Se},data(){return{lang:this.$i18n.locale,application:void 0,loading:!1,type:G.USAGE,form:{packageId:void 0,amount:void 0},creating:!1}},computed:{applicationId(){var e,a;return(a=(e=this.$route.params)==null?void 0:e.id)==null?void 0:a.toString()},id(){var e,a;return(a=(e=this.$route.params)==null?void 0:e.id)==null?void 0:a.toString()},price(){var e,a,p;return((a=(e=this.application)==null?void 0:e.service)==null?void 0:a.price)&&this.form.amount?this.form.amount*((p=this.application.service)==null?void 0:p.price):0},packages(){var e,a,p;return(p=(a=(e=this.application)==null?void 0:e.service)==null?void 0:a.packages)==null?void 0:p.filter(_=>_.type===G.USAGE)},package(){if(this.packages&&this.form.packageId){const e=this.packages.filter(a=>a.id===this.form.packageId);if(e.length>0)return e[0]}}},mounted(){this.onFetchApplication()},methods:{getDiscount(e){var a,p,_;return this.packages&&this.packages.length>0?(a=this.lang)!=null&&a.startsWith("zh")?(10*(e==null?void 0:e.price)/(e==null?void 0:e.amount)/(this.packages[0].price/((p=this.packages[0])==null?void 0:p.amount))).toFixed(1)+"\u6298":Math.round(100-100*(e==null?void 0:e.price)/(e==null?void 0:e.amount)/(this.packages[0].price/((_=this.packages[0])==null?void 0:_.amount)))+"% OFF":""},onSubscribe(){this.$router.push({name:W,params:this.$route.params})},getPriceString:A,onFetchApplication(){this.loading=!0,Q.get(this.id).then(({data:e})=>{var a,p;this.application=e,this.loading=!1,this.form.packageId=(p=(a=this.packages)==null?void 0:a[0])==null?void 0:p.id}).catch(()=>{this.loading=!1})},onChangeType(){this.$router.push({name:W,params:this.$route.params})},onCreateOrder(){var a,p,_,b,E,h,u,v;if(!((a=this.application)!=null&&a.id))return;this.creating=!0;const e=this.$t(`service.unit.${(_=(p=this.application)==null?void 0:p.service)==null?void 0:_.unit}s`);Y.create({application_id:(b=this.application)==null?void 0:b.id,amount:(E=this.package)==null?void 0:E.amount,...this.form.packageId!=="custom"&&this.package?{package_id:this.package.id}:{},description:`${(u=(h=this.application)==null?void 0:h.service)==null?void 0:u.title} x ${(v=this.package)==null?void 0:v.amount} ${e}`}).then(({data:c})=>{this.creating=!1;const S=c;this.$router.push({name:X,params:{id:S.id}})}).catch(()=>{le.error(this.$t("order.message.createFailed")),this.creating=!1})}}}),Ie={class:"title"},Pe={key:0,class:"ml-2"},Oe={key:1,class:J({price:!0,free:!0})};function Ne(e,a,p,_,b,E){const h=d("el-col"),u=d("el-row"),v=d("el-radio-button"),c=d("el-radio-group"),S=d("el-skeleton"),g=d("el-form-item"),P=d("service-estimation"),o=d("price"),O=d("el-divider"),C=d("el-button"),N=d("el-form"),K=d("el-card");return t(),$(u,{class:"panel"},{default:i(()=>[n(h,{span:24},{default:i(()=>[n(u,null,{default:i(()=>[n(h,{span:24},{default:i(()=>[T("h2",Ie,s(e.$t("common.title.buyMore")),1)]),_:1})]),_:1}),n(u,null,{default:i(()=>[n(h,{span:24},{default:i(()=>[n(K,{shadow:"hover"},{default:i(()=>[j(n(u,null,{default:i(()=>[n(h,{class:"text-center"},{default:i(()=>[e.applicationId?(t(),$(c,{key:0,modelValue:e.type,"onUpdate:modelValue":a[0]||(a[0]=w=>e.type=w),size:"large",class:"mb-4",onChange:e.onChangeType},{default:i(()=>[n(v,{label:"Period"},{default:i(()=>[y(s(e.$t("application.type.period")),1)]),_:1}),n(v,{label:"Usage"},{default:i(()=>[y(s(e.$t("application.type.usage")),1)]),_:1})]),_:1},8,["modelValue","onChange"])):f("v-if",!0)]),_:1})]),_:1},512),[[H,!1]]),n(u,null,{default:i(()=>[n(h,{span:16,offset:4},{default:i(()=>[e.loading?(t(),$(S,{key:0})):e.application?(t(),$(N,{key:1,"label-width":"100px"},{default:i(()=>{var w,U,D,M,L,q;return[n(g,{label:e.$t("application.field.service")},{default:i(()=>{var r,m;return[y(s((m=(r=e.application)==null?void 0:r.service)==null?void 0:m.title),1)]}),_:1},8,["label"]),n(g,{label:e.$t("application.field.package"),class:"mb-0"},{default:i(()=>[e.packages?(t(),$(c,{key:0,modelValue:e.form.packageId,"onUpdate:modelValue":a[1]||(a[1]=r=>e.form.packageId=r)},{default:i(()=>[(t(!0),l(B,null,F(e.packages,(r,m)=>(t(),$(v,{key:m,label:r.id,class:"mb-2"},{default:i(()=>{var k,I;return[j(T("span",{class:"corner"},s(e.getDiscount(r)),513),[[H,m!==0]]),y(" "+s(r.amount)+" "+s(e.$t(`service.unit.${(I=(k=e.application)==null?void 0:k.service)==null?void 0:I.unit}s`)),1)]}),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])):f("v-if",!0)]),_:1},8,["label"]),((U=(w=e.application)==null?void 0:w.service)==null?void 0:U.apis)&&((q=(L=(M=(D=e.application)==null?void 0:D.service)==null?void 0:M.apis)==null?void 0:L.map(r=>r==null?void 0:r.estimation).filter(r=>!!r))==null?void 0:q.length)>0?(t(),$(g,{key:0},{default:i(()=>{var r;return[(r=e.application)!=null&&r.service?(t(),$(P,{key:0,service:e.application.service,package:e.package},null,8,["service","package"])):f("v-if",!0)]}),_:1})):f("v-if",!0),n(g,{label:e.$t("service.field.price")},{default:i(()=>{var r,m,k,I,z;return[n(o,{price:(r=e.package)==null?void 0:r.price},null,8,["price"]),e.package?(t(),l("span",Pe,"("+s(e.getPriceString({value:((m=e.package)==null?void 0:m.price)/((k=e.package)==null?void 0:k.amount)})+" / "+e.$t(`service.unit.${(z=(I=e.application)==null?void 0:I.service)==null?void 0:z.unit}`))+") ",1)):f("v-if",!0)]}),_:1},8,["label"]),n(O,{"border-style":"dashed"}),n(g,{label:e.$t("application.field.shouldPayPrice")},{default:i(()=>{var r,m,k;return[e.package?(t(),l("span",{key:0,class:J({price:!0,unfree:((r=e.package)==null?void 0:r.price)>0,free:((m=e.package)==null?void 0:m.price)===0})},s(e.getPriceString({value:(k=e.package)==null?void 0:k.price})),3)):(t(),l("span",Oe," $ 0 "))]}),_:1},8,["label"]),n(g,null,{default:i(()=>[n(C,{type:"primary",size:"large",class:"btn-create",loading:e.creating,round:"",onClick:e.onCreateOrder},{default:i(()=>[y(s(e.$t("application.button.createOrder")),1)]),_:1},8,["loading","onClick"])]),_:1}),n(O,{"border-style":"dashed"}),n(g,{label:""},{default:i(()=>[T("span",null,s(e.$t("console.message.doNotWantExtra")),1),n(C,{type:"primary",class:"btn btn-subscribe",round:"",size:"small",onClick:e.onSubscribe},{default:i(()=>[y(s(e.$t("console.message.subscribe")),1)]),_:1},8,["onClick"])]),_:1})]}),_:1})):f("v-if",!0)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}var qe=V(Ce,[["render",Ne],["__scopeId","data-v-3eeec565"],["__file","/home/runner/work/Nexior/Nexior/src/pages/console/application/Extra.vue"]]);export{qe as default};
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{P as w}from"./Pagination.67b908d1.js";import{C as y}from"./CopyToClipboard.2d947214.js";import{b as v}from"./distribution.0360ec9a.js";import{_ as $}from"./index.fe7d50bd.js";import{g as C}from"./price.b6c86059.js";import{A as H,B as D,C as P,D as S,F}from"./vendor-element-plus.b61d898b.js";import{H as k,al as s,av as E,L as _,M as o,o as m,V as e,f as a,T as n,O as B}from"./vendor-@vue.30126b18.js";import"./vendor-markdown.64d20655.js";import"./vendor-fortawesome.a228a0e7.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";const N=k({name:"ConsoleDistributionList",components:{Pagination:w,CopyToClipboard:y,ElRow:H,ElCol:D,ElTable:P,ElTableColumn:S,ElCard:F},data(){return{distributionHistories:[],distributionStatus:void 0,loading:!1,total:void 0,limit:10}},computed:{redirect(){return this.$route.query.redirect},page(){var t;return parseInt(((t=this.$route.query.page)==null?void 0:t.toString())||"1")}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData()},methods:{getPriceString:C,onPageChange(t){var p;this.$router.push({name:(p=this.$route.name)==null?void 0:p.toString(),query:{page:t}})},onFetchData(){this.loading=!0,Promise.all([this.onFetchDistributionHistory()]).finally(()=>{this.loading=!1})},async onFetchDistributionHistory(){const{data:t}=await v.getAll({user_id:this.$store.getters.user.id,ordering:"-created_at",limit:this.limit,offset:(this.page-1)*this.limit});this.distributionHistories=t.items,this.total=t.count}}}),T={class:"title"},q={class:"key"},A={class:"copy"},I={class:"key"},V={class:"copy"},z={class:"price"},L={class:"description"},O={class:"description"},j={class:"created-at"},M={class:"pagination m-v-lg"};function R(t,p,G,J,K,Q){const d=s("el-col"),c=s("el-row"),u=s("copy-to-clipboard"),r=s("el-table-column"),h=s("el-table"),f=s("el-card"),g=s("pagination"),b=E("loading");return m(),_(c,{class:"panel"},{default:o(()=>[e(d,{span:24},{default:o(()=>[e(c,null,{default:o(()=>[e(d,{span:24},{default:o(()=>[a("h2",T,n(t.$t("common.title.distributionHistory")),1)]),_:1})]),_:1}),e(c,null,{default:o(()=>[e(d,{span:24},{default:o(()=>[e(f,{shadow:"hover"},{default:o(()=>[B((m(),_(h,{data:t.distributionHistories,stripe:""},{default:o(()=>[e(r,{prop:"id",label:t.$t("distribution.field.id"),"class-name":"text-center",width:"350px"},{default:o(i=>[a("span",q,n(i.row.id),1),a("span",A,[e(u,{content:i.row.id},null,8,["content"])])]),_:1},8,["label"]),e(r,{prop:"id",label:t.$t("distribution.field.userId"),"class-name":"text-center",width:"350px"},{default:o(i=>[a("span",I,n(i.row.user_id),1),a("span",V,[e(u,{content:i.row.user_id},null,8,["content"])])]),_:1},8,["label"]),e(r,{label:t.$t("distribution.field.price"),width:"100px"},{default:o(i=>{var l;return[a("span",z,n(t.getPriceString({value:(l=i.row)==null?void 0:l.price})),1)]}),_:1},8,["label"]),e(r,{label:t.$t("distribution.field.reward"),width:"100px"},{default:o(i=>{var l;return[a("span",L,n(t.getPriceString({value:(l=i.row)==null?void 0:l.reward})),1)]}),_:1},8,["label"]),e(r,{label:t.$t("distribution.field.percentage"),width:"120px"},{default:o(i=>[a("span",O,n(i.row.percentage)+"%",1)]),_:1},8,["label"]),e(r,{label:t.$t("distribution.field.createdAt"),width:"200px"},{default:o(i=>[a("span",j,n(t.$dayjs.format(i.row.created_at)),1)]),_:1},8,["label"])]),_:1},8,["data"])),[[b,t.loading]])]),_:1})]),_:1})]),_:1}),e(c,null,{default:o(()=>[e(d,{span:10,offset:14},{default:o(()=>[a("div",M,[e(g,{"current-page":t.page,"page-size":t.limit,total:t.total,onChange:t.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}var nt=$(N,[["render",R],["__scopeId","data-v-63f0e9ed"],["__file","/home/runner/work/Nexior/Nexior/src/pages/distribution/History.vue"]]);export{nt as default};
1
+ import"./vendor-others.32a9cc65.js";import{P as w}from"./Pagination.f18f50ea.js";import{C as y}from"./CopyToClipboard.d3bd0d2e.js";import{b as v}from"./distribution.e98c1651.js";import{_ as $}from"./index.66e73c9d.js";import{g as C}from"./price.b517b0e3.js";import{A as H,B as D,C as P,D as S,F}from"./vendor-element-plus.b61d898b.js";import{H as k,al as s,av as E,L as _,M as o,o as m,V as e,f as a,T as n,O as B}from"./vendor-@vue.30126b18.js";import"./vendor-markdown.64d20655.js";import"./vendor-fortawesome.a228a0e7.js";import"./vendor-axios.168e6950.js";import"./vendor-qrcode.38ad4424.js";const N=k({name:"ConsoleDistributionList",components:{Pagination:w,CopyToClipboard:y,ElRow:H,ElCol:D,ElTable:P,ElTableColumn:S,ElCard:F},data(){return{distributionHistories:[],distributionStatus:void 0,loading:!1,total:void 0,limit:10}},computed:{redirect(){return this.$route.query.redirect},page(){var t;return parseInt(((t=this.$route.query.page)==null?void 0:t.toString())||"1")}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData()},methods:{getPriceString:C,onPageChange(t){var p;this.$router.push({name:(p=this.$route.name)==null?void 0:p.toString(),query:{page:t}})},onFetchData(){this.loading=!0,Promise.all([this.onFetchDistributionHistory()]).finally(()=>{this.loading=!1})},async onFetchDistributionHistory(){const{data:t}=await v.getAll({user_id:this.$store.getters.user.id,ordering:"-created_at",limit:this.limit,offset:(this.page-1)*this.limit});this.distributionHistories=t.items,this.total=t.count}}}),T={class:"title"},q={class:"key"},A={class:"copy"},I={class:"key"},V={class:"copy"},z={class:"price"},L={class:"description"},O={class:"description"},j={class:"created-at"},M={class:"pagination m-v-lg"};function R(t,p,G,J,K,Q){const d=s("el-col"),c=s("el-row"),u=s("copy-to-clipboard"),r=s("el-table-column"),h=s("el-table"),f=s("el-card"),g=s("pagination"),b=E("loading");return m(),_(c,{class:"panel"},{default:o(()=>[e(d,{span:24},{default:o(()=>[e(c,null,{default:o(()=>[e(d,{span:24},{default:o(()=>[a("h2",T,n(t.$t("common.title.distributionHistory")),1)]),_:1})]),_:1}),e(c,null,{default:o(()=>[e(d,{span:24},{default:o(()=>[e(f,{shadow:"hover"},{default:o(()=>[B((m(),_(h,{data:t.distributionHistories,stripe:""},{default:o(()=>[e(r,{prop:"id",label:t.$t("distribution.field.id"),"class-name":"text-center",width:"350px"},{default:o(i=>[a("span",q,n(i.row.id),1),a("span",A,[e(u,{content:i.row.id},null,8,["content"])])]),_:1},8,["label"]),e(r,{prop:"id",label:t.$t("distribution.field.userId"),"class-name":"text-center",width:"350px"},{default:o(i=>[a("span",I,n(i.row.user_id),1),a("span",V,[e(u,{content:i.row.user_id},null,8,["content"])])]),_:1},8,["label"]),e(r,{label:t.$t("distribution.field.price"),width:"100px"},{default:o(i=>{var l;return[a("span",z,n(t.getPriceString({value:(l=i.row)==null?void 0:l.price})),1)]}),_:1},8,["label"]),e(r,{label:t.$t("distribution.field.reward"),width:"100px"},{default:o(i=>{var l;return[a("span",L,n(t.getPriceString({value:(l=i.row)==null?void 0:l.reward})),1)]}),_:1},8,["label"]),e(r,{label:t.$t("distribution.field.percentage"),width:"120px"},{default:o(i=>[a("span",O,n(i.row.percentage)+"%",1)]),_:1},8,["label"]),e(r,{label:t.$t("distribution.field.createdAt"),width:"200px"},{default:o(i=>[a("span",j,n(t.$dayjs.format(i.row.created_at)),1)]),_:1},8,["label"])]),_:1},8,["data"])),[[b,t.loading]])]),_:1})]),_:1})]),_:1}),e(c,null,{default:o(()=>[e(d,{span:10,offset:14},{default:o(()=>[a("div",M,[e(g,{"current-page":t.page,"page-size":t.limit,total:t.total,onChange:t.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}var nt=$(N,[["render",R],["__scopeId","data-v-63f0e9ed"],["__file","/home/runner/work/Nexior/Nexior/src/pages/distribution/History.vue"]]);export{nt as default};
@@ -1 +1 @@
1
- import"./vendor-others.32a9cc65.js";import{ar as c}from"./vendor-fortawesome.a228a0e7.js";import{_ as m}from"./index.fe7d50bd.js";import{P as p}from"./vendor-element-plus.b61d898b.js";import{H as l,al as r,o as s,e as t,f as _,O as d,W as u,V as n,$ as f,R as v}from"./vendor-@vue.30126b18.js";const g=l({name:"ImagePreview",components:{FontAwesomeIcon:c,ElProgress:p},props:{url:{type:String,required:!0},name:{type:String,required:!0},percentage:{type:Number,required:!0},closable:{type:Boolean,required:!1,default:!0}},emits:["remove"]}),w={class:"image"},h=["src","alt"],y={key:0,class:"close"};function k(e,o,I,$,N,P){const a=r("el-progress"),i=r("font-awesome-icon");return s(),t("div",w,[_("img",{class:"size-10",src:e.url,alt:e.name},null,8,h),d(n(a,{type:"circle","stroke-width":3,percentage:e.percentage,width:30},null,8,["percentage"]),[[u,e.percentage&&e.percentage<100]]),e.closable?(s(),t("div",y,[n(i,{icon:"fa-solid fa-xmark",class:"icon icon-close",onClick:o[0]||(o[0]=f(q=>e.$emit("remove"),["stop"]))})])):v("v-if",!0)])}var E=m(g,[["render",k],["__scopeId","data-v-01c5f551"],["__file","/home/runner/work/Nexior/Nexior/src/components/common/ImagePreview.vue"]]);export{E as I};
1
+ import"./vendor-others.32a9cc65.js";import{ar as c}from"./vendor-fortawesome.a228a0e7.js";import{_ as m}from"./index.66e73c9d.js";import{P as p}from"./vendor-element-plus.b61d898b.js";import{H as l,al as r,o as s,e as t,f as _,O as d,W as u,V as n,$ as f,R as v}from"./vendor-@vue.30126b18.js";const g=l({name:"ImagePreview",components:{FontAwesomeIcon:c,ElProgress:p},props:{url:{type:String,required:!0},name:{type:String,required:!0},percentage:{type:Number,required:!0},closable:{type:Boolean,required:!1,default:!0}},emits:["remove"]}),w={class:"image"},h=["src","alt"],y={key:0,class:"close"};function k(e,o,I,$,N,P){const a=r("el-progress"),i=r("font-awesome-icon");return s(),t("div",w,[_("img",{class:"size-10",src:e.url,alt:e.name},null,8,h),d(n(a,{type:"circle","stroke-width":3,percentage:e.percentage,width:30},null,8,["percentage"]),[[u,e.percentage&&e.percentage<100]]),e.closable?(s(),t("div",y,[n(i,{icon:"fa-solid fa-xmark",class:"icon icon-close",onClick:o[0]||(o[0]=f(q=>e.$emit("remove"),["stop"]))})])):v("v-if",!0)])}var E=m(g,[["render",k],["__scopeId","data-v-01c5f551"],["__file","/home/runner/work/Nexior/Nexior/src/components/common/ImagePreview.vue"]]);export{E as I};