@acedatacloud/nexior 3.343.0 → 3.343.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 (248) hide show
  1. package/dist/assets/{ApiCodeButton-V0PNC5hd.js → ApiCodeButton-BnhZ1r3c.js} +1 -1
  2. package/dist/assets/{Artifacts-BYeOc8nC.js → Artifacts-CaJxmQOP.js} +1 -1
  3. package/dist/assets/{AskUserQuestionCard-tUwIOzad.js → AskUserQuestionCard-CMkeSMFn.js} +1 -1
  4. package/dist/assets/{AudioPreview-QhwYz5OI.js → AudioPreview-bocLH6sL.js} +1 -1
  5. package/dist/assets/{Auth-By5V9Nsl.js → Auth-BRupoyMh.js} +1 -1
  6. package/dist/assets/{Bare-zd2QVMDl.js → Bare-BAhPcFz_.js} +1 -1
  7. package/dist/assets/{BotPlaceholder-BMeL50cE.js → BotPlaceholder-B6Y-k016.js} +1 -1
  8. package/dist/assets/{BottomFooter-YKs8pno9.js → BottomFooter-CYGg2B0I.js} +1 -1
  9. package/dist/assets/{Callback-CpOQU4dn.js → Callback-CnPlFK8U.js} +1 -1
  10. package/dist/assets/{CodeSnippet-Bn21xWAq.js → CodeSnippet-BTyXtTEF.js} +1 -1
  11. package/dist/assets/{Console-CvO0gQ1x.js → Console-CAvKfZXu.js} +1 -1
  12. package/dist/assets/{Consumption-DWMEoulW.js → Consumption-BdZ1c3ei.js} +1 -1
  13. package/dist/assets/{Conversation-bPD472U7.js → Conversation-SPaNEZ42.js} +1 -1
  14. package/dist/assets/{Conversation-BLCU8-T1.js → Conversation-gQ1OYZa4.js} +1 -1
  15. package/dist/assets/{CopyToClipboard-DAsxz05c.js → CopyToClipboard-DTo9jexV.js} +1 -1
  16. package/dist/assets/{Detail-D1ncfV4P.js → Detail-1gsV1ZX_.js} +2 -2
  17. package/dist/assets/{Extra-D9m665NV.js → Extra-jQ-L_eB4.js} +1 -1
  18. package/dist/assets/{FilePreview-D4-VAXV8.js → FilePreview-UA-4U2mr.js} +1 -1
  19. package/dist/assets/{Hailuo-BHAsd96T.js → Hailuo-BFCWw87y.js} +1 -1
  20. package/dist/assets/{History-CoNbrEJD.js → History-CVrTdGB6.js} +1 -1
  21. package/dist/assets/{ImagePreview-0F7lED-X.js → ImagePreview-C_R7broQ.js} +1 -1
  22. package/dist/assets/{ImageWrapper-Cdezi8bX.js → ImageWrapper-BRkG-4ZC.js} +1 -1
  23. package/dist/assets/{Index-9pYDV1qL2.js → Index-0iY0sqJS2.js} +1 -1
  24. package/dist/assets/{Index-CNdop1tw.js → Index-B2VQCAmi.js} +1 -1
  25. package/dist/assets/{Index-D7c_yBVK.js → Index-B4Yr4_IJ.js} +1 -1
  26. package/dist/assets/{Index-DM9BjAa_.js → Index-B7vA1RBY.js} +1 -1
  27. package/dist/assets/{Index-044Ro6Bq.js → Index-BMFXyYUN.js} +1 -1
  28. package/dist/assets/{Index-UfXAAmxF.js → Index-BXGee7g2.js} +1 -1
  29. package/dist/assets/{Index-CxTGG9bk.js → Index-BZ14Y3ha.js} +1 -1
  30. package/dist/assets/{Index-BbI2zF5S.js → Index-BZxLL7gj.js} +1 -1
  31. package/dist/assets/{Index-BxeRFkXY.js → Index-Boqj6Yd-.js} +1 -1
  32. package/dist/assets/{Index-CBxCduYm.js → Index-BpnILkwN.js} +1 -1
  33. package/dist/assets/{Index-Br0lmVsx.js → Index-BszbJEWT.js} +1 -1
  34. package/dist/assets/{Index-4U6r-iaT.js → Index-C5btuUth.js} +1 -1
  35. package/dist/assets/{Index-BI4EKdo6.js → Index-C7kvIfwU.js} +1 -1
  36. package/dist/assets/{Index-BGz-O4np.js → Index-CFw1FLwn.js} +1 -1
  37. package/dist/assets/{Index-CqvCKSL3.js → Index-CGtZfo1E.js} +1 -1
  38. package/dist/assets/{Index-BRNk-wiu2.js → Index-CILcMy4D2.js} +1 -1
  39. package/dist/assets/{Index-njQy9uD5.js → Index-CKLSGpvZ.js} +1 -1
  40. package/dist/assets/{Index-Dcl6fiB52.js → Index-CRI6tbcL2.js} +1 -1
  41. package/dist/assets/{Index-CFeWQRUh.js → Index-CVGgzdrS.js} +1 -1
  42. package/dist/assets/{Index-BvHEIXrL.js → Index-C_IfEwca.js} +1 -1
  43. package/dist/assets/{Index-CBDDxJWV.js → Index-Cq_PuYdW.js} +1 -1
  44. package/dist/assets/{Index-BlOKNnPe.js → Index-Cw-2P5EZ.js} +1 -1
  45. package/dist/assets/{Index-CtFzRWS_.js → Index-D1aHn9gj.js} +1 -1
  46. package/dist/assets/{Index-DdRXx7GK.js → Index-DOmk_Fm5.js} +1 -1
  47. package/dist/assets/{Index-BqAm4pVA.js → Index-DhBKPEna.js} +1 -1
  48. package/dist/assets/{Index-DpuLXWul.js → Index-FZep4Y2l.js} +1 -1
  49. package/dist/assets/{Index-cuj6_xMs.js → Index-LpcbHK6O.js} +1 -1
  50. package/dist/assets/{Index-DCSQepKp.js → Index-TJFSha-j.js} +1 -1
  51. package/dist/assets/{Index-o_YjysBO2.js → Index-UetzJVKI2.js} +1 -1
  52. package/dist/assets/{Index-DDAs6VA4.js → Index-V3b5jGGJ.js} +1 -1
  53. package/dist/assets/{Index-BPe5qtsb.js → Index-cmCF0tfO.js} +1 -1
  54. package/dist/assets/{Index-DGkriLhl.js → Index-xttUMrEs.js} +1 -1
  55. package/dist/assets/{Invitees-CcDTR8z9.js → Invitees-Tw81KutK.js} +1 -1
  56. package/dist/assets/{List-B9Ona_vK.js → List-CJy8am6o.js} +1 -1
  57. package/dist/assets/{List-BQYD9zNq.js → List-ZGE8PGhI.js} +1 -1
  58. package/dist/assets/{List-BzV12ot6.js → List-oe2KAJIP.js} +1 -1
  59. package/dist/assets/{LocalTools-BUZ3lh8b.js → LocalTools-CldMvgMI.js} +1 -1
  60. package/dist/assets/{LocalTools-Daqzp_fD.js → LocalTools-DB2mlE-7.js} +1 -1
  61. package/dist/assets/{Main-B8FxEpkO.js → Main-D7crVqTv.js} +1 -1
  62. package/dist/assets/Message-BGlON6N3.js +3 -0
  63. package/dist/assets/{Message-CfavcneZ.css → Message-BILkIWmS.css} +1 -1
  64. package/dist/assets/{Model-CqTlz_rR.js → Model-Bt0uhJJ0.js} +1 -1
  65. package/dist/assets/{Navigator-B3vGoST6.js → Navigator-BcD0NEVT.js} +3 -3
  66. package/dist/assets/{NotFound-Btr_yyEF.js → NotFound-DskbKuWo.js} +1 -1
  67. package/dist/assets/{Pay-DubZaprl.js → Pay-Bu4lkOAy.js} +1 -1
  68. package/dist/assets/{Player-DQrkjYkn.js → Player-BWPSNIsG.js} +1 -1
  69. package/dist/assets/{Poivelle-DGzubWIL.js → Poivelle-Bnsu9gZ6.js} +1 -1
  70. package/dist/assets/{PromptTextarea-BdxR43fI.js → PromptTextarea-DSF00J6p.js} +1 -1
  71. package/dist/assets/{RealtimeCall-hvx4LO61.js → RealtimeCall-Ctrjch7s.js} +1 -1
  72. package/dist/assets/{ScheduledTasks-DQysrq5o.js → ScheduledTasks-rQlsednu.js} +1 -1
  73. package/dist/assets/{Status-BhmBIYFW.js → Status-DAAA1AAC.js} +1 -1
  74. package/dist/assets/{Subscribe-vSoI-fH8.js → Subscribe-RqlJCxg9.js} +1 -1
  75. package/dist/assets/{TabSwitcher-XBC7Wgfm.js → TabSwitcher-D1Zx36SR.js} +1 -1
  76. package/dist/assets/{Tts-BCxb2qXy.js → Tts-kpu-QIej.js} +1 -1
  77. package/dist/assets/{VideoPlayer-DTVJVKri.js → VideoPlayer-K-a68Yxk.js} +1 -1
  78. package/dist/assets/{alert-BY_joJSO.js → alert-C16GyeJ_.js} +1 -1
  79. package/dist/assets/arrow-down-DaxXAapG.js +1 -0
  80. package/dist/assets/{arrow-down-wide-narrow-BBwnqJqv.js → arrow-down-wide-narrow-BGo5iUya.js} +1 -1
  81. package/dist/assets/arrow-left-CMgkzUy4.js +1 -0
  82. package/dist/assets/arrow-right-CkqFf1lT.js +1 -0
  83. package/dist/assets/arrow-up-D0O3p4cy.js +1 -0
  84. package/dist/assets/{avatar-lZyFrAl_.js → avatar-CMbnWo1W.js} +1 -1
  85. package/dist/assets/{basic-C8Bta_Tj.js → basic-CNPEecVF.js} +1 -1
  86. package/dist/assets/{book-open-G49d0HIY.js → book-open-DSJyv-Tq.js} +1 -1
  87. package/dist/assets/{box-BOmBNuoO.js → box-BT9y4YFN.js} +1 -1
  88. package/dist/assets/{boxes-OXfwrz_Y.js → boxes-dPE_g6A1.js} +1 -1
  89. package/dist/assets/{brain-CjtFB784.js → brain-BxL5I621.js} +1 -1
  90. package/dist/assets/{chart-no-axes-combined-BHuW8WfQ.js → chart-no-axes-combined-PZoqng3S.js} +1 -1
  91. package/dist/assets/{chat-CiLnEkUF.js → chat-BJhOSKKx.js} +1 -1
  92. package/dist/assets/check-Jfe3Th-Y.js +1 -0
  93. package/dist/assets/chevron-down-fSJrrHQk.js +1 -0
  94. package/dist/assets/chevron-right-CUmIF3cC.js +1 -0
  95. package/dist/assets/circle-check-DkiYC-4D.js +1 -0
  96. package/dist/assets/{circle-question-mark-DD9uSbOU.js → circle-question-mark-tBuKgAmQ.js} +1 -1
  97. package/dist/assets/{clipboard-list-BwXfk8sx.js → clipboard-list-BWvm3BDS.js} +1 -1
  98. package/dist/assets/clock-BMPDGdzS.js +1 -0
  99. package/dist/assets/code-BsYG89RQ.js +1 -0
  100. package/dist/assets/{codingBridge-RDeuAMgB.js → codingBridge-BJi_ckQz.js} +1 -1
  101. package/dist/assets/{codingBridgeNotify-B4B5G7Va.js → codingBridgeNotify-c55KEyJp.js} +2 -2
  102. package/dist/assets/{coins-DcJKW6bq.js → coins-BufMrWPi.js} +1 -1
  103. package/dist/assets/{collapse-2ZkQBwEA.js → collapse-EtgNqWAr.js} +1 -1
  104. package/dist/assets/{copy-ZC2WLlnJ.js → copy-0lsL87Wd.js} +1 -1
  105. package/dist/assets/{createTaskActions-BY8s7Yjy.js → createTaskActions-9dfgMEbH.js} +1 -1
  106. package/dist/assets/{digitalhuman-qp3ZgdPE.js → digitalhuman-B0uTHRKp.js} +1 -1
  107. package/dist/assets/{dollar-sign-mIKoeQxp.js → dollar-sign-CfOsLLKY.js} +1 -1
  108. package/dist/assets/{download-LDDA2n95.js → download-BWU-lZHT.js} +1 -1
  109. package/dist/assets/{drawer-DdjNUdLN.js → drawer-D_3Ux5r0.js} +1 -1
  110. package/dist/assets/{dropdown-CMiXxU1B.js → dropdown-mcMMCG7K.js} +1 -1
  111. package/dist/assets/{dropdown-D0WY3qJO.js → dropdown-w_5tAQr5.js} +1 -1
  112. package/dist/assets/{ellipsis-CP-BL-iO.js → ellipsis-sveOlT_Y.js} +1 -1
  113. package/dist/assets/{esm-4VTl49X9.js → esm-9mO1n0Mh.js} +3 -3
  114. package/dist/assets/{esm-Bp3iQn3w.js → esm-BPRNiHle.js} +1 -1
  115. package/dist/assets/{esm-D3ExGrJd.js → esm-Bucp_n66.js} +2 -2
  116. package/dist/assets/{esm-Yweo4ODl.js → esm-CO9x-2vR.js} +1 -1
  117. package/dist/assets/{esm-DMgweWk_.js → esm-CTHpz8-o.js} +2 -2
  118. package/dist/assets/esm-CtLuh6nv.js +1 -0
  119. package/dist/assets/{esm-gmc8Tpjs.js → esm-DwwA4_JY.js} +1 -1
  120. package/dist/assets/{external-link-CiFxVqfE.js → external-link-2Z2kMqFE.js} +1 -1
  121. package/dist/assets/{eye-DI6pShDu.js → eye-DCxnyN3d.js} +1 -1
  122. package/dist/assets/{file-B80udnm7.js → file-CoeAd2zT.js} +1 -1
  123. package/dist/assets/{file-output-BAi6qoc7.js → file-output-TEwR2dNe.js} +1 -1
  124. package/dist/assets/{file-text-BhROIBYy.js → file-text-D9BhZW2U.js} +1 -1
  125. package/dist/assets/{fish-BRLJYUAO.js → fish-Bsv53DVE.js} +1 -1
  126. package/dist/assets/{flux-DfBqyacW.js → flux-6Ii4OUKH.js} +1 -1
  127. package/dist/assets/{folder-txym0RUE.js → folder-DF_k--vf.js} +1 -1
  128. package/dist/assets/gauge-B5TeYhb-.js +1 -0
  129. package/dist/assets/{globe-BIvs6o6q.js → globe-UEaaaNoJ.js} +1 -1
  130. package/dist/assets/{grokvideo-Bou5B1Uj.js → grokvideo-C4fp9yAt.js} +1 -1
  131. package/dist/assets/{hailuo-DMzGp4xb.js → hailuo-ABggZ67q.js} +1 -1
  132. package/dist/assets/{headphones-rnilQWSF.js → headphones-D7x1YAMx.js} +1 -1
  133. package/dist/assets/{history-N-pozsdR.js → history-Ck2WpVat.js} +1 -1
  134. package/dist/assets/{house-BoRR2eE1.js → house-Dp_D0oeZ.js} +1 -1
  135. package/dist/assets/{image-Ctt9oB_3.js → image-DRW5OCUW.js} +1 -1
  136. package/dist/assets/{index-NQhLFvCT.js → index-CX5tT44B.js} +4 -4
  137. package/dist/assets/{index.browser.esm-BWIAsVvx.js → index.browser.esm-1yA9M6CC.js} +1 -1
  138. package/dist/assets/{index.es-o35-q5Jn.js → index.es-QIK6Za0X.js} +1 -1
  139. package/dist/assets/{info-RB2UKcjL.js → info-BqYsJSgm.js} +1 -1
  140. package/dist/assets/{input-number-Dz4VZooF.js → input-number-mWiCY8x-.js} +1 -1
  141. package/dist/assets/{key-round-Cq1XDG6i.js → key-round-B-7vmYcK.js} +1 -1
  142. package/dist/assets/{kling-ChTIJza1.js → kling-B6pPbqGQ.js} +1 -1
  143. package/dist/assets/{languages-OIQ5tSKm.js → languages-C3fLU8tJ.js} +1 -1
  144. package/dist/assets/{laptop-CXKAiyi1.js → laptop-DLmDa5cm.js} +1 -1
  145. package/dist/assets/{lightbulb-CSEYdZB7.js → lightbulb-0wAwGzn1.js} +1 -1
  146. package/dist/assets/{link-DBLtRDbw.js → link-vzT89AJs.js} +1 -1
  147. package/dist/assets/loader-circle-BZ_qzblK.js +1 -0
  148. package/dist/assets/{lock-ncHLf-gT.js → lock-CuveUOB_.js} +1 -1
  149. package/dist/assets/{luma-T60Sxoxa.js → luma-CBATmP2O.js} +1 -1
  150. package/dist/assets/{maestro-CSLWUtZt.js → maestro-CAZq6DTw.js} +1 -1
  151. package/dist/assets/{mail-D9oBZXHV.js → mail-OkfIgZvZ.js} +1 -1
  152. package/dist/assets/{message-circle-Dr6hubpu.js → message-circle-FxSQMQ04.js} +1 -1
  153. package/dist/assets/{mic-D2DowRjY.js → mic-i8JOGAbe.js} +1 -1
  154. package/dist/assets/{midjourney-CYUTkNWu.js → midjourney-gkvwOOeo.js} +1 -1
  155. package/dist/assets/{mobileLocalExec-k-5trNVt.js → mobileLocalExec-CGZHthaT.js} +2 -2
  156. package/dist/assets/{monitor-Cmqb9sW9.js → monitor-EO0RvNrv.js} +1 -1
  157. package/dist/assets/{mouse-pointer-2-B90DsmXY.js → mouse-pointer-2-CPtgnbQR.js} +1 -1
  158. package/dist/assets/music-2-Da1AgiG2.js +1 -0
  159. package/dist/assets/{nanobanana-BvKdAjiT.js → nanobanana-Boq7_JZY.js} +1 -1
  160. package/dist/assets/{omni-COmbH6WS.js → omni-e5RucB9v.js} +1 -1
  161. package/dist/assets/{openaiimage-DNCUohcn.js → openaiimage-CecDzHo_.js} +1 -1
  162. package/dist/assets/{pagination-D0u3tuFM.js → pagination-BGdyJzOy.js} +1 -1
  163. package/dist/assets/{pagination-D_6MZ9Xf.js → pagination-D60ws_82.js} +1 -1
  164. package/dist/assets/{pagination-CFcD1SQE.js → pagination-SRh1R-Wq.js} +1 -1
  165. package/dist/assets/{palette-BvIE3Qr-.js → palette-CJs4iujU.js} +1 -1
  166. package/dist/assets/{paperclip-oOuIi8Qk.js → paperclip-B8vIHRoV.js} +1 -1
  167. package/dist/assets/{pause-Chqy-1mW.js → pause-DKV3CUc2.js} +1 -1
  168. package/dist/assets/{pencil-DMujlmFy.js → pencil-DBnzAthV.js} +1 -1
  169. package/dist/assets/{pika-DvEpF-Y5.js → pika-uSymPQgW.js} +1 -1
  170. package/dist/assets/{pixverse-Vyq3UFYx.js → pixverse-DJoTHlvm.js} +1 -1
  171. package/dist/assets/play-DxJ3LldF.js +1 -0
  172. package/dist/assets/{plug-CkDQ51_L.js → plug-DbhoeWq8.js} +1 -1
  173. package/dist/assets/plus-Cjb15y66.js +1 -0
  174. package/dist/assets/{poivelle-DXySdil3.js → poivelle-D2KkNd5j.js} +1 -1
  175. package/dist/assets/{popover-CKdKLGKL.js → popover-Bwr3zebM.js} +1 -1
  176. package/dist/assets/{producer-Bgo4swLN.js → producer-Cxno7MHc.js} +1 -1
  177. package/dist/assets/{qrart-pSMfz59P.js → qrart-B_O2hSUW.js} +1 -1
  178. package/dist/assets/{realtime-Cfve3bp8.js → realtime-DPnxL6F4.js} +1 -1
  179. package/dist/assets/{refresh-cw-BP2lZ4Io.js → refresh-cw-XK6d1Rrn.js} +1 -1
  180. package/dist/assets/rotate-ccw-Bd5EpOiS.js +1 -0
  181. package/dist/assets/rotate-cw-DhiaU2S1.js +1 -0
  182. package/dist/assets/{row-KG3FewmS.js → row-CJFGEaUu.js} +1 -1
  183. package/dist/assets/search-Bh1--Pgw.js +1 -0
  184. package/dist/assets/{seedance-Bds_eiU6.js → seedance-DU1j5J-g.js} +1 -1
  185. package/dist/assets/{seedream-eX9gchwX.js → seedream-CArwJJXh.js} +1 -1
  186. package/dist/assets/{select-LvaKgyRc.js → select-dFQR69yU.js} +1 -1
  187. package/dist/assets/{serp-D5x3oibU.js → serp-CrnveDjz.js} +1 -1
  188. package/dist/assets/{shield-DsobIZ9Z.js → shield-CD-cwA-R.js} +1 -1
  189. package/dist/assets/{shuffle-DTRD25qg.js → shuffle-CNtL7bxS.js} +1 -1
  190. package/dist/assets/{slider-DTkR70h5.js → slider-CkoC7Vaw.js} +1 -1
  191. package/dist/assets/{sliders-horizontal-B9zIWPLK.js → sliders-horizontal-C_QkROg-.js} +1 -1
  192. package/dist/assets/{solana-wallets-C3-1zaf5.js → solana-wallets-prYscF3m.js} +2 -2
  193. package/dist/assets/{solana-wallets-vue-tqXpV-EK.js → solana-wallets-vue-DEUEO5z0.js} +1 -1
  194. package/dist/assets/{sora-CRXgdPdI.js → sora-CzwyO5Uf.js} +1 -1
  195. package/dist/assets/{sparkles-ZIpFDwe5.js → sparkles-oT2sABLz.js} +1 -1
  196. package/dist/assets/square-CBVTZP_r.js +1 -0
  197. package/dist/assets/{store-ejQKhlRj.js → store-B5vEOT3v.js} +1 -1
  198. package/dist/assets/{suno-DuvxR84W.js → suno-YHGQYMc-.js} +1 -1
  199. package/dist/assets/{switch-DAdN8Vh2.js → switch-DvY2NqFp.js} +1 -1
  200. package/dist/assets/{table-DG76fdz9.js → table-TGYHw4HJ.js} +1 -1
  201. package/dist/assets/{tabs--xygkAUx.js → tabs-zBQZp7-W.js} +1 -1
  202. package/dist/assets/{tag-CpHzgK0_.js → tag-DX9-5Mti.js} +1 -1
  203. package/dist/assets/terminal-Dzk8plxI.js +1 -0
  204. package/dist/assets/{time-picker-mD-BhI85.js → time-picker-fxAwDpta.js} +1 -1
  205. package/dist/assets/{tooltip-Dy1LvOzq.js → tooltip-DQRB5WQe.js} +1 -1
  206. package/dist/assets/{trash-2-D_NoEBBp.js → trash-2-DooQKonb.js} +1 -1
  207. package/dist/assets/{triangle-alert-BK4-7oIL.js → triangle-alert-CFrX8gEt.js} +1 -1
  208. package/dist/assets/{upload-DqEeyoiI.js → upload-CfWJ5heB.js} +1 -1
  209. package/dist/assets/{upload-D_Iy8VUb.js → upload-Dc_bG_Na.js} +1 -1
  210. package/dist/assets/user-BkFnDeCc.js +1 -0
  211. package/dist/assets/{veo-BJbqBk7K.js → veo-P9G1eZDl.js} +1 -1
  212. package/dist/assets/{video-Ce-Ja6Ku.js → video-B4V6U2Lt.js} +1 -1
  213. package/dist/assets/{volume-2-B0OmSr3V.js → volume-2-CBU3mumY.js} +1 -1
  214. package/dist/assets/{wallet-D16wnA4X.js → wallet-tXZJhZb4.js} +1 -1
  215. package/dist/assets/{wan-CHl84oZe.js → wan-B1_lze58.js} +1 -1
  216. package/dist/assets/{wand-sparkles-CpJf9L5C.js → wand-sparkles-DCARF_Gq.js} +1 -1
  217. package/dist/assets/{web-ChLkUjRK.js → web-BCgE-YPT.js} +1 -1
  218. package/dist/assets/{web-CjHGXeZy.js → web-BDLdne_6.js} +1 -1
  219. package/dist/assets/{web-2rte_Iql.js → web-DqXv8HYa.js} +1 -1
  220. package/dist/assets/{web-R9wbecSS.js → web-Dt3i8jv0.js} +1 -1
  221. package/dist/assets/{web-sM2d7cVw.js → web-wPabi9Z9.js} +1 -1
  222. package/dist/assets/{webextrator-CPKVHzM9.js → webextrator-CHz758G4.js} +1 -1
  223. package/dist/assets/{zap-DDJuUmtO.js → zap-BmraLjdI.js} +1 -1
  224. package/dist/index.html +1 -1
  225. package/package.json +1 -1
  226. package/dist/assets/Message-VvwjEOcv.js +0 -3
  227. package/dist/assets/arrow-down-wSWETU-Z.js +0 -1
  228. package/dist/assets/arrow-left-8-Xw7Ohz.js +0 -1
  229. package/dist/assets/arrow-right-wypyEZlo.js +0 -1
  230. package/dist/assets/arrow-up-CD-EsIda.js +0 -1
  231. package/dist/assets/check-DI-MESEH.js +0 -1
  232. package/dist/assets/chevron-down-WfupmEeM.js +0 -1
  233. package/dist/assets/chevron-right-CF-4xDq-.js +0 -1
  234. package/dist/assets/circle-check-r9lU9RtY.js +0 -1
  235. package/dist/assets/clock-otSJpi4t.js +0 -1
  236. package/dist/assets/code-D3E3xVo1.js +0 -1
  237. package/dist/assets/esm-B6hBOBRW.js +0 -1
  238. package/dist/assets/gauge-BBuq5rxO.js +0 -1
  239. package/dist/assets/loader-circle-Cw68u1V8.js +0 -1
  240. package/dist/assets/music-2-DmEjQhJK.js +0 -1
  241. package/dist/assets/play-vgkRlP0T.js +0 -1
  242. package/dist/assets/plus-By5Qacpg.js +0 -1
  243. package/dist/assets/rotate-ccw-wk763BVv.js +0 -1
  244. package/dist/assets/rotate-cw-DY3HK_Vz.js +0 -1
  245. package/dist/assets/search-BfbZESba.js +0 -1
  246. package/dist/assets/square-CwMDSLCu.js +0 -1
  247. package/dist/assets/terminal-p3haoUR9.js +0 -1
  248. package/dist/assets/user-Dzf5Fm_O.js +0 -1
@@ -1 +1 @@
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,T as c,at as l,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{t as h}from"./upload-DqEeyoiI.js";import{t as g}from"./alert-BY_joJSO.js";import{n as _,r as v}from"./radio-DgDgyT2l.js";import{t as y}from"./switch-DAdN8Vh2.js";import{t as b}from"./book-open-G49d0HIY.js";import{t as x}from"./check-DI-MESEH.js";import{t as S}from"./eye-DI6pShDu.js";import{t as C}from"./mic-D2DowRjY.js";import{t as w}from"./rotate-ccw-wk763BVv.js";import{t as T}from"./shuffle-DTRD25qg.js";import{t as E}from"./square-CwMDSLCu.js";import{t as D}from"./upload-D_Iy8VUb.js";import{t as O}from"./volume-2-B0OmSr3V.js";import{t as k}from"./wand-sparkles-CpJf9L5C.js";import{t as A}from"./vendor-axios-Ck2ffRoh.js";import"./constants-Dm-HitpB.js";import{E as j,Ji as ee,Oi as te,Sn as ne,Ti as M,Wt as N,di as P,in as F,rt as I,zi as L}from"./index-NQhLFvCT.js";import{t as R}from"./CopyToClipboard-DAsxz05c.js";import{t as z}from"./BotPlaceholder-BMeL50cE.js";import{t as B}from"./Hailuo-BHAsd96T.js";import{t as V}from"./TabSwitcher-XBC7Wgfm.js";var H=4,U=90,W=m({name:`FishRecorder`,components:{ConfirmIcon:x,DocsIcon:b,MicrophoneIcon:C,ShuffleIcon:T,StopIcon:E,UndoIcon:w,ElButton:L},emits:[`done`,`cancel`,`update:script`],data(){return{state:`idle`,scriptIndex:0,seconds:0,timerId:0,maxTimerId:0,mediaRecorder:null,stream:null,chunks:[],recordedBlob:null,recordedUrl:``,uploading:!1}},computed:{formattedTime(){let e=Math.floor(this.seconds/60),t=this.seconds%60;return`${e.toString().padStart(2,`0`)}:${t.toString().padStart(2,`0`)}`},currentScript(){let e=`fish.script.passage${this.scriptIndex%H+1}`;return this.$t(e)}},beforeUnmount(){this.cleanup()},mounted(){this.$emit(`update:script`,this.currentScript)},methods:{nextScript(){this.scriptIndex=(this.scriptIndex+1)%H,this.$emit(`update:script`,this.currentScript)},async startRecord(){if(!navigator.mediaDevices?.getUserMedia||typeof MediaRecorder>`u`){M.error(this.$t(`fish.message.recorderUnsupported`));return}try{this.stream=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(e){let t=e?.name===`NotAllowedError`||e?.name===`PermissionDeniedError`;M.error(this.$t(t?`fish.message.micDenied`:`fish.message.micError`));return}this.chunks=[];let e=this.pickMimeType();try{this.mediaRecorder=e?new MediaRecorder(this.stream,{mimeType:e}):new MediaRecorder(this.stream)}catch{this.mediaRecorder=new MediaRecorder(this.stream)}this.mediaRecorder.ondataavailable=e=>{e.data&&e.data.size>0&&this.chunks.push(e.data)},this.mediaRecorder.onstop=()=>{let e=new Blob(this.chunks,{type:this.mediaRecorder?.mimeType||`audio/webm`});this.recordedBlob=e,this.recordedUrl=URL.createObjectURL(e),this.state=`recorded`,this.releaseStream()},this.mediaRecorder.start(),this.state=`recording`,this.seconds=0,this.timerId=window.setInterval(()=>{this.seconds++},1e3),this.maxTimerId=window.setTimeout(()=>{this.state===`recording`&&this.stopRecord()},U*1e3)},stopRecord(){this.mediaRecorder&&this.mediaRecorder.state!==`inactive`&&this.mediaRecorder.stop(),window.clearInterval(this.timerId),window.clearTimeout(this.maxTimerId)},reset(){this.recordedUrl&&URL.revokeObjectURL(this.recordedUrl),this.recordedUrl=``,this.recordedBlob=null,this.state=`idle`,this.seconds=0},onCancel(){this.cleanup(),this.$emit(`cancel`)},cleanup(){this.stopRecord(),this.releaseStream(),this.recordedUrl&&URL.revokeObjectURL(this.recordedUrl)},releaseStream(){this.stream?.getTracks().forEach(e=>e.stop()),this.stream=null},pickMimeType(){for(let e of[`audio/webm;codecs=opus`,`audio/webm`,`audio/mp4`,`audio/ogg`])if(typeof MediaRecorder<`u`&&MediaRecorder.isTypeSupported?.(e))return e},extensionForMime(e){return e.includes(`webm`)?`webm`:e.includes(`mp4`)?`m4a`:e.includes(`ogg`)?`ogg`:e.includes(`wav`)?`wav`:`mp3`},async useRecording(){if(this.recordedBlob){if(this.seconds<3){M.warning(this.$t(`fish.message.recordingTooShort`));return}this.uploading=!0;try{let e=this.$store.state.token?.access,t=this.extensionForMime(this.recordedBlob.type||``),n=new File([this.recordedBlob],`recording-${Date.now()}.${t}`,{type:this.recordedBlob.type||`audio/webm`}),r=new FormData;r.append(`file`,n);let{data:i}=await A.post(`${P()}/api/v1/files/`,r,{headers:{Authorization:`Bearer ${e}`}}),a=i?.file_url;if(!a){M.error(this.$t(`fish.message.uploadError`));return}this.$emit(`done`,{url:a,text:this.currentScript})}catch(e){M.error(this.$t(`fish.message.uploadError`)),console.error(`recorder upload failed`,e)}finally{this.uploading=!1}}}}}),G={class:`recorder`},K={key:0,class:`script`},q={class:`script-header`},J={class:`label`},Y={class:`script-text`},X={class:`controls`},Z={class:`status`},re={class:`hint`},ie={key:1,class:`preview`},ae=[`src`],oe={class:`preview-actions`},se={class:`footer`};function ce(t,c,f,m,h,g){let _=l(`docs-icon`),v=l(`shuffle-icon`),y=l(`el-button`),b=l(`microphone-icon`),x=l(`stop-icon`),S=l(`undo-icon`),C=l(`confirm-icon`);return p(),s(`div`,G,[t.state===`recorded`?o(``,!0):(p(),s(`div`,K,[e(`div`,q,[a(_,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,J,i(t.$t(`fish.description.readScript`)),1),a(y,{link:``,size:`small`,class:`ml-auto`,disabled:t.state===`recording`,onClick:t.nextScript},{default:d(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.nextScript`)),1)]),_:1},8,[`disabled`,`onClick`])]),e(`p`,Y,i(t.currentScript),1)])),e(`div`,X,[t.state===`idle`?(p(),u(y,{key:0,type:`danger`,circle:``,size:`large`,title:t.$t(`fish.button.startRecord`),"aria-label":t.$t(`fish.button.startRecord`),onClick:t.startRecord},{default:d(()=>[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`title`,`aria-label`,`onClick`])):t.state===`recording`?(p(),u(y,{key:1,type:`warning`,circle:``,size:`large`,title:t.$t(`fish.button.stopRecord`),"aria-label":t.$t(`fish.button.stopRecord`),onClick:t.stopRecord},{default:d(()=>[a(x,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`title`,`aria-label`,`onClick`])):o(``,!0),e(`div`,Z,[e(`span`,{class:n([`timer`,t.state===`recording`?`live`:``])},i(t.formattedTime),3),e(`span`,re,i(t.state===`idle`?t.$t(`fish.description.recorderIdle`):t.state===`recording`?t.$t(`fish.description.recorderRecording`):t.$t(`fish.description.recorderRecorded`)),1)])]),t.state===`recorded`&&t.recordedUrl?(p(),s(`div`,ie,[e(`audio`,{src:t.recordedUrl,controls:``,preload:`metadata`,class:`w-full`},null,8,ae),e(`div`,oe,[a(y,{size:`small`,disabled:t.uploading,onClick:t.reset},{default:d(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.reRecord`)),1)]),_:1},8,[`disabled`,`onClick`]),a(y,{size:`small`,type:`primary`,loading:t.uploading,onClick:t.useRecording},{default:d(()=>[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.useRecording`)),1)]),_:1},8,[`loading`,`onClick`])])])):o(``,!0),e(`div`,se,[a(y,{link:``,size:`small`,disabled:t.uploading||t.state===`recording`,onClick:t.onCancel},{default:d(()=>[r(i(t.$t(`fish.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var le=j(W,[[`render`,ce],[`__scopeId`,`data-v-40e201f8`]]),ue=50*1024*1024,Q=()=>({title:``,description:``,texts:``,voicesUrl:``,visibility:`private`,trainMode:`fast`,enhanceAudio:!0,generateSample:!1}),de=m({name:`FishModelConfigPanel`,components:{MagicIcon:k,MicrophoneIcon:C,UndoIcon:w,UploadIcon:D,ElButton:L,ElInput:ee,ElRadioButton:_,ElRadioGroup:v,ElSwitch:y,ElUpload:h,Recorder:le},mixins:[N],emits:[`create`],data(){return{form:Q(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return P()+`/api/v1/files/`},uploadHeaders(){return{Authorization:`Bearer ${this.$store.state.token?.access}`}},canCreate(){return!!this.form.title.trim()&&!!this.form.voicesUrl&&!this.uploading&&!this.creating},supportsRecorder(){return!!(typeof navigator<`u`?navigator.mediaDevices:void 0)?.getUserMedia&&typeof MediaRecorder<`u`}},methods:{onBeforeUpload(e){return e.size>ue?(M.warning(this.$t(`fish.message.audioSizeExceed`)),!1):(this.uploading=!0,!0)},onExceed(){M.warning(this.$t(`fish.message.audioOnlyOne`))},onUploadError(){this.uploading=!1,M.error(this.$t(`fish.message.uploadError`))},onUploadSuccess(e,t,n){this.uploading=!1;let r=e?.file_url;if(!r){M.error(this.$t(`fish.message.uploadError`)),this.fileList=[];return}this.form.voicesUrl=r,this.fileList=n},onRecorded(e){this.form.voicesUrl=e.url,this.recording=!1,e.text&&this.textsAuto&&(this.form.texts=e.text)},onStartRecord(){this.recording=!0,this.textsAuto=!this.form.texts.trim()},onScriptChange(e){this.textsAuto&&this.recording&&(this.form.texts=e)},onTextsInput(){this.textsAuto=!1},clearAudio(){this.form.voicesUrl=``,this.fileList=[]},onCreate(){let e=this.form.title.trim();if(!e){M.warning(this.$t(`fish.message.titleRequired`));return}if(!this.form.voicesUrl){M.warning(this.$t(`fish.message.audioRequired`));return}let t={title:e,voices:this.form.voicesUrl,visibility:this.form.visibility,train_mode:this.form.trainMode,enhance_audio_quality:this.form.enhanceAudio,generate_sample:this.form.generateSample};this.form.description.trim()&&(t.description=this.form.description.trim()),this.form.texts.trim()&&(t.texts=[this.form.texts.trim()]),this.creating=!0,this.$emit(`create`,t),setTimeout(()=>{this.creating=!1,this.form=Q(),this.fileList=[]},600)}}}),fe={class:`flex flex-col h-full`},pe={class:`flex-1 overflow-y-auto p-5`},me={class:`field-block mb-4`},he={class:`title font-bold`},ge={class:`field-block mb-4`},_e={class:`flex items-baseline justify-between mb-1`},ve={class:`title font-bold`},ye={key:0,class:`muted`},be={class:`hint`},xe={key:0,class:`audio-actions`},Se={key:1,class:`hint warn`},Ce={key:3,class:`mt-2`},we=[`src`],Te={class:`ready-actions`},Ee={class:`field-block mb-4`},De={class:`title font-bold`},Oe={class:`hint`},ke={class:`field-block mb-4`},Ae={class:`title font-bold`},je={class:`field-block mb-4`},Me={class:`title font-bold`},Ne={class:`field-block mb-3`},Pe={class:`field-row`},Fe={class:`title font-bold`},Ie={class:`hint mt-0 mb-0`},Le={class:`field-block mb-2`},Re={class:`field-row`},ze={class:`title font-bold`},Be={class:`hint mt-0 mb-0`},Ve={class:`flex flex-col items-center justify-center px-5 pb-5`};function He(t,n,c,f,m,h){let g=l(`el-input`),_=l(`upload-icon`),v=l(`el-button`),y=l(`el-upload`),b=l(`microphone-icon`),x=l(`recorder`),S=l(`undo-icon`),C=l(`el-radio-button`),w=l(`el-radio-group`),T=l(`el-switch`),E=l(`magic-icon`);return p(),s(`div`,fe,[e(`div`,pe,[e(`div`,me,[e(`h2`,he,[r(i(t.$t(`fish.name.voiceTitle`))+` `,1),n[8]||=e(`span`,{class:`required`},`*`,-1)]),a(g,{modelValue:t.form.title,"onUpdate:modelValue":n[0]||=e=>t.form.title=e,placeholder:t.$t(`fish.placeholder.voiceTitle`),maxlength:`60`},null,8,[`modelValue`,`placeholder`])]),e(`div`,ge,[e(`div`,_e,[e(`h2`,ve,[r(i(t.$t(`fish.name.referenceAudio`))+` `,1),n[9]||=e(`span`,{class:`required`},`*`,-1)]),!t.form.voicesUrl&&!t.recording?(p(),s(`span`,ye,i(t.$t(`fish.description.audioRequired`)),1)):o(``,!0)]),e(`p`,be,i(t.$t(`fish.description.uploadAudio`)),1),!t.form.voicesUrl&&!t.recording?(p(),s(`div`,xe,[a(y,{"file-list":t.fileList,"onUpdate:fileList":n[1]||=e=>t.fileList=e,name:`file`,limit:1,class:`upload-wrapper`,action:t.uploadUrl,accept:`.mp3,.wav,.m4a,.ogg,.webm,audio/*`,"show-file-list":!1,"on-exceed":t.onExceed,"on-error":t.onUploadError,"on-success":t.onUploadSuccess,"before-upload":t.onBeforeUpload,headers:t.uploadHeaders},{default:d(()=>[a(v,{type:`primary`,plain:``,round:``,loading:t.uploading},{default:d(()=>[a(_,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.uploadAudio`)),1)]),_:1},8,[`loading`])]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`before-upload`,`headers`]),a(v,{type:`primary`,round:``,disabled:!t.supportsRecorder,onClick:t.onStartRecord},{default:d(()=>[a(b,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.recordAudio`)),1)]),_:1},8,[`disabled`,`onClick`])])):o(``,!0),!t.supportsRecorder&&!t.form.voicesUrl&&!t.recording?(p(),s(`p`,Se,i(t.$t(`fish.message.recorderUnsupported`)),1)):o(``,!0),t.recording?(p(),u(x,{key:2,class:`mt-2`,onDone:t.onRecorded,onCancel:n[2]||=e=>t.recording=!1,"onUpdate:script":t.onScriptChange},null,8,[`onDone`,`onUpdate:script`])):o(``,!0),t.form.voicesUrl&&!t.recording?(p(),s(`div`,Ce,[e(`audio`,{src:t.form.voicesUrl,controls:``,preload:`metadata`,class:`w-full`},null,8,we),e(`div`,Te,[a(v,{link:``,size:`small`,onClick:t.clearAudio},{default:d(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.replaceAudio`)),1)]),_:1},8,[`onClick`])])])):o(``,!0)]),e(`div`,Ee,[e(`h2`,De,i(t.$t(`fish.name.audioTexts`)),1),e(`p`,Oe,i(t.$t(`fish.description.audioTexts`)),1),a(g,{modelValue:t.form.texts,"onUpdate:modelValue":n[3]||=e=>t.form.texts=e,type:`textarea`,rows:2,placeholder:t.$t(`fish.placeholder.audioTexts`),maxlength:`500`,onInput:t.onTextsInput},null,8,[`modelValue`,`placeholder`,`onInput`])]),e(`div`,ke,[e(`h2`,Ae,i(t.$t(`fish.name.voiceDescription`)),1),a(g,{modelValue:t.form.description,"onUpdate:modelValue":n[4]||=e=>t.form.description=e,type:`textarea`,rows:2,placeholder:t.$t(`fish.placeholder.voiceDescription`),maxlength:`500`},null,8,[`modelValue`,`placeholder`])]),e(`div`,je,[e(`h2`,Me,i(t.$t(`fish.name.trainMode`)),1),a(w,{modelValue:t.form.trainMode,"onUpdate:modelValue":n[5]||=e=>t.form.trainMode=e},{default:d(()=>[a(C,{label:`fast`,value:`fast`},{default:d(()=>[r(i(t.$t(`fish.value.trainModeFast`)),1)]),_:1}),a(C,{label:`precise`,value:`precise`},{default:d(()=>[r(i(t.$t(`fish.value.trainModePrecise`)),1)]),_:1})]),_:1},8,[`modelValue`])]),e(`div`,Ne,[e(`div`,Pe,[e(`h2`,Fe,i(t.$t(`fish.name.enhanceAudio`)),1),a(T,{modelValue:t.form.enhanceAudio,"onUpdate:modelValue":n[6]||=e=>t.form.enhanceAudio=e},null,8,[`modelValue`])]),e(`p`,Ie,i(t.$t(`fish.description.enhanceAudio`)),1)]),e(`div`,Le,[e(`div`,Re,[e(`h2`,ze,i(t.$t(`fish.name.generateSample`)),1),a(T,{modelValue:t.form.generateSample,"onUpdate:modelValue":n[7]||=e=>t.form.generateSample=e},null,8,[`modelValue`])]),e(`p`,Be,i(t.$t(`fish.description.generateSample`)),1)])]),e(`div`,Ve,[a(v,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canCreate||t.creating,loading:t.creating,onClick:t.onCreate},{default:d(()=>[a(E,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.createModel`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])])])}var Ue=j(de,[[`render`,He],[`__scopeId`,`data-v-46dbe88b`]]),We=m({name:`FishVoiceCard`,components:{MicrophoneIcon:C,ViewIcon:S,VolumeIcon:O,ElAlert:g,ElButton:L,ElImage:te,CopyToClipboard:R},props:{modelValue:{type:Object,required:!0}},computed:{sampleAudioUrl(){let e=this.modelValue?.samples;if(e?.length)return e[0]?.audio},voiceId(){let e=this.modelValue;return(e?.id||e?._id||e?.reference_id||``).toString()},coverSrc(){let e=this.modelValue?.cover_image;return e&&typeof e==`string`?e:void 0},createdAtLabel(){let e=this.modelValue?.created_at;if(e==null||e===``)return null;let t=typeof e==`number`?e:parseFloat(String(e));return!Number.isFinite(t)||t<=0?null:this.$dayjs.format(``+new Date(t*1e3))}},methods:{onUseVoice(){let e=this.voiceId;e&&(this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,reference_id:e}),this.$router.push({name:I}))}}}),Ge={class:`card`},Ke={class:`left`},qe={class:`main`},Je={class:`header`},Ye={class:`title`},Xe={key:0,class:`datetime`},Ze={key:0,class:`description`},Qe={key:1,class:`sample mt-2`},$e=[`src`],et={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},tt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},nt={class:`operations mt-2`};function rt(n,c,f,m,h,g){let _=l(`el-image`),v=l(`microphone-icon`),y=l(`copy-to-clipboard`),b=l(`view-icon`),x=l(`el-alert`),S=l(`volume-icon`),C=l(`el-button`);return p(),s(`div`,Ge,[e(`div`,Ke,[n.coverSrc?(p(),u(_,{key:0,src:n.coverSrc,class:`cover`,fit:`cover`},{error:d(()=>[a(_,{src:`https://cdn.acedata.cloud/e40fccc727.png`,class:`cover fallback`,fit:`cover`})]),placeholder:d(()=>[...c[0]||=[e(`div`,{class:`cover placeholder`},null,-1)]]),_:1},8,[`src`])):(p(),u(_,{key:1,src:`https://cdn.acedata.cloud/e40fccc727.png`,class:`cover fallback`,fit:`cover`}))]),e(`div`,qe,[e(`div`,Je,[e(`span`,Ye,i(n.modelValue?.title||n.$t(`fish.name.untitledVoice`)),1),n.createdAtLabel?(p(),s(`span`,Xe,i(n.createdAtLabel),1)):o(``,!0)]),n.modelValue?.description?(p(),s(`p`,Ze,i(n.modelValue?.description),1)):o(``,!0),n.sampleAudioUrl?(p(),s(`div`,Qe,[e(`audio`,{src:n.sampleAudioUrl,controls:``,preload:`metadata`,class:`w-full`},null,8,$e)])):o(``,!0),a(x,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.voiceId?(p(),s(`p`,et,[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.referenceId`))+`: `+i(n.voiceId)+` `,1),a(y,{content:n.voiceId},null,8,[`content`])])):o(``,!0),n.modelValue?.visibility?(p(),s(`p`,tt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.visibility`))+`: `+i(n.modelValue?.visibility),1)])):o(``,!0)]),_:1}),e(`div`,nt,[a(C,{type:`primary`,size:`small`,plain:``,disabled:!n.voiceId,onClick:t(n.onUseVoice,[`stop`])},{default:d(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.button.useVoice`)),1)]),_:1},8,[`disabled`,`onClick`])])])])}var it=m({name:`FishModelListPanel`,components:{MicrophoneIcon:C,VoiceCard:j(We,[[`render`,rt],[`__scopeId`,`data-v-9c092ba3`]]),BotPlaceholder:z},props:{loading:{type:Boolean,default:!1}},computed:{voices(){return this.$store.state.fish?.voices}}}),at={class:`model-list-panel flex flex-col h-full`},ot={class:`header`},st={class:`title`},ct={key:0,class:`count`},lt={class:`body flex-1 min-h-0`},ut={key:0,class:`h-full`},dt={key:1,class:`w-full h-full flex flex-col items-center justify-center text-center px-6`},ft={class:`empty-title`},$={class:`empty-hint`},pt={key:2,class:`w-full h-full overflow-y-auto pr-1`};function mt(t,n,r,d,m,h){let g=l(`bot-placeholder`),_=l(`microphone-icon`),v=l(`voice-card`);return p(),s(`div`,at,[e(`header`,ot,[e(`h2`,st,i(t.$t(`fish.title.myVoices`)),1),t.voices?.length?(p(),s(`span`,ct,i(t.voices?.length),1)):o(``,!0)]),e(`div`,lt,[t.voices===void 0?(p(),s(`div`,ut,[a(g)])):t.voices.length===0?(p(),s(`div`,dt,[a(_,{class:`empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,ft,i(t.$t(`fish.title.noVoicesYet`)),1),e(`p`,$,i(t.$t(`fish.description.noVoicesYet`)),1)])):(p(),s(`div`,pt,[(p(!0),s(c,null,f(t.voices,e=>(p(),u(v,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]))])])}var ht=m({name:`FishModelIndex`,components:{ModelConfigPanel:Ue,Layout:B,ModelListPanel:j(it,[[`render`,mt],[`__scopeId`,`data-v-8e360c85`]]),TabSwitcher:V},inject:[`initialized`],data(){return{loading:!1}},computed:{credential(){return this.$store.state.fish?.credential}},watch:{initialized:{async handler(e){e&&await this.onGetVoices()},immediate:!0}},async mounted(){await this.onGetService()},methods:{async onGetService(){await this.$store.dispatch(`fish/getService`)},async onGetVoices(){await this.$store.dispatch(`fish/getVoices`)},async onCreate(e){if(!F())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}this.loading=!0,M.info(this.$t(`fish.message.creatingModel`));try{await ne.createModel(e,{token:t}),M.success(this.$t(`fish.message.createModelSuccess`)),await this.onGetVoices()}catch(e){let t=e?.response?.data;t?.error?.code===`used_up`?M.error(this.$t(`fish.message.usedUp`)):M.error(t?.error?.message||this.$t(`fish.message.createModelFailed`))}finally{this.loading=!1}}}}),gt={class:`flex flex-col h-full`},_t={class:`flex-1 min-h-0`};function vt(t,n,r,i,o,s){let c=l(`tab-switcher`),f=l(`model-config-panel`),m=l(`model-list-panel`),h=l(`layout`);return p(),u(h,null,{config:d(()=>[e(`div`,gt,[a(c),e(`div`,_t,[a(f,{onCreate:t.onCreate},null,8,[`onCreate`])])])]),result:d(()=>[a(m,{loading:t.loading},null,8,[`loading`])]),_:1})}var yt=j(ht,[[`render`,vt]]);export{yt as default};
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,T as c,at as l,j as u,mt as d,rt as f,tt as p,z as m}from"./vendor-chart-Dw-P17PN.js";import{t as h}from"./upload-CfWJ5heB.js";import{t as g}from"./alert-C16GyeJ_.js";import{n as _,r as v}from"./radio-DgDgyT2l.js";import{t as y}from"./switch-DvY2NqFp.js";import{t as b}from"./book-open-DSJyv-Tq.js";import{t as x}from"./check-Jfe3Th-Y.js";import{t as S}from"./eye-DCxnyN3d.js";import{t as C}from"./mic-i8JOGAbe.js";import{t as w}from"./rotate-ccw-Bd5EpOiS.js";import{t as T}from"./shuffle-CNtL7bxS.js";import{t as E}from"./square-CBVTZP_r.js";import{t as D}from"./upload-Dc_bG_Na.js";import{t as O}from"./volume-2-CBU3mumY.js";import{t as k}from"./wand-sparkles-DCARF_Gq.js";import{t as A}from"./vendor-axios-Ck2ffRoh.js";import"./constants-Dm-HitpB.js";import{E as j,Ji as ee,Oi as te,Sn as ne,Ti as M,Wt as N,di as P,in as F,rt as I,zi as L}from"./index-CX5tT44B.js";import{t as R}from"./CopyToClipboard-DTo9jexV.js";import{t as z}from"./BotPlaceholder-B6Y-k016.js";import{t as B}from"./Hailuo-BFCWw87y.js";import{t as V}from"./TabSwitcher-D1Zx36SR.js";var H=4,U=90,W=m({name:`FishRecorder`,components:{ConfirmIcon:x,DocsIcon:b,MicrophoneIcon:C,ShuffleIcon:T,StopIcon:E,UndoIcon:w,ElButton:L},emits:[`done`,`cancel`,`update:script`],data(){return{state:`idle`,scriptIndex:0,seconds:0,timerId:0,maxTimerId:0,mediaRecorder:null,stream:null,chunks:[],recordedBlob:null,recordedUrl:``,uploading:!1}},computed:{formattedTime(){let e=Math.floor(this.seconds/60),t=this.seconds%60;return`${e.toString().padStart(2,`0`)}:${t.toString().padStart(2,`0`)}`},currentScript(){let e=`fish.script.passage${this.scriptIndex%H+1}`;return this.$t(e)}},beforeUnmount(){this.cleanup()},mounted(){this.$emit(`update:script`,this.currentScript)},methods:{nextScript(){this.scriptIndex=(this.scriptIndex+1)%H,this.$emit(`update:script`,this.currentScript)},async startRecord(){if(!navigator.mediaDevices?.getUserMedia||typeof MediaRecorder>`u`){M.error(this.$t(`fish.message.recorderUnsupported`));return}try{this.stream=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(e){let t=e?.name===`NotAllowedError`||e?.name===`PermissionDeniedError`;M.error(this.$t(t?`fish.message.micDenied`:`fish.message.micError`));return}this.chunks=[];let e=this.pickMimeType();try{this.mediaRecorder=e?new MediaRecorder(this.stream,{mimeType:e}):new MediaRecorder(this.stream)}catch{this.mediaRecorder=new MediaRecorder(this.stream)}this.mediaRecorder.ondataavailable=e=>{e.data&&e.data.size>0&&this.chunks.push(e.data)},this.mediaRecorder.onstop=()=>{let e=new Blob(this.chunks,{type:this.mediaRecorder?.mimeType||`audio/webm`});this.recordedBlob=e,this.recordedUrl=URL.createObjectURL(e),this.state=`recorded`,this.releaseStream()},this.mediaRecorder.start(),this.state=`recording`,this.seconds=0,this.timerId=window.setInterval(()=>{this.seconds++},1e3),this.maxTimerId=window.setTimeout(()=>{this.state===`recording`&&this.stopRecord()},U*1e3)},stopRecord(){this.mediaRecorder&&this.mediaRecorder.state!==`inactive`&&this.mediaRecorder.stop(),window.clearInterval(this.timerId),window.clearTimeout(this.maxTimerId)},reset(){this.recordedUrl&&URL.revokeObjectURL(this.recordedUrl),this.recordedUrl=``,this.recordedBlob=null,this.state=`idle`,this.seconds=0},onCancel(){this.cleanup(),this.$emit(`cancel`)},cleanup(){this.stopRecord(),this.releaseStream(),this.recordedUrl&&URL.revokeObjectURL(this.recordedUrl)},releaseStream(){this.stream?.getTracks().forEach(e=>e.stop()),this.stream=null},pickMimeType(){for(let e of[`audio/webm;codecs=opus`,`audio/webm`,`audio/mp4`,`audio/ogg`])if(typeof MediaRecorder<`u`&&MediaRecorder.isTypeSupported?.(e))return e},extensionForMime(e){return e.includes(`webm`)?`webm`:e.includes(`mp4`)?`m4a`:e.includes(`ogg`)?`ogg`:e.includes(`wav`)?`wav`:`mp3`},async useRecording(){if(this.recordedBlob){if(this.seconds<3){M.warning(this.$t(`fish.message.recordingTooShort`));return}this.uploading=!0;try{let e=this.$store.state.token?.access,t=this.extensionForMime(this.recordedBlob.type||``),n=new File([this.recordedBlob],`recording-${Date.now()}.${t}`,{type:this.recordedBlob.type||`audio/webm`}),r=new FormData;r.append(`file`,n);let{data:i}=await A.post(`${P()}/api/v1/files/`,r,{headers:{Authorization:`Bearer ${e}`}}),a=i?.file_url;if(!a){M.error(this.$t(`fish.message.uploadError`));return}this.$emit(`done`,{url:a,text:this.currentScript})}catch(e){M.error(this.$t(`fish.message.uploadError`)),console.error(`recorder upload failed`,e)}finally{this.uploading=!1}}}}}),G={class:`recorder`},K={key:0,class:`script`},q={class:`script-header`},J={class:`label`},Y={class:`script-text`},X={class:`controls`},Z={class:`status`},re={class:`hint`},ie={key:1,class:`preview`},ae=[`src`],oe={class:`preview-actions`},se={class:`footer`};function ce(t,c,f,m,h,g){let _=l(`docs-icon`),v=l(`shuffle-icon`),y=l(`el-button`),b=l(`microphone-icon`),x=l(`stop-icon`),S=l(`undo-icon`),C=l(`confirm-icon`);return p(),s(`div`,G,[t.state===`recorded`?o(``,!0):(p(),s(`div`,K,[e(`div`,q,[a(_,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,J,i(t.$t(`fish.description.readScript`)),1),a(y,{link:``,size:`small`,class:`ml-auto`,disabled:t.state===`recording`,onClick:t.nextScript},{default:d(()=>[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.nextScript`)),1)]),_:1},8,[`disabled`,`onClick`])]),e(`p`,Y,i(t.currentScript),1)])),e(`div`,X,[t.state===`idle`?(p(),u(y,{key:0,type:`danger`,circle:``,size:`large`,title:t.$t(`fish.button.startRecord`),"aria-label":t.$t(`fish.button.startRecord`),onClick:t.startRecord},{default:d(()=>[a(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`title`,`aria-label`,`onClick`])):t.state===`recording`?(p(),u(y,{key:1,type:`warning`,circle:``,size:`large`,title:t.$t(`fish.button.stopRecord`),"aria-label":t.$t(`fish.button.stopRecord`),onClick:t.stopRecord},{default:d(()=>[a(x,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`title`,`aria-label`,`onClick`])):o(``,!0),e(`div`,Z,[e(`span`,{class:n([`timer`,t.state===`recording`?`live`:``])},i(t.formattedTime),3),e(`span`,re,i(t.state===`idle`?t.$t(`fish.description.recorderIdle`):t.state===`recording`?t.$t(`fish.description.recorderRecording`):t.$t(`fish.description.recorderRecorded`)),1)])]),t.state===`recorded`&&t.recordedUrl?(p(),s(`div`,ie,[e(`audio`,{src:t.recordedUrl,controls:``,preload:`metadata`,class:`w-full`},null,8,ae),e(`div`,oe,[a(y,{size:`small`,disabled:t.uploading,onClick:t.reset},{default:d(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.reRecord`)),1)]),_:1},8,[`disabled`,`onClick`]),a(y,{size:`small`,type:`primary`,loading:t.uploading,onClick:t.useRecording},{default:d(()=>[a(C,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.useRecording`)),1)]),_:1},8,[`loading`,`onClick`])])])):o(``,!0),e(`div`,se,[a(y,{link:``,size:`small`,disabled:t.uploading||t.state===`recording`,onClick:t.onCancel},{default:d(()=>[r(i(t.$t(`fish.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`])])])}var le=j(W,[[`render`,ce],[`__scopeId`,`data-v-40e201f8`]]),ue=50*1024*1024,Q=()=>({title:``,description:``,texts:``,voicesUrl:``,visibility:`private`,trainMode:`fast`,enhanceAudio:!0,generateSample:!1}),de=m({name:`FishModelConfigPanel`,components:{MagicIcon:k,MicrophoneIcon:C,UndoIcon:w,UploadIcon:D,ElButton:L,ElInput:ee,ElRadioButton:_,ElRadioGroup:v,ElSwitch:y,ElUpload:h,Recorder:le},mixins:[N],emits:[`create`],data(){return{form:Q(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return P()+`/api/v1/files/`},uploadHeaders(){return{Authorization:`Bearer ${this.$store.state.token?.access}`}},canCreate(){return!!this.form.title.trim()&&!!this.form.voicesUrl&&!this.uploading&&!this.creating},supportsRecorder(){return!!(typeof navigator<`u`?navigator.mediaDevices:void 0)?.getUserMedia&&typeof MediaRecorder<`u`}},methods:{onBeforeUpload(e){return e.size>ue?(M.warning(this.$t(`fish.message.audioSizeExceed`)),!1):(this.uploading=!0,!0)},onExceed(){M.warning(this.$t(`fish.message.audioOnlyOne`))},onUploadError(){this.uploading=!1,M.error(this.$t(`fish.message.uploadError`))},onUploadSuccess(e,t,n){this.uploading=!1;let r=e?.file_url;if(!r){M.error(this.$t(`fish.message.uploadError`)),this.fileList=[];return}this.form.voicesUrl=r,this.fileList=n},onRecorded(e){this.form.voicesUrl=e.url,this.recording=!1,e.text&&this.textsAuto&&(this.form.texts=e.text)},onStartRecord(){this.recording=!0,this.textsAuto=!this.form.texts.trim()},onScriptChange(e){this.textsAuto&&this.recording&&(this.form.texts=e)},onTextsInput(){this.textsAuto=!1},clearAudio(){this.form.voicesUrl=``,this.fileList=[]},onCreate(){let e=this.form.title.trim();if(!e){M.warning(this.$t(`fish.message.titleRequired`));return}if(!this.form.voicesUrl){M.warning(this.$t(`fish.message.audioRequired`));return}let t={title:e,voices:this.form.voicesUrl,visibility:this.form.visibility,train_mode:this.form.trainMode,enhance_audio_quality:this.form.enhanceAudio,generate_sample:this.form.generateSample};this.form.description.trim()&&(t.description=this.form.description.trim()),this.form.texts.trim()&&(t.texts=[this.form.texts.trim()]),this.creating=!0,this.$emit(`create`,t),setTimeout(()=>{this.creating=!1,this.form=Q(),this.fileList=[]},600)}}}),fe={class:`flex flex-col h-full`},pe={class:`flex-1 overflow-y-auto p-5`},me={class:`field-block mb-4`},he={class:`title font-bold`},ge={class:`field-block mb-4`},_e={class:`flex items-baseline justify-between mb-1`},ve={class:`title font-bold`},ye={key:0,class:`muted`},be={class:`hint`},xe={key:0,class:`audio-actions`},Se={key:1,class:`hint warn`},Ce={key:3,class:`mt-2`},we=[`src`],Te={class:`ready-actions`},Ee={class:`field-block mb-4`},De={class:`title font-bold`},Oe={class:`hint`},ke={class:`field-block mb-4`},Ae={class:`title font-bold`},je={class:`field-block mb-4`},Me={class:`title font-bold`},Ne={class:`field-block mb-3`},Pe={class:`field-row`},Fe={class:`title font-bold`},Ie={class:`hint mt-0 mb-0`},Le={class:`field-block mb-2`},Re={class:`field-row`},ze={class:`title font-bold`},Be={class:`hint mt-0 mb-0`},Ve={class:`flex flex-col items-center justify-center px-5 pb-5`};function He(t,n,c,f,m,h){let g=l(`el-input`),_=l(`upload-icon`),v=l(`el-button`),y=l(`el-upload`),b=l(`microphone-icon`),x=l(`recorder`),S=l(`undo-icon`),C=l(`el-radio-button`),w=l(`el-radio-group`),T=l(`el-switch`),E=l(`magic-icon`);return p(),s(`div`,fe,[e(`div`,pe,[e(`div`,me,[e(`h2`,he,[r(i(t.$t(`fish.name.voiceTitle`))+` `,1),n[8]||=e(`span`,{class:`required`},`*`,-1)]),a(g,{modelValue:t.form.title,"onUpdate:modelValue":n[0]||=e=>t.form.title=e,placeholder:t.$t(`fish.placeholder.voiceTitle`),maxlength:`60`},null,8,[`modelValue`,`placeholder`])]),e(`div`,ge,[e(`div`,_e,[e(`h2`,ve,[r(i(t.$t(`fish.name.referenceAudio`))+` `,1),n[9]||=e(`span`,{class:`required`},`*`,-1)]),!t.form.voicesUrl&&!t.recording?(p(),s(`span`,ye,i(t.$t(`fish.description.audioRequired`)),1)):o(``,!0)]),e(`p`,be,i(t.$t(`fish.description.uploadAudio`)),1),!t.form.voicesUrl&&!t.recording?(p(),s(`div`,xe,[a(y,{"file-list":t.fileList,"onUpdate:fileList":n[1]||=e=>t.fileList=e,name:`file`,limit:1,class:`upload-wrapper`,action:t.uploadUrl,accept:`.mp3,.wav,.m4a,.ogg,.webm,audio/*`,"show-file-list":!1,"on-exceed":t.onExceed,"on-error":t.onUploadError,"on-success":t.onUploadSuccess,"before-upload":t.onBeforeUpload,headers:t.uploadHeaders},{default:d(()=>[a(v,{type:`primary`,plain:``,round:``,loading:t.uploading},{default:d(()=>[a(_,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.uploadAudio`)),1)]),_:1},8,[`loading`])]),_:1},8,[`file-list`,`action`,`on-exceed`,`on-error`,`on-success`,`before-upload`,`headers`]),a(v,{type:`primary`,round:``,disabled:!t.supportsRecorder,onClick:t.onStartRecord},{default:d(()=>[a(b,{class:`icon mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.recordAudio`)),1)]),_:1},8,[`disabled`,`onClick`])])):o(``,!0),!t.supportsRecorder&&!t.form.voicesUrl&&!t.recording?(p(),s(`p`,Se,i(t.$t(`fish.message.recorderUnsupported`)),1)):o(``,!0),t.recording?(p(),u(x,{key:2,class:`mt-2`,onDone:t.onRecorded,onCancel:n[2]||=e=>t.recording=!1,"onUpdate:script":t.onScriptChange},null,8,[`onDone`,`onUpdate:script`])):o(``,!0),t.form.voicesUrl&&!t.recording?(p(),s(`div`,Ce,[e(`audio`,{src:t.form.voicesUrl,controls:``,preload:`metadata`,class:`w-full`},null,8,we),e(`div`,Te,[a(v,{link:``,size:`small`,onClick:t.clearAudio},{default:d(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.replaceAudio`)),1)]),_:1},8,[`onClick`])])])):o(``,!0)]),e(`div`,Ee,[e(`h2`,De,i(t.$t(`fish.name.audioTexts`)),1),e(`p`,Oe,i(t.$t(`fish.description.audioTexts`)),1),a(g,{modelValue:t.form.texts,"onUpdate:modelValue":n[3]||=e=>t.form.texts=e,type:`textarea`,rows:2,placeholder:t.$t(`fish.placeholder.audioTexts`),maxlength:`500`,onInput:t.onTextsInput},null,8,[`modelValue`,`placeholder`,`onInput`])]),e(`div`,ke,[e(`h2`,Ae,i(t.$t(`fish.name.voiceDescription`)),1),a(g,{modelValue:t.form.description,"onUpdate:modelValue":n[4]||=e=>t.form.description=e,type:`textarea`,rows:2,placeholder:t.$t(`fish.placeholder.voiceDescription`),maxlength:`500`},null,8,[`modelValue`,`placeholder`])]),e(`div`,je,[e(`h2`,Me,i(t.$t(`fish.name.trainMode`)),1),a(w,{modelValue:t.form.trainMode,"onUpdate:modelValue":n[5]||=e=>t.form.trainMode=e},{default:d(()=>[a(C,{label:`fast`,value:`fast`},{default:d(()=>[r(i(t.$t(`fish.value.trainModeFast`)),1)]),_:1}),a(C,{label:`precise`,value:`precise`},{default:d(()=>[r(i(t.$t(`fish.value.trainModePrecise`)),1)]),_:1})]),_:1},8,[`modelValue`])]),e(`div`,Ne,[e(`div`,Pe,[e(`h2`,Fe,i(t.$t(`fish.name.enhanceAudio`)),1),a(T,{modelValue:t.form.enhanceAudio,"onUpdate:modelValue":n[6]||=e=>t.form.enhanceAudio=e},null,8,[`modelValue`])]),e(`p`,Ie,i(t.$t(`fish.description.enhanceAudio`)),1)]),e(`div`,Le,[e(`div`,Re,[e(`h2`,ze,i(t.$t(`fish.name.generateSample`)),1),a(T,{modelValue:t.form.generateSample,"onUpdate:modelValue":n[7]||=e=>t.form.generateSample=e},null,8,[`modelValue`])]),e(`p`,Be,i(t.$t(`fish.description.generateSample`)),1)])]),e(`div`,Ve,[a(v,{type:`primary`,class:`btn w-full`,round:``,disabled:!t.canCreate||t.creating,loading:t.creating,onClick:t.onCreate},{default:d(()=>[a(E,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(t.$t(`fish.button.createModel`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])])])}var Ue=j(de,[[`render`,He],[`__scopeId`,`data-v-46dbe88b`]]),We=m({name:`FishVoiceCard`,components:{MicrophoneIcon:C,ViewIcon:S,VolumeIcon:O,ElAlert:g,ElButton:L,ElImage:te,CopyToClipboard:R},props:{modelValue:{type:Object,required:!0}},computed:{sampleAudioUrl(){let e=this.modelValue?.samples;if(e?.length)return e[0]?.audio},voiceId(){let e=this.modelValue;return(e?.id||e?._id||e?.reference_id||``).toString()},coverSrc(){let e=this.modelValue?.cover_image;return e&&typeof e==`string`?e:void 0},createdAtLabel(){let e=this.modelValue?.created_at;if(e==null||e===``)return null;let t=typeof e==`number`?e:parseFloat(String(e));return!Number.isFinite(t)||t<=0?null:this.$dayjs.format(``+new Date(t*1e3))}},methods:{onUseVoice(){let e=this.voiceId;e&&(this.$store.commit(`fish/setConfig`,{...this.$store.state.fish?.config,reference_id:e}),this.$router.push({name:I}))}}}),Ge={class:`card`},Ke={class:`left`},qe={class:`main`},Je={class:`header`},Ye={class:`title`},Xe={key:0,class:`datetime`},Ze={key:0,class:`description`},Qe={key:1,class:`sample mt-2`},$e=[`src`],et={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},tt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},nt={class:`operations mt-2`};function rt(n,c,f,m,h,g){let _=l(`el-image`),v=l(`microphone-icon`),y=l(`copy-to-clipboard`),b=l(`view-icon`),x=l(`el-alert`),S=l(`volume-icon`),C=l(`el-button`);return p(),s(`div`,Ge,[e(`div`,Ke,[n.coverSrc?(p(),u(_,{key:0,src:n.coverSrc,class:`cover`,fit:`cover`},{error:d(()=>[a(_,{src:`https://cdn.acedata.cloud/e40fccc727.png`,class:`cover fallback`,fit:`cover`})]),placeholder:d(()=>[...c[0]||=[e(`div`,{class:`cover placeholder`},null,-1)]]),_:1},8,[`src`])):(p(),u(_,{key:1,src:`https://cdn.acedata.cloud/e40fccc727.png`,class:`cover fallback`,fit:`cover`}))]),e(`div`,qe,[e(`div`,Je,[e(`span`,Ye,i(n.modelValue?.title||n.$t(`fish.name.untitledVoice`)),1),n.createdAtLabel?(p(),s(`span`,Xe,i(n.createdAtLabel),1)):o(``,!0)]),n.modelValue?.description?(p(),s(`p`,Ze,i(n.modelValue?.description),1)):o(``,!0),n.sampleAudioUrl?(p(),s(`div`,Qe,[e(`audio`,{src:n.sampleAudioUrl,controls:``,preload:`metadata`,class:`w-full`},null,8,$e)])):o(``,!0),a(x,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.voiceId?(p(),s(`p`,et,[a(v,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.referenceId`))+`: `+i(n.voiceId)+` `,1),a(y,{content:n.voiceId},null,8,[`content`])])):o(``,!0),n.modelValue?.visibility?(p(),s(`p`,tt,[a(b,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.name.visibility`))+`: `+i(n.modelValue?.visibility),1)])):o(``,!0)]),_:1}),e(`div`,nt,[a(C,{type:`primary`,size:`small`,plain:``,disabled:!n.voiceId,onClick:t(n.onUseVoice,[`stop`])},{default:d(()=>[a(S,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),r(` `+i(n.$t(`fish.button.useVoice`)),1)]),_:1},8,[`disabled`,`onClick`])])])])}var it=m({name:`FishModelListPanel`,components:{MicrophoneIcon:C,VoiceCard:j(We,[[`render`,rt],[`__scopeId`,`data-v-9c092ba3`]]),BotPlaceholder:z},props:{loading:{type:Boolean,default:!1}},computed:{voices(){return this.$store.state.fish?.voices}}}),at={class:`model-list-panel flex flex-col h-full`},ot={class:`header`},st={class:`title`},ct={key:0,class:`count`},lt={class:`body flex-1 min-h-0`},ut={key:0,class:`h-full`},dt={key:1,class:`w-full h-full flex flex-col items-center justify-center text-center px-6`},ft={class:`empty-title`},$={class:`empty-hint`},pt={key:2,class:`w-full h-full overflow-y-auto pr-1`};function mt(t,n,r,d,m,h){let g=l(`bot-placeholder`),_=l(`microphone-icon`),v=l(`voice-card`);return p(),s(`div`,at,[e(`header`,ot,[e(`h2`,st,i(t.$t(`fish.title.myVoices`)),1),t.voices?.length?(p(),s(`span`,ct,i(t.voices?.length),1)):o(``,!0)]),e(`div`,lt,[t.voices===void 0?(p(),s(`div`,ut,[a(g)])):t.voices.length===0?(p(),s(`div`,dt,[a(_,{class:`empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,ft,i(t.$t(`fish.title.noVoicesYet`)),1),e(`p`,$,i(t.$t(`fish.description.noVoicesYet`)),1)])):(p(),s(`div`,pt,[(p(!0),s(c,null,f(t.voices,e=>(p(),u(v,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]))])])}var ht=m({name:`FishModelIndex`,components:{ModelConfigPanel:Ue,Layout:B,ModelListPanel:j(it,[[`render`,mt],[`__scopeId`,`data-v-8e360c85`]]),TabSwitcher:V},inject:[`initialized`],data(){return{loading:!1}},computed:{credential(){return this.$store.state.fish?.credential}},watch:{initialized:{async handler(e){e&&await this.onGetVoices()},immediate:!0}},async mounted(){await this.onGetService()},methods:{async onGetService(){await this.$store.dispatch(`fish/getService`)},async onGetVoices(){await this.$store.dispatch(`fish/getVoices`)},async onCreate(e){if(!F())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}this.loading=!0,M.info(this.$t(`fish.message.creatingModel`));try{await ne.createModel(e,{token:t}),M.success(this.$t(`fish.message.createModelSuccess`)),await this.onGetVoices()}catch(e){let t=e?.response?.data;t?.error?.code===`used_up`?M.error(this.$t(`fish.message.usedUp`)):M.error(t?.error?.message||this.$t(`fish.message.createModelFailed`))}finally{this.loading=!1}}}}),gt={class:`flex flex-col h-full`},_t={class:`flex-1 min-h-0`};function vt(t,n,r,i,o,s){let c=l(`tab-switcher`),f=l(`model-config-panel`),m=l(`model-list-panel`),h=l(`layout`);return p(),u(h,null,{config:d(()=>[e(`div`,gt,[a(c),e(`div`,_t,[a(f,{onCreate:t.onCreate},null,8,[`onCreate`])])])]),result:d(()=>[a(m,{loading:t.loading},null,8,[`loading`])]),_:1})}var yt=j(ht,[[`render`,vt]]);export{yt as default};