@acedatacloud/nexior 3.323.0 → 3.323.2

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 (167) hide show
  1. package/dist/assets/{ApiCodeButton-CRMxoRc9.js → ApiCodeButton-CT4kJONi.js} +1 -1
  2. package/dist/assets/{Artifacts-DjUuEe-a.js → Artifacts-CkHX2Giz.js} +1 -1
  3. package/dist/assets/{AskUserQuestionCard-B4BQxZfF.js → AskUserQuestionCard-B8397sr9.js} +2 -2
  4. package/dist/assets/{Auth-eVNytcC7.js → Auth-q-hrPpGv.js} +1 -1
  5. package/dist/assets/{Bare-DgUgRhBt.js → Bare-CePH_Mwb.js} +1 -1
  6. package/dist/assets/{BotPlaceholder-q3zECAm3.js → BotPlaceholder-DMdy5ReV.js} +1 -1
  7. package/dist/assets/{BottomFooter-DoSK79h0.js → BottomFooter-BDDx0lVM.js} +1 -1
  8. package/dist/assets/{Callback-CblRpz-g.js → Callback-Cx2l6vrC.js} +1 -1
  9. package/dist/assets/{CodeSnippet-BVKCWNNP.js → CodeSnippet-bBsQKAWE.js} +1 -1
  10. package/dist/assets/{Console-pv0iR1Cd.js → Console-C2vBceIy.js} +1 -1
  11. package/dist/assets/{Consumption-yJOCCtbT.js → Consumption-DLQ-BcIF.js} +1 -1
  12. package/dist/assets/{Conversation-DZPamnW5.js → Conversation-CVJJLcj4.js} +1 -1
  13. package/dist/assets/{Conversation-BocszJO7.js → Conversation-CnQBxaY2.js} +1 -1
  14. package/dist/assets/{CopyToClipboard-BMSiW6qw.js → CopyToClipboard-Ca8S-sqk.js} +1 -1
  15. package/dist/assets/Detail-rohkawRI.js +2 -0
  16. package/dist/assets/Extra-Tnwm2yHf.js +1 -0
  17. package/dist/assets/{FilePreview-BiYsrPne.js → FilePreview-CjzvTPCT.js} +1 -1
  18. package/dist/assets/{Hailuo-BZOIaBW8.js → Hailuo-BHu7HI8z.js} +1 -1
  19. package/dist/assets/{History-BlmECvv5.js → History-DgcQFFIS.js} +1 -1
  20. package/dist/assets/{ImagePreview-BXhJ7B2A.js → ImagePreview-jaBLzHNB.js} +1 -1
  21. package/dist/assets/{ImageWrapper-DmP836qH.js → ImageWrapper-CnYKEGMu.js} +1 -1
  22. package/dist/assets/{Index-CH3Dpspi.js → Index-Bc_2tTo1.js} +1 -1
  23. package/dist/assets/{Index-CocWP1rl.js → Index-BfJX5ffD.js} +1 -1
  24. package/dist/assets/{Index-CgDe-_bm.js → Index-BkRNg0jg.js} +1 -1
  25. package/dist/assets/Index-BovvKC4K.js +1 -0
  26. package/dist/assets/{Index-BSYR7ARa.js → Index-BrMiAHZz.js} +1 -1
  27. package/dist/assets/{Index-iuIoGvyC.js → Index-CE4TFtHT.js} +1 -1
  28. package/dist/assets/{Index-BOm1OkH_.js → Index-CMCQBcI4.js} +1 -1
  29. package/dist/assets/{Index-CqaCP6fg.js → Index-CPrvvx5Y.js} +1 -1
  30. package/dist/assets/{Index-CTowsvWY.js → Index-CbsG5qmx.js} +1 -1
  31. package/dist/assets/{Index-BjV7QAe4.js → Index-ChDaZs-l.js} +1 -1
  32. package/dist/assets/Index-Cn82xbL1.js +1 -0
  33. package/dist/assets/{Index-FSc8E5DQ.js → Index-CvuSHzDq.js} +1 -1
  34. package/dist/assets/{Index-CWyApYi5.js → Index-D6apdctE.js} +1 -1
  35. package/dist/assets/Index-D7vkcV81.js +1 -0
  36. package/dist/assets/{Index-DCIgMh2b.js → Index-DKJN7hoE.js} +1 -1
  37. package/dist/assets/{Index-DRKoWuxE.js → Index-DLBsjO7E.js} +2 -2
  38. package/dist/assets/{Index-BIZAIqGY.js → Index-DZWBUBWP.js} +1 -1
  39. package/dist/assets/Index-Dd8C-po1.js +1 -0
  40. package/dist/assets/Index-DeYJQKUx.js +1 -0
  41. package/dist/assets/{Index-nkMhTY5r.js → Index-DkNX-bJg.js} +1 -1
  42. package/dist/assets/Index-Dm7efSl_.js +1 -0
  43. package/dist/assets/Index-DxlNHxkg.js +1 -0
  44. package/dist/assets/{Index-vyzoT2x6.js → Index-E2IycaH6.js} +1 -1
  45. package/dist/assets/{Index-B-ov1UyR.js → Index-IF6C76qw.js} +1 -1
  46. package/dist/assets/{Index-MEyhldsU.js → Index-f-Nn_mCf.js} +1 -1
  47. package/dist/assets/{Index-CGU6QEcr.js → Index-iwiHeprd.js} +1 -1
  48. package/dist/assets/{Index-BZZona4p.js → Index-qLC-_CRT.js} +1 -1
  49. package/dist/assets/Index-u5xKnAIj.js +1 -0
  50. package/dist/assets/{Invitees-Cuy77qzm.js → Invitees-IBRaXpxi.js} +1 -1
  51. package/dist/assets/{List-D_SibOrf.js → List-BGoq9de8.js} +1 -1
  52. package/dist/assets/{List-AjzoRgfX.js → List-BOzb72dd.js} +1 -1
  53. package/dist/assets/{List-B8XAYP5m.js → List-L9-m5COS.js} +1 -1
  54. package/dist/assets/{LocalTools-CiisxU9y.js → LocalTools-Bye6rJp9.js} +3 -3
  55. package/dist/assets/{LocalTools-DohFCD6F.js → LocalTools-PmXUR4hr.js} +1 -1
  56. package/dist/assets/{Main-ZEuHYT3b.js → Main-DCNT_HEl.js} +1 -1
  57. package/dist/assets/{Message-Co4uZr0A.js → Message-DYyKieyF.js} +2 -2
  58. package/dist/assets/{Model-BDKVOM3T.js → Model-DXb45oQm.js} +1 -1
  59. package/dist/assets/Navigator-1FhvYsqV.js +5 -0
  60. package/dist/assets/{Navigator-PKgvngDy.css → Navigator-B6FWu3mL.css} +1 -1
  61. package/dist/assets/{NoTasks-BKVdtGrG.js → NoTasks-TrlSu31_.js} +1 -1
  62. package/dist/assets/{NotFound-D--SnyHP.js → NotFound-Bxfa3I9B.js} +1 -1
  63. package/dist/assets/{Pagination-ig83vZQz.js → Pagination-C2Ip3oTl.js} +1 -1
  64. package/dist/assets/Pay-Ukv5CMu3.js +1 -0
  65. package/dist/assets/{Player-Bie6CcKt.js → Player-Cn-f-JDk.js} +1 -1
  66. package/dist/assets/{PromptTextarea-Gwcvg8Rq.js → PromptTextarea-CmibdYw8.js} +1 -1
  67. package/dist/assets/{RealtimeCall-D41cDrjD.js → RealtimeCall-DkKlDPZE.js} +1 -1
  68. package/dist/assets/ScheduledTasks-Cf6r4107.js +2 -0
  69. package/dist/assets/{Status-Bc9Gw4cR.js → Status-B7xPxkCj.js} +1 -1
  70. package/dist/assets/{Subscribe-BWr9xf3x.js → Subscribe-CuvIYi1W.js} +1 -1
  71. package/dist/assets/{TabSwitcher-ypKiymO_.js → TabSwitcher-DLkwk450.js} +1 -1
  72. package/dist/assets/Tts-Pidpv_zC.js +1 -0
  73. package/dist/assets/{VideoPlayer-BWbBIA_S.js → VideoPlayer-oKtmGvkU.js} +1 -1
  74. package/dist/assets/{VideoPreview-vui1p-Lo.js → VideoPreview-Co0wZ2_B.js} +1 -1
  75. package/dist/assets/{alert-G-URlTB_.js → alert-DVXIMt1v.js} +1 -1
  76. package/dist/assets/{avatar-CkolYmtE.js → avatar-BjT1c7Rc.js} +1 -1
  77. package/dist/assets/{basic-7gALbkNv.js → basic-BhruITPB.js} +1 -1
  78. package/dist/assets/{chat-CF1TaM7H.js → chat-Bs7b2NNj.js} +1 -1
  79. package/dist/assets/{codingBridge-B_gJDD6R.js → codingBridge-DoEdUnlo.js} +2 -2
  80. package/dist/assets/{codingBridgeNotify-tgDFNrrd.js → codingBridgeNotify-Cf9re3qC.js} +2 -2
  81. package/dist/assets/{collapse-bCn9v2C0.js → collapse-D8X_GwSL.js} +1 -1
  82. package/dist/assets/{createTaskActions-D5hw_qN8.js → createTaskActions-9rWoTkZj.js} +1 -1
  83. package/dist/assets/{date-picker-Yi0WJor8.js → date-picker-D25DTMq4.js} +1 -1
  84. package/dist/assets/{digitalhuman-Bn7Kg_pk.js → digitalhuman-DogPyN8g.js} +1 -1
  85. package/dist/assets/{drawer-DP49p1_6.js → drawer-DTrWPYS_.js} +1 -1
  86. package/dist/assets/{dropdown-UHL1zoSZ.js → dropdown-Bcktp4gY.js} +1 -1
  87. package/dist/assets/{dropdown-CORz1t_8.js → dropdown-Be2-PXoF.js} +1 -1
  88. package/dist/assets/{esm-DhzV0rmt.js → esm-BfMXjIMw.js} +1 -1
  89. package/dist/assets/{esm-bmy8ZnZs.js → esm-D9dkxgp0.js} +1 -1
  90. package/dist/assets/{esm-DdNkKGLZ.js → esm-DETryQIB.js} +3 -3
  91. package/dist/assets/{esm-CLQG1mZ-.js → esm-DKbyQn8K.js} +2 -2
  92. package/dist/assets/{esm-k95XOxsC.js → esm-Dl9j1ZuY.js} +1 -1
  93. package/dist/assets/{esm-CVFqHAaQ.js → esm-KnLm7-gE.js} +2 -2
  94. package/dist/assets/esm-MvQipz6f.js +1 -0
  95. package/dist/assets/fish-WB-B8ZkE.js +1 -0
  96. package/dist/assets/{flux-BkmlwUXt.js → flux-DWTq_shk.js} +1 -1
  97. package/dist/assets/{nanobanana-BG6liaXg.js → grokvideo-Ctu1F3cN.js} +1 -1
  98. package/dist/assets/{sora-DsD88rl-.js → hailuo-CRsbrMG1.js} +1 -1
  99. package/dist/assets/{headshots-CsSv7Ljr.js → headshots-DfpS_8_7.js} +1 -1
  100. package/dist/assets/{image-k1Y9QXE_.js → image-DxExU-Rq.js} +1 -1
  101. package/dist/assets/{index-cCWV4sVD.js → index-BjernDcR.js} +16 -16
  102. package/dist/assets/index-CteWW5ki.css +1 -0
  103. package/dist/assets/{index.browser.esm-Dt6fmJ8g.js → index.browser.esm-CWOHfuk_.js} +1 -1
  104. package/dist/assets/{index.es-D4UG8JJO.js → index.es-DlaJnBWw.js} +1 -1
  105. package/dist/assets/{input-number-9NB5DAEw.js → input-number-qSJ-m6WQ.js} +1 -1
  106. package/dist/assets/{kling-pQZPfizj.js → kling-C4-CqDJp.js} +1 -1
  107. package/dist/assets/{luma-D_WfG748.js → luma-Cq92sJ8E.js} +1 -1
  108. package/dist/assets/{hailuo-BJ5kHLTs.js → maestro-CZmX70Zi.js} +1 -1
  109. package/dist/assets/{midjourney-O8hbsqz_.js → midjourney-D7PkmiHv.js} +1 -1
  110. package/dist/assets/{mobileLocalExec-BZwoC35j.js → mobileLocalExec-BhwPilw0.js} +2 -2
  111. package/dist/assets/{grokvideo-BUFX-Kkm.js → nanobanana-CI586Luv.js} +1 -1
  112. package/dist/assets/{openaiimage-CwGxN1Yg.js → openaiimage-CickhaSp.js} +1 -1
  113. package/dist/assets/{pagination-B_YSjnBT.js → pagination-TdP7XO5o.js} +1 -1
  114. package/dist/assets/{pika-C0i4T40v.js → pika-C_39Fkqt.js} +1 -1
  115. package/dist/assets/{pixverse-DCYS2v3W.js → pixverse-BIaavzE9.js} +1 -1
  116. package/dist/assets/{popover-DRfyTDCS.js → popover-B7XhqbmC.js} +1 -1
  117. package/dist/assets/{producer-Bo9FXbyk.js → producer-CrCvY0m0.js} +1 -1
  118. package/dist/assets/{qrart-XIKITwPj.js → qrart-jzQGBUAm.js} +1 -1
  119. package/dist/assets/realtime-D3KhRtFz.js +1 -0
  120. package/dist/assets/{row-CHv2Gdwz.js → row-IMhCeRXk.js} +1 -1
  121. package/dist/assets/{seedance-D3ylm-GE.js → seedance-GtkF0f2f.js} +1 -1
  122. package/dist/assets/seedream-Dfhd3bBE.js +1 -0
  123. package/dist/assets/{select-lj6Jpu8F.js → select-rpgD1mTp.js} +1 -1
  124. package/dist/assets/serp-BFXUzUyR.js +1 -0
  125. package/dist/assets/{slider-B_It_OXA.js → slider-rfFJozAn.js} +1 -1
  126. package/dist/assets/{solana-wallets-vue-C199kNmq.js → solana-wallets-vue-DPdOJ1tb.js} +1 -1
  127. package/dist/assets/{solana-wallets-BKuPAGBC.js → solana-wallets-yRmFrmw0.js} +2 -2
  128. package/dist/assets/{maestro-D_tkRg95.js → sora-k-SP8cbs.js} +1 -1
  129. package/dist/assets/{suno--P4UInNK.js → suno-oBlqtdJ6.js} +1 -1
  130. package/dist/assets/{switch-CwhkfiKo.js → switch-BZ17H-wR.js} +1 -1
  131. package/dist/assets/{table-BF0BKtU6.js → table-DUuQb9DA.js} +1 -1
  132. package/dist/assets/{tabs-Br3B8Csd.js → tabs-BaISrstV.js} +1 -1
  133. package/dist/assets/{time-picker-C3X3DCt1.js → time-picker-BZiAMQyV.js} +1 -1
  134. package/dist/assets/{tooltip-DhBx2ODw.js → tooltip-D9nl8rAG.js} +1 -1
  135. package/dist/assets/{upload-1pZ4WsxZ.js → upload-DoXD5sDs.js} +1 -1
  136. package/dist/assets/{veo-DaSWG0-_.js → veo-DFG32cbX.js} +1 -1
  137. package/dist/assets/wan-DG-SXte-.js +1 -0
  138. package/dist/assets/{web-DxbRpSu7.js → web-BCjZoxa1.js} +1 -1
  139. package/dist/assets/{web-CFPK0Mvw.js → web-BuGc1yt0.js} +1 -1
  140. package/dist/assets/{web-BsdsABV_.js → web-D8ncroKr.js} +1 -1
  141. package/dist/assets/{web-DG9kVoMe.js → web-DjLo4Tsu.js} +1 -1
  142. package/dist/assets/{web-CBQZAhk_.js → web-nXIrJf1R.js} +1 -1
  143. package/dist/assets/webextrator-CIdSYQ3h.js +1 -0
  144. package/dist/index.html +2 -2
  145. package/package.json +1 -1
  146. package/dist/assets/Detail-DSgSquPV.js +0 -2
  147. package/dist/assets/Extra-BvabkK6j.js +0 -1
  148. package/dist/assets/Index-B-oYNXkr.js +0 -1
  149. package/dist/assets/Index-B67o8_zb.js +0 -1
  150. package/dist/assets/Index-BIybL7kL.js +0 -1
  151. package/dist/assets/Index-BRBektn2.js +0 -1
  152. package/dist/assets/Index-CBfn3rlo.js +0 -1
  153. package/dist/assets/Index-CPxxw28m.js +0 -1
  154. package/dist/assets/Index-DUGFr8lT.js +0 -1
  155. package/dist/assets/Index-RiWRwMxo.js +0 -1
  156. package/dist/assets/Navigator-CfKhF1qD.js +0 -5
  157. package/dist/assets/Pay-DiJSiTh_.js +0 -1
  158. package/dist/assets/ScheduledTasks-t7yWb4dG.js +0 -2
  159. package/dist/assets/Tts-oggn8B-P.js +0 -1
  160. package/dist/assets/esm-B94EbEP9.js +0 -1
  161. package/dist/assets/fish-DHkIBTST.js +0 -1
  162. package/dist/assets/index-ByzBsIxU.css +0 -1
  163. package/dist/assets/realtime-B5PshcBV.js +0 -1
  164. package/dist/assets/seedream-CO-ut_Lz.js +0 -1
  165. package/dist/assets/serp-DDuTwzix.js +0 -1
  166. package/dist/assets/wan-C5qjjzL8.js +0 -1
  167. package/dist/assets/webextrator-BXvITmT_.js +0 -1
@@ -1,2 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,Gt as n,I as r,Jt as i,L as a,M as o,N as s,S as c,T as l,at as u,j as d,mt as f,rt as p,tt as m,z as h}from"./vendor-chart-Dw-P17PN.js";import{n as g,r as _,t as v}from"./select-lj6Jpu8F.js";import{t as y}from"./time-picker-C3X3DCt1.js";import{n as b,t as x}from"./form-C5xVtXwR.js";import{t as S}from"./card-D-4S-l7a.js";import{r as C,t as w}from"./radio-Bj0tEwH8.js";import{t as T}from"./drawer-DP49p1_6.js";import{t as E}from"./empty-xCRn_5sX.js";import{t as D}from"./input-number-9NB5DAEw.js";import{t as O}from"./Pagination-ig83vZQz.js";import{t as k}from"./skeleton-CoheJz5x.js";import{t as A}from"./switch-CwhkfiKo.js";import{t as j}from"./vendor-axios-Ck2ffRoh.js";import{Ki as M,Ni as N,Zi as P}from"./constants-CzGOanfS.js";import{A as F,hi as I,ii as L,pi as R,ri as z,si as B,tn as V,wi as ee}from"./index-cCWV4sVD.js";import{t as te}from"./index.es-D4UG8JJO.js";function H(e){let t=V();return{Authorization:`Bearer ${e}`,"Content-Type":`application/json`,...t?{"x-site-origin":t}:{}}}var U=`${P}/aichat2/scheduled-tasks`;function W(e){let t=e?.response?.data;return t?.error===`skill_not_active`?t.detail??{kind:`skill`,slug:``,reason:`not_active`}:null}var G=new class{async listTasks(e){let{data:t}=await j.post(U,{action:`retrieve_batch`},{headers:H(e)});return t?.items??[]}async createTask(e,t,n=!1){let{data:r}=await j.post(U,{action:`create`,...t,...n?{force:!0}:{}},{headers:H(e)});return r}async updateTask(e,t,n,r=!1){let{data:i}=await j.post(U,{action:`update`,id:t,...n,...r?{force:!0}:{}},{headers:H(e)});return i}async deleteTask(e,t){await j.post(U,{action:`delete`,id:t},{headers:H(e)})}async listRuns(e,t){let{data:n}=await j.post(U,{action:`retrieve_runs`,id:t},{headers:H(e)});return n?.items??[]}async listAuthorizableSkills(e){let{data:t}=await j.post(U,{action:`retrieve_authorizable_skills`},{headers:H(e)});return t?.items??[]}async listAuthorizableCapabilities(e){let{data:t}=await j.post(U,{action:`retrieve_authorizable_skills`},{headers:H(e)});return{skills:t?.skills??t?.items??[],mcp_servers:t?.mcp_servers??[]}}},K=Intl.DateTimeFormat().resolvedOptions().timeZone||`Asia/Shanghai`,q=50,J=h({name:`ScheduledTasks`,components:{FontAwesomeIcon:te,ElButton:I,ElCard:S,ElSkeleton:k,ElEmpty:E,ElSwitch:A,ElTag:R,ElDrawer:T,ElDialog:B,ElForm:x,ElFormItem:b,ElInput:ee,ElSelect:_,ElOption:v,ElOptionGroup:g,ElRadioGroup:C,ElRadio:w,ElTimePicker:y,ElInputNumber:D,Pagination:O},data(){return{tasks:[],runs:[],loading:!1,runsLoading:!1,skillsLoading:!1,saving:!1,showCreateDialog:!1,showRunHistory:!1,selectedTask:null,editingTask:null,authorizableSkills:[],authorizableMcpServers:[],weekdays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],page:1,pageSize:6,runPage:1,runPageSize:8,form:this.emptyForm()}},computed:{token(){return this.$store.state.chat?.credential?.token},modelGroups(){let e=this.$store.state.site?.features??{};return N.filter(t=>e[t.name]?.enabled!==!1).map(e=>({...e,models:e.models.filter(e=>e.enabled!==!1)})).filter(e=>e.models.length>0)},pagedTasks(){let e=(this.page-1)*this.pageSize;return this.tasks.slice(e,e+this.pageSize)},pagedRuns(){let e=(this.runPage-1)*this.runPageSize;return this.runs.slice(e,e+this.runPageSize)}},async mounted(){await this.loadTasks()},methods:{emptyForm(){return{name:``,question:``,model:M,scheduleType:`daily`,dailyTime:`09:00`,weekday:1,cronExpr:`0 9 * * *`,authorizedSkills:[],authorizedMcpServers:[],maxTurns:q}},deriveName(e){let t=(e||``).trim().split(`
2
- `)[0].trim();return t.length>40?`${t.slice(0,40)}…`:t||`Scheduled Task`},async loadTasks(){if(this.token){this.loading=!0;try{this.tasks=await G.listTasks(this.token);let e=Math.max(1,Math.ceil(this.tasks.length/this.pageSize));this.page>e&&(this.page=e)}catch{L.error(this.$t(`chat.scheduledTasks.loadError`))}finally{this.loading=!1}}},async selectTask(e){this.selectedTask=e,this.showRunHistory=!0,this.runPage=1,this.runsLoading=!0;try{this.runs=await G.listRuns(this.token,e.id)}finally{this.runsLoading=!1}},onPageChange(e){this.page=e},onRunPageChange(e){this.runPage=e},openEdit(e){this.editingTask=e;let t=e.schedule,n=`cron`,r=`09:00`,i=`0 9 * * *`,a=1;if(t.type===`cron`){i=t.cron;let e=t.cron.split(` `);if(e.length===5){let[t,i,,,o]=e;o===`*`&&!isNaN(Number(i))?(n=`daily`,r=`${i.padStart(2,`0`)}:${t.padStart(2,`0`)}`):isNaN(Number(o))||(n=`weekly`,a=Number(o),r=`${i.padStart(2,`0`)}:${t.padStart(2,`0`)}`)}}else t.type===`interval`&&(n=t.interval_seconds===60?`minutely`:t.interval_seconds===3600?`hourly`:`cron`);this.form={name:e.name,question:e.template.question,model:e.template.model,scheduleType:n,dailyTime:r,weekday:a,cronExpr:i,authorizedSkills:(e.unattended_policy?.mode===`allow_selected`||e.unattended_policy?.mode===`allow_selected_skills`)&&e.unattended_policy.allowed_skills||[],authorizedMcpServers:(e.unattended_policy?.mode===`allow_selected`||e.unattended_policy?.mode===`allow_selected_skills`)&&e.unattended_policy.allowed_mcp_servers||[],maxTurns:e.template.max_turns??q},this.showCreateDialog=!0,this.loadAuthorizableSkills()},buildSchedule(){let{scheduleType:e,dailyTime:t,weekday:n,cronExpr:r}=this.form;if(e===`minutely`)return{type:`interval`,interval_seconds:60,tz:K};if(e===`hourly`)return{type:`interval`,interval_seconds:3600,tz:K};if(e===`daily`){let[e,n]=t.split(`:`);return{type:`cron`,cron:`${n} ${e} * * *`,tz:K}}if(e===`weekly`){let[e,r]=t.split(`:`);return{type:`cron`,cron:`${r} ${e} * * ${n}`,tz:K}}return{type:`cron`,cron:r,tz:K}},async saveTask(){if(!this.form.question.trim()){L.warning(this.$t(`chat.scheduledTasks.form.required`));return}if(this.form.authorizedSkills.length>0||this.form.authorizedMcpServers.length>0)try{await z.confirm(this.authorizationConfirmText(),this.$t(`chat.scheduledTasks.form.skillsConfirmTitle`),{type:`warning`,confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}let e=[...this.form.authorizedSkills],t=[...this.form.authorizedMcpServers],n={name:this.form.name.trim()||this.deriveName(this.form.question),schedule:this.buildSchedule(),template:{model:this.form.model,question:this.form.question,skills:e,mcp_servers:t,max_turns:this.form.maxTurns},unattended_policy:e.length||t.length?{mode:`allow_selected`,allowed_skills:e,allowed_mcp_servers:t}:{mode:`deny_all`,allowed_skills:[],allowed_mcp_servers:[]}};await this.submitTask(n,!1)},async submitTask(e,t){this.saving=!0;let n=null;try{if(this.editingTask){let n=this.editingTask.id,r=await G.updateTask(this.token,n,e,t),i=this.tasks.findIndex(e=>e.id===n);i!==-1&&(this.tasks[i]=r)}else{let n=await G.createTask(this.token,e,t);this.tasks=[n,...this.tasks],this.page=1}L.success(this.$t(`chat.scheduledTasks.create`)+` OK`),this.showCreateDialog=!1,this.editingTask=null,this.form=this.emptyForm()}catch(e){n=t?null:W(e),n||L.error(this.$t(`chat.scheduledTasks.loadError`))}finally{this.saving=!1}n&&await this.confirmForceSkill(n)&&await this.submitTask(e,!0)},async confirmForceSkill(e){let t=this.capabilityLabel(e.slug);try{return await z.confirm(this.$t(`chat.scheduledTasks.form.skillNotActiveMessage`,{name:t}),this.$t(`chat.scheduledTasks.form.skillNotActiveTitle`),{type:`warning`,confirmButtonText:this.$t(`chat.scheduledTasks.form.skillNotActiveForce`),cancelButtonText:this.$t(`common.button.cancel`)}),!0}catch{return!1}},capabilityLabel(e){let t=this.authorizableSkills.find(t=>t.slug===e);if(t)return t.name||t.slug;let n=this.authorizableMcpServers.find(t=>t.slug===e);return n?n.name||n.slug:e},async loadAuthorizableSkills(e=!1){if(!(!this.token||this.skillsLoading||!e&&(this.authorizableSkills.length||this.authorizableMcpServers.length))){this.skillsLoading=!0;try{let e=await G.listAuthorizableCapabilities(this.token);this.authorizableSkills=e.skills,this.authorizableMcpServers=e.mcp_servers}catch{L.error(this.$t(`chat.scheduledTasks.loadError`))}finally{this.skillsLoading=!1}}},onSkillSelectVisible(e){e&&this.loadAuthorizableSkills(!0)},skillLabel(e){return e.name||e.slug},mcpServerLabel(e){return e.name||e.slug},authorizationConfirmText(){let e=new Set(this.form.authorizedSkills),t=new Set(this.form.authorizedMcpServers),n=this.authorizableSkills.filter(t=>e.has(t.slug)).map(e=>this.skillLabel(e)),r=this.authorizableMcpServers.filter(e=>t.has(e.slug)).map(e=>this.mcpServerLabel(e));return this.$t(`chat.scheduledTasks.form.skillsConfirm`,{count:e.size+t.size,skills:[...n,...r].length?[...n,...r].join(`, `):[...Array.from(e),...Array.from(t)].join(`, `)})},async toggleState(e,t){let n=this.tasks.findIndex(t=>t.id===e.id),r=t?`enabled`:`disabled`;n!==-1&&(this.tasks[n]={...e,state:r});try{let t=await G.updateTask(this.token,e.id,{state:r});n!==-1&&(this.tasks[n]=t)}catch{n!==-1&&(this.tasks[n]={...e,state:e.state}),L.error(this.$t(`chat.scheduledTasks.loadError`))}},async confirmDelete(e){await z.confirm(this.$t(`chat.scheduledTasks.deleteConfirm`,{name:e.name}),{type:`warning`});try{await G.deleteTask(this.token,e.id),this.tasks=this.tasks.filter(t=>t.id!==e.id);let t=Math.max(1,Math.ceil(this.tasks.length/this.pageSize));this.page>t&&(this.page=t)}catch{L.error(this.$t(`chat.scheduledTasks.loadError`))}},openRun(e){if(!e.conversation_id)return;let t=this.modelGroups.map(e=>e.name),n=e.conversation_model_group,r=this.$store.state.chat?.modelGroup?.name||`chatgpt`,i=n&&(t.length===0||t.includes(n))?n:r;this.$router.push(`/${i}/conversations/${e.conversation_id}`)},stateTagType(e){return e===`enabled`?`success`:e===`error`?`danger`:`info`},runTagType(e){return e===`success`?`success`:e===`failed`?`danger`:`warning`},runErrorText(e){return e.error_message||e.error_code?.replace(/_/g,` `)||``},scheduleLabel(e){return e.type===`interval`?`每 ${e.interval_seconds/60} 分钟`:e.type===`cron`?`Cron: ${e.cron}`:`一次性: ${new Date(e.at*1e3).toLocaleString()}`},formatTime(e){return new Date(e*1e3).toLocaleString()}}}),Y={class:`scheduled-tasks`},X={class:`inner`},Z={class:`header`},Q={class:`title`},ne={class:`task-list`},re={class:`task-top`},ie={class:`task-name`},ae={class:`task-meta`},oe={class:`meta-chip`},se={class:`meta-chip`},ce={class:`task-prompt`},le={key:0,class:`task-last-output`},ue={class:`task-footer`},de={class:`run-count`},fe={key:0,class:`error-hint`},pe={class:`open-hint`},me={key:0,class:`pager`},he={key:0,class:`run-context`},ge={class:`run-context-meta`},_e={class:`run-context-prompt`},ve={key:3,class:`run-list`},ye=[`tabindex`,`role`,`onClick`,`onKeydown`],be={class:`run-body`},xe={class:`run-line`},Se={class:`run-title`},Ce={key:0,class:`run-preview`},we={class:`run-sub`},Te={class:`run-time`},Ee=[`title`],De={class:`run-action`},Oe={key:1,class:`run-noconv`},ke={key:4,class:`pager run-pager`},Ae={class:`hint`},je={class:`jitter-hint`},$={class:`skill-option`},Me={class:`skill-option-name`},Ne={key:0,class:`skill-option-missing`},Pe={class:`hint`},Fe={class:`hint`},Ie={class:`hint`};function Le(h,g,_,v,y,b){let x=u(`font-awesome-icon`),S=u(`el-button`),C=u(`el-skeleton`),w=u(`el-empty`),T=u(`el-switch`),E=u(`el-tag`),D=u(`el-card`),O=u(`pagination`),k=u(`el-drawer`),A=u(`el-input`),j=u(`el-form-item`),M=u(`el-option`),N=u(`el-option-group`),P=u(`el-select`),F=u(`el-radio`),I=u(`el-radio-group`),L=u(`el-time-picker`),R=u(`el-input-number`),z=u(`el-form`),B=u(`el-dialog`);return m(),s(`div`,Y,[e(`div`,X,[e(`div`,Z,[e(`h2`,Q,i(h.$t(`chat.scheduledTasks.title`)),1),a(S,{type:`primary`,round:``,onClick:g[0]||=e=>h.showCreateDialog=!0},{default:f(()=>[a(x,{icon:`fa-solid fa-plus`,class:`icon`}),r(` `+i(h.$t(`chat.scheduledTasks.create`)),1)]),_:1})]),h.loading?(m(),d(C,{key:0,rows:4,animated:``,class:`loading-block`})):h.tasks.length?(m(),s(l,{key:2},[e(`div`,ne,[(m(!0),s(l,null,p(h.pagedTasks,n=>(m(),d(D,{key:n.id,class:`task-card`,shadow:`hover`,onClick:e=>h.selectTask(n)},{default:f(()=>[e(`div`,re,[e(`div`,ie,i(n.name),1),e(`div`,{class:`task-actions`,onClick:g[1]||=t(()=>{},[`stop`])},[a(T,{"model-value":n.state===`enabled`,onChange:e=>h.toggleState(n,e===!0)},null,8,[`model-value`,`onChange`]),a(S,{text:``,class:`icon-action`,onClick:e=>h.openEdit(n)},{default:f(()=>[a(x,{icon:`fa-solid fa-pen`})]),_:1},8,[`onClick`]),a(S,{text:``,type:`danger`,class:`icon-action`,onClick:e=>h.confirmDelete(n)},{default:f(()=>[a(x,{icon:`fa-solid fa-trash`})]),_:1},8,[`onClick`])])]),e(`div`,ae,[a(E,{size:`small`,type:h.stateTagType(n.state),effect:`dark`,round:``},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.state.${n.state}`)),1)]),_:2},1032,[`type`]),e(`span`,oe,[a(x,{icon:`fa-solid fa-clock`,class:`meta-icon`}),r(` `+i(h.scheduleLabel(n.schedule)),1)]),e(`span`,se,[a(x,{icon:`fa-solid fa-brain`,class:`meta-icon`}),r(` `+i(n.template.model),1)])]),e(`div`,ce,i(n.template.question),1),n.last_output_snippet?(m(),s(`div`,le,i(n.last_output_snippet),1)):o(``,!0),e(`div`,ue,[e(`span`,de,[a(x,{icon:`fa-solid fa-arrows-rotate`,class:`footer-icon`}),r(` `+i(h.$t(`chat.scheduledTasks.runCount`,{count:n.run_count})),1)]),n.last_error?(m(),s(`span`,fe,i(n.last_error),1)):o(``,!0),e(`span`,pe,[r(i(h.$t(`chat.scheduledTasks.viewRuns`))+` `,1),a(x,{icon:`fa-solid fa-chevron-right`})])])]),_:2},1032,[`onClick`]))),128))]),h.tasks.length>h.pageSize?(m(),s(`div`,me,[a(O,{"current-page":h.page,"page-size":h.pageSize,total:h.tasks.length,onChange:h.onPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])):o(``,!0)],64)):(m(),d(w,{key:1,description:h.$t(`chat.scheduledTasks.empty`),class:`empty`},null,8,[`description`]))]),a(k,{modelValue:h.showRunHistory,"onUpdate:modelValue":g[2]||=e=>h.showRunHistory=e,title:h.selectedTask?.name,direction:`rtl`,size:`min(560px, 92vw)`,class:`run-history-drawer`},{default:f(()=>[h.selectedTask?(m(),s(`div`,he,[e(`div`,ge,[e(`span`,null,i(h.scheduleLabel(h.selectedTask.schedule)),1),e(`span`,null,i(h.selectedTask.template.model),1),e(`span`,null,i(h.$t(`chat.scheduledTasks.runCount`,{count:h.selectedTask.run_count})),1)]),e(`div`,_e,i(h.selectedTask.template.question),1)])):o(``,!0),h.runsLoading?(m(),d(C,{key:1,rows:3,animated:``})):h.runs.length?(m(),s(`div`,ve,[(m(!0),s(l,null,p(h.pagedRuns,l=>(m(),s(`div`,{key:l.id,class:n([`run-item`,{clickable:!!l.conversation_id}]),tabindex:l.conversation_id?0:-1,role:l.conversation_id?`button`:void 0,onClick:e=>h.openRun(l),onKeydown:[c(e=>h.openRun(l),[`enter`]),c(t(e=>h.openRun(l),[`prevent`]),[`space`])]},[e(`div`,be,[e(`div`,xe,[e(`span`,Se,i(l.conversation_title||h.formatTime(l.scheduled_at)),1),a(E,{size:`small`,type:h.runTagType(l.status),effect:`dark`,round:``,class:`run-tag`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.run.${l.status}`)),1)]),_:2},1032,[`type`])]),l.conversation_preview?(m(),s(`div`,Ce,i(l.conversation_preview),1)):o(``,!0),e(`div`,we,[e(`span`,Te,i(h.formatTime(l.scheduled_at)),1),l.error_code||l.error_message?(m(),s(`span`,{key:0,class:`run-error`,title:h.runErrorText(l)},i(h.runErrorText(l)),9,Ee)):o(``,!0)])]),e(`div`,De,[l.conversation_id?(m(),d(x,{key:0,icon:`fa-solid fa-chevron-right`,class:`run-arrow`})):(m(),s(`span`,Oe,i(h.$t(`chat.scheduledTasks.noConversation`)),1))])],42,ye))),128))])):(m(),d(w,{key:2,description:h.$t(`chat.scheduledTasks.noRuns`)},null,8,[`description`])),!h.runsLoading&&h.runs.length>h.runPageSize?(m(),s(`div`,ke,[a(O,{"current-page":h.runPage,"page-size":h.runPageSize,total:h.runs.length,onChange:h.onRunPageChange},null,8,[`current-page`,`page-size`,`total`,`onChange`])])):o(``,!0)]),_:1},8,[`modelValue`,`title`]),a(B,{modelValue:h.showCreateDialog,"onUpdate:modelValue":g[15]||=e=>h.showCreateDialog=e,title:h.editingTask?h.$t(`chat.scheduledTasks.edit`):h.$t(`chat.scheduledTasks.create`),width:`540px`,"close-on-click-modal":!1,class:`scheduled-task-dialog`},{footer:f(()=>[a(S,{onClick:g[14]||=e=>h.showCreateDialog=!1},{default:f(()=>[r(i(h.$t(`common.button.cancel`)),1)]),_:1}),a(S,{type:`primary`,loading:h.saving,onClick:h.saveTask},{default:f(()=>[r(i(h.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`,`onClick`])]),default:f(()=>[a(z,{model:h.form,"label-width":`92px`},{default:f(()=>[a(j,{label:h.$t(`chat.scheduledTasks.form.name`)},{default:f(()=>[a(A,{modelValue:h.form.name,"onUpdate:modelValue":g[3]||=e=>h.form.name=e,placeholder:h.$t(`chat.scheduledTasks.form.namePlaceholder`),maxlength:`80`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),a(j,{label:h.$t(`chat.scheduledTasks.form.prompt`),required:``},{default:f(()=>[a(A,{modelValue:h.form.question,"onUpdate:modelValue":g[4]||=e=>h.form.question=e,type:`textarea`,rows:6,placeholder:h.$t(`chat.scheduledTasks.form.promptPlaceholder`)},null,8,[`modelValue`,`placeholder`]),e(`div`,Ae,i(h.$t(`chat.scheduledTasks.form.promptHint`)),1)]),_:1},8,[`label`]),a(j,{label:h.$t(`chat.scheduledTasks.form.model`)},{default:f(()=>[a(P,{modelValue:h.form.model,"onUpdate:modelValue":g[5]||=e=>h.form.model=e,style:{width:`100%`},filterable:``},{default:f(()=>[(m(!0),s(l,null,p(h.modelGroups,e=>(m(),d(N,{key:e.name,label:e.getDisplayName()},{default:f(()=>[(m(!0),s(l,null,p(e.models,e=>(m(),d(M,{key:e.name,label:e.getDisplayName(),value:e.name},null,8,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128))]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),a(j,{label:h.$t(`chat.scheduledTasks.form.schedule`)},{default:f(()=>[a(I,{modelValue:h.form.scheduleType,"onUpdate:modelValue":g[6]||=e=>h.form.scheduleType=e},{default:f(()=>[a(F,{value:`minutely`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.minutely`)),1)]),_:1}),a(F,{value:`daily`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.daily`)),1)]),_:1}),a(F,{value:`hourly`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.hourly`)),1)]),_:1}),a(F,{value:`weekly`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.weekly`)),1)]),_:1}),a(F,{value:`cron`},{default:f(()=>[r(i(h.$t(`chat.scheduledTasks.scheduleType.cron`)),1)]),_:1})]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),h.form.scheduleType===`daily`?(m(),d(j,{key:0,label:h.$t(`chat.scheduledTasks.form.time`)},{default:f(()=>[a(L,{modelValue:h.form.dailyTime,"onUpdate:modelValue":g[7]||=e=>h.form.dailyTime=e,format:`HH:mm`,"value-format":`HH:mm`},null,8,[`modelValue`]),e(`span`,je,i(h.$t(`chat.scheduledTasks.jitterHint`)),1)]),_:1},8,[`label`])):o(``,!0),h.form.scheduleType===`weekly`?(m(),d(j,{key:1,label:h.$t(`chat.scheduledTasks.form.weekday`)},{default:f(()=>[a(P,{modelValue:h.form.weekday,"onUpdate:modelValue":g[8]||=e=>h.form.weekday=e,style:{width:`120px`}},{default:f(()=>[(m(!0),s(l,null,p(h.weekdays,(e,t)=>(m(),d(M,{key:t,label:e,value:t},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),a(L,{modelValue:h.form.dailyTime,"onUpdate:modelValue":g[9]||=e=>h.form.dailyTime=e,format:`HH:mm`,"value-format":`HH:mm`,style:{"margin-left":`8px`}},null,8,[`modelValue`])]),_:1},8,[`label`])):o(``,!0),h.form.scheduleType===`cron`?(m(),d(j,{key:2,label:h.$t(`chat.scheduledTasks.form.cron`)},{default:f(()=>[a(A,{modelValue:h.form.cronExpr,"onUpdate:modelValue":g[10]||=e=>h.form.cronExpr=e,placeholder:`0 9 * * *`},null,8,[`modelValue`])]),_:1},8,[`label`])):o(``,!0),a(j,{label:h.$t(`chat.scheduledTasks.form.skills`)},{default:f(()=>[a(P,{modelValue:h.form.authorizedSkills,"onUpdate:modelValue":g[11]||=e=>h.form.authorizedSkills=e,style:{width:`100%`},multiple:``,filterable:``,"collapse-tags":``,"collapse-tags-tooltip":``,loading:h.skillsLoading,placeholder:h.$t(`chat.scheduledTasks.form.skillsPlaceholder`),onVisibleChange:h.onSkillSelectVisible},{default:f(()=>[(m(!0),s(l,null,p(h.authorizableSkills,t=>(m(),d(M,{key:t.slug,label:h.skillLabel(t),value:t.slug,disabled:!t.connected},{default:f(()=>[e(`div`,$,[e(`span`,Me,i(h.skillLabel(t)),1),t.connected?o(``,!0):(m(),s(`span`,Ne,i(h.$t(`chat.scheduledTasks.form.skillMissing`)),1))])]),_:2},1032,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`loading`,`placeholder`,`onVisibleChange`]),e(`div`,Pe,i(h.$t(`chat.scheduledTasks.form.skillsHint`)),1)]),_:1},8,[`label`]),a(j,{label:h.$t(`chat.scheduledTasks.form.mcpServers`)},{default:f(()=>[a(P,{modelValue:h.form.authorizedMcpServers,"onUpdate:modelValue":g[12]||=e=>h.form.authorizedMcpServers=e,style:{width:`100%`},multiple:``,filterable:``,"collapse-tags":``,"collapse-tags-tooltip":``,loading:h.skillsLoading,placeholder:h.$t(`chat.scheduledTasks.form.mcpServersPlaceholder`),onVisibleChange:h.onSkillSelectVisible},{default:f(()=>[(m(!0),s(l,null,p(h.authorizableMcpServers,e=>(m(),d(M,{key:e.slug,label:h.mcpServerLabel(e),value:e.slug},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`loading`,`placeholder`,`onVisibleChange`]),e(`div`,Fe,i(h.$t(`chat.scheduledTasks.form.mcpServersHint`)),1)]),_:1},8,[`label`]),a(j,{label:h.$t(`chat.scheduledTasks.form.maxTurns`)},{default:f(()=>[a(R,{modelValue:h.form.maxTurns,"onUpdate:modelValue":g[13]||=e=>h.form.maxTurns=e,min:1,max:50,step:1,"controls-position":`right`},null,8,[`modelValue`]),e(`div`,Ie,i(h.$t(`chat.scheduledTasks.form.maxTurnsHint`)),1)]),_:1},8,[`label`])]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`])])}var Re=F(J,[[`render`,Le],[`__scopeId`,`data-v-c7ab2bf2`]]);export{Re as default};
@@ -1 +0,0 @@
1
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,C as t,I as n,Jt as r,L as i,M as a,N as o,T as s,at as c,j as l,mt as u,rt as d,tt as f,z as p}from"./vendor-chart-Dw-P17PN.js";import{r as m,t as h}from"./select-lj6Jpu8F.js";import{t as g}from"./image-k1Y9QXE_.js";import{t as _}from"./alert-G-URlTB_.js";import{t as v}from"./slider-B_It_OXA.js";import{ft as y,lt as b}from"./constants-CzGOanfS.js";import{A as x,Kt as S,Ut as ee,Vt as C,Wr as w,en as te,hi as T,ii as E,ir as D,mn as O}from"./index-cCWV4sVD.js";import{t as k}from"./index.es-D4UG8JJO.js";import{t as A}from"./CopyToClipboard-BMSiW6qw.js";import{t as j}from"./Consumption-yJOCCtbT.js";import{n as M,t as N}from"./pagination-B_YSjnBT.js";import{t as P}from"./ApiCodeButton-CRMxoRc9.js";import{t as F}from"./BotPlaceholder-q3zECAm3.js";import{t as I}from"./NoTasks-BKVdtGrG.js";import{t as L}from"./Hailuo-BZOIaBW8.js";import{t as R}from"./TabSwitcher-ypKiymO_.js";import{t as z}from"./PromptTextarea-Gwcvg8Rq.js";var B=p({name:`FishTextInput`,components:{PromptTextarea:z},computed:{text:{get(){return this.$store.state.fish?.config?.text},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,text:e})}}}});function V(e,t,n,r,i,a){let o=c(`prompt-textarea`);return f(),l(o,{modelValue:e.text,"onUpdate:modelValue":t[0]||=t=>e.text=t,title:e.$t(`fish.name.text`),info:e.$t(`fish.description.text`),placeholder:e.$t(`fish.placeholder.text`)},null,8,[`modelValue`,`title`,`info`,`placeholder`])}var H=x(B,[[`render`,V]]),U=p({name:`FishModelSelector`,components:{ElSelect:m,ElOption:h},computed:{options(){return[{value:y,label:this.$t(`fish.button.modelS2Pro`)},{value:`s1`,label:this.$t(`fish.button.modelS1`)}]},value:{get(){return this.$store.state.fish?.config?.model},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,model:e})}}},mounted(){this.value||=b}}),W={class:`field`},G={class:`title font-bold`};function K(t,n,a,p,m,h){let g=c(`el-option`),_=c(`el-select`);return f(),o(`div`,W,[e(`h2`,G,r(t.$t(`fish.name.model`)),1),i(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`fish.placeholder.select`)},{default:u(()=>[(f(!0),o(s,null,d(t.options,e=>(f(),l(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])])}var q=x(U,[[`render`,K],[`__scopeId`,`data-v-9702e6d3`]]),J=p({name:`FishVoicePicker`,components:{ElSelect:m,ElOption:h},computed:{loading(){return this.$store.state.fish?.status?.getApplications===w.Request},options(){return this.$store.state.fish?.voices??[]},displayOptions(){return this.options.map(e=>{let t=e,n=(t.id||t._id||t.reference_id||``).toString();return{value:n,label:t.title||n}}).filter(e=>!!e.value)},credential(){return this.$store.state.fish?.credential},value:{get(){return this.$store.state.fish?.config?.reference_id},set(e){this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,reference_id:e||void 0})}}},watch:{credential:{immediate:!0,handler(e){if(!e?.token)return;let t=this.$store.state.fish?.voices;(t===void 0||t.length===0)&&this.$store.dispatch(`fish/getVoices`)}}}}),Y={class:`field`},X={class:`title font-bold`};function Z(t,n,a,p,m,h){let g=c(`el-option`),_=c(`el-select`);return f(),o(`div`,Y,[e(`h2`,X,r(t.$t(`fish.name.voice`)),1),i(_,{modelValue:t.value,"onUpdate:modelValue":n[0]||=e=>t.value=e,class:`value`,placeholder:t.$t(`fish.placeholder.voice`),clearable:``,filterable:``,loading:t.loading,"no-data-text":t.$t(`fish.message.noVoices`)},{default:u(()=>[(f(!0),o(s,null,d(t.displayOptions,e=>(f(),l(g,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`loading`,`no-data-text`])])}var Q=p({name:`FishConfigPanel`,components:{ElButton:T,ElSlider:v,FontAwesomeIcon:k,TextInput:H,ModelSelector:q,VoicePicker:x(J,[[`render`,Z],[`__scopeId`,`data-v-ac9e3a92`]]),Consumption:j},emits:[`generate`],computed:{config(){return this.$store.state.fish?.config},consumption(){return S(this.config,this.service?.cost)},service(){return this.$store.state.fish?.service},canGenerate(){let e=this.config?.text;return typeof e==`string`&&e.trim().length>0},speed:{get(){return this.config?.prosody?.speed??1},set(e){this.$store.commit(`fish/setConfig`,{...this.config,prosody:{...this.config?.prosody??{},speed:e}})}}},methods:{onGenerate(){this.$emit(`generate`)}}}),ne={class:`flex flex-col h-full`},re={class:`flex-1 overflow-y-auto p-5`},ie={class:`field mb-2`},ae={class:`title font-bold`},oe={class:`flex flex-col items-center justify-center px-5 pb-5`};function se(t,a,s,l,d,p){let m=c(`text-input`),h=c(`model-selector`),g=c(`voice-picker`),_=c(`el-slider`),v=c(`consumption`),y=c(`font-awesome-icon`),b=c(`el-button`);return f(),o(`div`,ne,[e(`div`,re,[i(m,{class:`mb-4`}),i(h,{class:`mb-4`}),i(g,{class:`mb-4`}),e(`div`,ie,[e(`h2`,ae,r(t.$t(`fish.name.speed`)),1),i(_,{modelValue:t.speed,"onUpdate:modelValue":a[0]||=e=>t.speed=e,min:.5,max:2,step:.1,class:`value`,"show-input":``},null,8,[`modelValue`])])]),e(`div`,oe,[i(v,{value:t.consumption,service:t.service},null,8,[`value`,`service`]),i(b,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canGenerate,onClick:t.onGenerate},{default:u(()=>[i(y,{icon:`fa-solid fa-magic`,class:`mr-2`}),n(` `+r(t.$t(`fish.button.generate`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var ce=x(Q,[[`render`,se],[`__scopeId`,`data-v-1ccd36ba`]]),le=p({name:`FishTaskPreview`,components:{ElImage:g,CopyToClipboard:A,FontAwesomeIcon:k,ElAlert:_,ElButton:T,ApiCodeButton:P},props:{modelValue:{type:Object,required:!0}},computed:{prompt(){return this.modelValue?.request?.text},audioUrl(){return this.modelValue?.response?.audio_url}},methods:{onDownload(e){window.open(e,`_blank`)}}}),ue={class:`preview`},de={class:`left`},fe={class:`main`},pe={class:`bot`},me={class:`datetime`},he={class:`info`},ge={key:0,class:`prompt mt-2`},_e={key:0},ve={key:0,class:`content`},ye=[`src`],be={class:`operations mt-2`},xe={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Se={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},Ce={class:`text-[var(--el-text-color-regular)] text-xs mb-2`},we={key:2,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},Te={key:1,class:`content`},Ee={class:`text-[var(--el-text-color-regular)] text-xs mb-0`};function De(s,l,d,p,m,h){let g=c(`el-image`),_=c(`el-button`),v=c(`api-code-button`),y=c(`font-awesome-icon`),b=c(`copy-to-clipboard`),x=c(`el-alert`);return f(),o(`div`,ue,[e(`div`,de,[i(g,{src:`https://cdn.acedata.cloud/e40fccc727.png`,class:`avatar`})]),e(`div`,fe,[e(`div`,pe,[n(r(s.$t(`fish.name.fishBot`))+` `,1),e(`span`,me,r(s.$dayjs.format(``+new Date(parseFloat((s.modelValue?.created_at||``).toString())*1e3))),1)]),e(`div`,he,[s.prompt?(f(),o(`p`,ge,[n(r(s.prompt)+` `,1),s.modelValue?.response?a(``,!0):(f(),o(`span`,_e,` - (`+r(s.$t(`fish.status.pending`))+`) `,1))])):a(``,!0)]),s.audioUrl?(f(),o(`div`,ve,[e(`audio`,{src:s.audioUrl,controls:``,preload:`metadata`,class:`w-full mb-3`},null,8,ye),e(`div`,be,[i(_,{type:`info`,size:`small`,class:`mb-2`,onClick:l[0]||=t(e=>s.onDownload(s.audioUrl),[`stop`])},{default:u(()=>[n(r(s.$t(`fish.button.download`)),1)]),_:1}),i(v,{path:`/fish/tts`,body:s.modelValue?.request},null,8,[`body`])]),i(x,{closable:!1,class:`mt-2 success`},{default:u(()=>[s.modelValue?.request?.model?(f(),o(`p`,xe,[i(y,{icon:`fa-solid fa-microchip`,class:`mr-1`}),n(` `+r(s.$t(`fish.name.model`))+`: `+r(s.modelValue?.request?.model),1)])):a(``,!0),s.modelValue?.request?.reference_id?(f(),o(`p`,Se,[i(y,{icon:`fa-solid fa-microphone`,class:`mr-1`}),n(` `+r(s.$t(`fish.name.referenceId`))+`: `+r(s.modelValue?.request?.reference_id)+` `,1),i(b,{content:s.modelValue?.request?.reference_id},null,8,[`content`])])):a(``,!0),e(`p`,Ce,[i(y,{icon:`fa-solid fa-magic`,class:`mr-1`}),n(` `+r(s.$t(`fish.name.taskId`))+`: `+r(s.modelValue?.id)+` `,1),i(b,{content:s.modelValue?.id},null,8,[`content`])]),s.modelValue?.elapsed?(f(),o(`p`,we,[i(y,{icon:`fa-solid fa-clock`,class:`mr-1`}),n(` `+r(s.$t(`fish.name.elapsed`))+`: `+r(s.modelValue?.elapsed?.toFixed(2))+`s `,1)])):a(``,!0)]),_:1})])):(f(),o(`div`,Te,[i(x,{closable:!1,class:`info`},{default:u(()=>[e(`p`,Ee,[i(y,{icon:`fa-solid fa-magic`,class:`mr-1`}),n(` `+r(s.$t(`fish.name.taskId`))+`: `+r(s.modelValue?.id)+` `,1),i(b,{content:s.modelValue?.id},null,8,[`content`])])]),_:1})]))])])}var $=p({name:`FishRecentPanel`,components:{TaskPreview:x(le,[[`render`,De],[`__scopeId`,`data-v-754753f2`]]),BotPlaceholder:F,NoTasks:I,ScrollList:M},props:{loading:{type:Boolean,default:!1}},emits:[`reach-top`],computed:{tasks(){return{...this.$store.state.fish?.tasks,items:this.$store.state.fish?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Oe={key:0},ke={key:2,class:`w-full h-full flex items-center justify-center`};function Ae(e,t,n,r,p,m){let h=c(`bot-placeholder`),g=c(`task-preview`),_=c(`scroll-list`),v=c(`no-tasks`);return f(),o(s,null,[e.tasks?.items===void 0?(f(),o(`div`,Oe,[i(h)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(f(),l(_,{key:1,ref:`scrollList`,class:`tasks w-full h-full overflow-y-auto`,loading:e.loading,onReachTop:t[0]||=t=>e.$emit(`reach-top`)},{default:u(()=>[(f(!0),o(s,null,d(e.tasks?.items,e=>(f(),l(g,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]),_:1},8,[`loading`])):a(``,!0),e.tasks?.items?.length===0?(f(),o(`div`,ke,[i(v)])):a(``,!0)],64)}var je=p({name:`FishTtsIndex`,components:{ConfigPanel:ce,Layout:L,RecentPanel:x($,[[`render`,Ae]]),TabSwitcher:R},mixins:[ee],inject:[`initialized`],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.fish?.status?.getApplications===w.Request},tasksLoading(){return this.$store.state.fish?.status?.getTasks===w.Request||this.fetchingTasks},credential(){return this.$store.state.fish?.credential},config(){return this.$store.state.fish?.config},application(){return this.$store.state.fish?.application},tasks(){return this.$store.state.fish?.tasks}},watch:{initialized:{async handler(e){e&&(await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService(),await this.$store.dispatch(`fish/getVoices`)},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await N({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){await this.$store.dispatch(`fish/getService`)},async onScrollDown(){await this.$nextTick();let e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks)return;let{limit:t=5,createdAtMin:n,createdAtMax:r}=e||{};this.fetchingTasks=!0;try{await this.$store.dispatch(`fish/getTasks`,{limit:t,createdAtMin:n,createdAtMax:r})}finally{this.fetchingTasks=!1}},async onGenerate(){if(!C(this.uploadTracker,e=>this.$t(e),e=>E.warning(e)))return;let e=this.config??{},t=e.text?.trim();if(!t){E.warning(this.$t(`fish.message.textRequired`));return}if(!te())return;let n=this.credential?.token;if(!n){console.error(`no token specified`);return}let r=e.model||`s2-pro`,i={text:t,async:!0};e.reference_id&&(i.reference_id=e.reference_id),e.format&&(i.format=e.format),e.prosody&&Object.keys(e.prosody).length>0&&(i.prosody=e.prosody),E.info(this.$t(`fish.message.startingTask`)),D(`fish`,O.generateTts(i,{token:n,model:r})).then(()=>{E.success(this.$t(`fish.message.startTaskSuccess`))}).catch(e=>{(e?.response?.data)?.error?.code===`used_up`?E.error(this.$t(`fish.message.usedUp`)):E.error(this.$t(`fish.message.startTaskFailed`))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}}),Me={class:`flex flex-col h-full`},Ne={class:`flex-1 min-h-0`};function Pe(t,n,r,a,o,s){let d=c(`tab-switcher`),p=c(`config-panel`),m=c(`recent-panel`),h=c(`layout`);return f(),l(h,null,{config:u(()=>[e(`div`,Me,[i(d),e(`div`,Ne,[i(p,{onGenerate:t.onGenerate},null,8,[`onGenerate`])])])]),result:u(()=>[i(m,{ref:`recentPanel`,loading:t.loadingMore,onReachTop:t.onReachTop},null,8,[`loading`,`onReachTop`])]),_:1})}var Fe=x(je,[[`render`,Pe]]);export{Fe as default};
@@ -1 +0,0 @@
1
- import{Mi as e}from"./index-cCWV4sVD.js";var t=e(`PushNotifications`,{});export{t as PushNotifications};
@@ -1 +0,0 @@
1
- import{dt as e}from"./constants-CzGOanfS.js";import{cr as t,mn as n}from"./index-cCWV4sVD.js";import{t as r}from"./createTaskActions-D5hw_qN8.js";var i=r({serviceId:e,operator:n,type:`fish_tts`}),a=async({commit:e,state:t})=>{let r=t.credential?.token;if(r)try{let{data:t}=await n.listModels({self:!0,page_size:50,page_number:1},{token:r});return e(`setVoices`,t?.items??[]),t?.items??[]}catch(e){console.error(`fish.getVoices failed`,e);return}},o={namespaced:!0,state:t,mutations:{setTasks:(e,t)=>{e.tasks=t},setApplication:(e,t)=>{e.application=t},setApplications:(e,t)=>{e.applications=t},setConfig:(e,t)=>{e.config=t},setCredential:(e,t)=>{e.credential=t},setService:(e,t)=>{e.service=t},setTasksActive:(e,t)=>{e.tasks={...e.tasks,active:t}},setTasksItems:(e,t)=>{e.tasks={...e.tasks,items:t}},setTasksTotal:(e,t)=>{e.tasks={...e.tasks,total:t}},setVoices:(e,t)=>{e.voices=t},resetAll:e=>{Object.assign(e,t())}},actions:{...i,getVoices:a}};export{o as default,o as fish};