@acedatacloud/nexior 3.329.40 → 3.329.42
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.
- package/dist/assets/{ApiCodeButton-BeFKoVdS.js → ApiCodeButton-B-uP8cxQ.js} +1 -1
- package/dist/assets/{Artifacts-Norflr8E.js → Artifacts-DkuOn8EA.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-B2Q3pcP-.js → AskUserQuestionCard-4kvGbzot.js} +1 -1
- package/dist/assets/{AudioPreview-Cnfin0he.js → AudioPreview-Co7ifV7M.js} +1 -1
- package/dist/assets/{Auth-COY0V6qa.js → Auth-COL7JppR.js} +1 -1
- package/dist/assets/{Bare-C7FUtEWf.js → Bare-5fz1DQ8s.js} +1 -1
- package/dist/assets/{BotPlaceholder-DSEljO8x.js → BotPlaceholder-sIp3N8Aw.js} +1 -1
- package/dist/assets/{BottomFooter-Cgd2LX0_.js → BottomFooter-D3p-F38f.js} +1 -1
- package/dist/assets/{Callback-V5HX0ZMQ.js → Callback-Ct2YjZOh.js} +1 -1
- package/dist/assets/{CodeSnippet-DjV1z26c.js → CodeSnippet-Bv24_BUI.js} +1 -1
- package/dist/assets/{Console-BuU9taI1.js → Console-BIpG8SLu.js} +1 -1
- package/dist/assets/{Consumption-BUcyYr1r.js → Consumption-BxOCqJQE.js} +1 -1
- package/dist/assets/{Conversation-CBFMLxLx.js → Conversation-BfG9kFX_.js} +1 -1
- package/dist/assets/{Conversation-OwI0zyMh.js → Conversation-CYSoVf7s.js} +1 -1
- package/dist/assets/{CopyToClipboard-CdZHnA6f.js → CopyToClipboard-B6Etf8vG.js} +1 -1
- package/dist/assets/{Detail-CkZcsSoK.js → Detail-BCdaKJ9N.js} +2 -2
- package/dist/assets/{Extra-Bp6nSjLa.js → Extra-N3EvwwrN.js} +1 -1
- package/dist/assets/{FilePreview-CBmcA81-.js → FilePreview-BgmQpTHg.js} +1 -1
- package/dist/assets/{Hailuo-CNWEzoB6.js → Hailuo-CugSTs_n.js} +1 -1
- package/dist/assets/{History-BBN8acoY.js → History-DGxVzU0M.js} +1 -1
- package/dist/assets/{ImagePreview-C-RPL05t.js → ImagePreview-BuzqfhB0.js} +1 -1
- package/dist/assets/{ImageWrapper-BBNTd2c0.js → ImageWrapper-CCxzhdR6.js} +1 -1
- package/dist/assets/{Index-BRHhWWIP.js → Index-7OG5sI1s.js} +1 -1
- package/dist/assets/{Index-CtvhekRd.js → Index-8aFCcxvB.js} +1 -1
- package/dist/assets/{Index-Cg-04wem.js → Index-B9SnOIFy.js} +1 -1
- package/dist/assets/{Index-FCdtdiBa.js → Index-BEC1MxNl.js} +1 -1
- package/dist/assets/{Index-C3zv9OSB.js → Index-BJ7v_6Bf.js} +1 -1
- package/dist/assets/{Index-CXFhzrig.js → Index-BKKqeZsY.js} +1 -1
- package/dist/assets/{Index-Cve3rnAK.js → Index-Bf0al3tC.js} +1 -1
- package/dist/assets/{Index-BS0E0RfB.js → Index-BnhWOlMp.js} +1 -1
- package/dist/assets/Index-Bq7fABAM.css +1 -0
- package/dist/assets/{Index-B6akY-bn.js → Index-Buf4-FVC.js} +1 -1
- package/dist/assets/{Index-CXmobUGY.js → Index-C1vWI_jP.js} +1 -1
- package/dist/assets/{Index-BfU7-3Of.js → Index-C3FzIGuy.js} +1 -1
- package/dist/assets/{Index-DSW3mla3.js → Index-CQi8GdKa.js} +1 -1
- package/dist/assets/{Index-BJ-Saipm.js → Index-CRQlR9Hx.js} +1 -1
- package/dist/assets/{Index-CS8-nA_o.js → Index-CUJekH17.js} +1 -1
- package/dist/assets/{Index-CThBMMOH.js → Index-CVjbz79h.js} +1 -1
- package/dist/assets/Index-CWXcCOk-.css +1 -0
- package/dist/assets/{Index-B4PPT3vn.js → Index-CfLxnwRu.js} +1 -1
- package/dist/assets/{Index-ZDQhZDTq.js → Index-CjKMH43c.js} +1 -1
- package/dist/assets/{Index-DO5lhQft.js → Index-CpNr4nrk.js} +1 -1
- package/dist/assets/{Index-DYi_q9ni.js → Index-CsiY1KBB.js} +1 -1
- package/dist/assets/{Index-Ci2qFXPi.css → Index-CxCilrE-.css} +1 -1
- package/dist/assets/{Index-CBskKafo.js → Index-D1wL-2AY.js} +1 -1
- package/dist/assets/{Index-DVcCiKZi.js → Index-D2dGXvpu.js} +1 -1
- package/dist/assets/{Index-DOldx3ff.js → Index-D3huGS67.js} +1 -1
- package/dist/assets/{Index-Ck_lbC7I.css → Index-DL-lm09l.css} +1 -1
- package/dist/assets/{Index-cvhV9_tk.js → Index-DbkRnI0H.js} +1 -1
- package/dist/assets/{Index-CIjgS6fi.js → Index-DluadpBG.js} +1 -1
- package/dist/assets/Index-DsmXPjSQ.css +1 -0
- package/dist/assets/{Index-sDU2Iccm.js → Index-Dw5lb5sB.js} +1 -1
- package/dist/assets/{Index-DQLjYsOv.js → Index-T4jrSXsM.js} +1 -1
- package/dist/assets/{Index-Dje-rlw9.js → Index-rz7dASZ9.js} +1 -1
- package/dist/assets/Index-u6u4Pzxa.js +1 -0
- package/dist/assets/{Index-u2Ki3vsc.js → Index-wfhf1tKa.js} +1 -1
- package/dist/assets/{Invitees-DTmK3qd1.js → Invitees-B03IjTJJ.js} +1 -1
- package/dist/assets/{List-nAMaX7et.js → List-3WnwY_i8.js} +1 -1
- package/dist/assets/{List-BoiZNLdK.js → List-B7PHFQWt.js} +1 -1
- package/dist/assets/{List-NhjPzhE1.js → List-EenfJPiF.js} +1 -1
- package/dist/assets/{LocalTools-CdNzspUZ.js → LocalTools-6z0fIUeZ.js} +1 -1
- package/dist/assets/{LocalTools-TqX0-O7S.js → LocalTools-BH8e9HaY.js} +1 -1
- package/dist/assets/{Main-DDEFZnND.js → Main-FWrM3IHN.js} +1 -1
- package/dist/assets/{Message-D7o6mFb7.js → Message-C88Inlnb.js} +1 -1
- package/dist/assets/{Model-DpkFCUeF.js → Model-ei67BvAA.js} +1 -1
- package/dist/assets/{Navigator-CeJDlOal.js → Navigator-BOBLPcxe.js} +3 -3
- package/dist/assets/{NotFound-CcWv0ANK.js → NotFound-VnOMSsFl.js} +1 -1
- package/dist/assets/{Pay-CdjTYUiT.js → Pay-CK1s5zGQ.js} +1 -1
- package/dist/assets/{Player-DbW0kz_j.js → Player-DM2dj_o0.js} +1 -1
- package/dist/assets/{PromptTextarea-D64KucTj.js → PromptTextarea-BNjRaP1B.js} +1 -1
- package/dist/assets/{RealtimeCall-BnQX1KOK.js → RealtimeCall-BGLnpaGr.js} +1 -1
- package/dist/assets/{ScheduledTasks-DBfC4Xeu.js → ScheduledTasks-VcXrH71S.js} +1 -1
- package/dist/assets/{Status-DNzBKlh6.js → Status-BhMgtNjV.js} +1 -1
- package/dist/assets/{Subscribe-3fSD46l_.js → Subscribe-CPyucuf-.js} +1 -1
- package/dist/assets/TabSwitcher-2qROSZ8S.js +1 -0
- package/dist/assets/TabSwitcher-CLJnjjhG.css +1 -0
- package/dist/assets/{Tts-Cx5np_uK.js → Tts-CiXiLNWS.js} +1 -1
- package/dist/assets/{VideoPlayer-Dt-ZkZ7-.js → VideoPlayer-CI8FxOVX.js} +1 -1
- package/dist/assets/{alert-B2CVhm_j.js → alert-Bv7a2-bB.js} +1 -1
- package/dist/assets/arrow-down-dw39YAov.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-BuHYSd9y.js → arrow-down-wide-narrow-CD3cfUsN.js} +1 -1
- package/dist/assets/arrow-left-9qtEZwY7.js +1 -0
- package/dist/assets/arrow-right-aBC4jMCx.js +1 -0
- package/dist/assets/arrow-up-CNviNuMB.js +1 -0
- package/dist/assets/{avatar-DzWyTzrb.js → avatar-BGZgiEAz.js} +1 -1
- package/dist/assets/{basic-CEk1hGrn.js → basic-DZa2k3Ah.js} +1 -1
- package/dist/assets/{box-3oU0nJj7.js → box-B6yeB9bB.js} +1 -1
- package/dist/assets/{boxes-C7QoAhqw.js → boxes-BI1DryGO.js} +1 -1
- package/dist/assets/{brain-BKa5En2o.js → brain-CEXslr4w.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-GHSfYt41.js → chart-no-axes-combined-zaqX7Mjk.js} +1 -1
- package/dist/assets/{chat-CaFdenKr.js → chat-BBBJRia1.js} +1 -1
- package/dist/assets/check-Dd6vZzKs.js +1 -0
- package/dist/assets/chevron-down-DjKDUjwA.js +1 -0
- package/dist/assets/chevron-right-DHvfty4n.js +1 -0
- package/dist/assets/circle-check-vKKV64CI.js +1 -0
- package/dist/assets/clock-Cvh7UJqF.js +1 -0
- package/dist/assets/{codingBridge-DAjXFdeq.js → codingBridge-14y_EcEB.js} +1 -1
- package/dist/assets/{codingBridgeNotify-oVzEv0f4.js → codingBridgeNotify-DMgjc-zt.js} +2 -2
- package/dist/assets/{coins-9-aPnI2X.js → coins-VEmPIVwS.js} +1 -1
- package/dist/assets/{collapse-DA6Wawv5.js → collapse-DKP9CSp4.js} +1 -1
- package/dist/assets/{createTaskActions-3GlYVBJ_.js → createTaskActions-BIHqTo58.js} +1 -1
- package/dist/assets/{digitalhuman-Bg332ODT.js → digitalhuman-JIV-7PNi.js} +1 -1
- package/dist/assets/{dollar-sign-CFS9WzpA.js → dollar-sign-CvqHWnvf.js} +1 -1
- package/dist/assets/{download-DaUWS-Bd.js → download-BjkW5Ydh.js} +1 -1
- package/dist/assets/{drawer-BTb568QE.js → drawer-CkZCLO7b.js} +1 -1
- package/dist/assets/{dropdown-xd9DYGqT.js → dropdown-CRMUbwOV.js} +1 -1
- package/dist/assets/{dropdown-D_F9a5m3.js → dropdown-R7eP0cNA.js} +1 -1
- package/dist/assets/{ellipsis-CeKAUsOj.js → ellipsis-CLw7PgsI.js} +1 -1
- package/dist/assets/{esm-ChgFCapd.js → esm-BizVUEKJ.js} +1 -1
- package/dist/assets/{esm-BdoKnR--.js → esm-CiPrJPKR.js} +1 -1
- package/dist/assets/{esm-DM9Fxltm.js → esm-CnZ1TrhS.js} +3 -3
- package/dist/assets/esm-CvxStNtZ.js +1 -0
- package/dist/assets/{esm-DCXotMX3.js → esm-DWIhpOHv.js} +1 -1
- package/dist/assets/{esm-CYoG29Gp.js → esm-DunEcACd.js} +2 -2
- package/dist/assets/{esm-BLdpHY_F.js → esm-fpr8pfKA.js} +2 -2
- package/dist/assets/{external-link-b0HsOZxw.js → external-link-BV0M0EiG.js} +1 -1
- package/dist/assets/{eye-YAISnHSQ.js → eye-DkvOCGKs.js} +1 -1
- package/dist/assets/{file-output-BqkyEnv-.js → file-output-DilhJsDB.js} +1 -1
- package/dist/assets/{file-text-DsgjIpdF.js → file-text-BaXF95dO.js} +1 -1
- package/dist/assets/{fish-DBkKcosM.js → fish-6sF50VHV.js} +1 -1
- package/dist/assets/{flux-ChrhQbIG.js → flux-DQR0-Jds.js} +1 -1
- package/dist/assets/{folder-FhmDBUBS.js → folder-DQ6Cq_co.js} +1 -1
- package/dist/assets/gauge-erJ6WTbe.js +1 -0
- package/dist/assets/{globe-Bmloh9mt.js → globe-BM-dorYw.js} +1 -1
- package/dist/assets/{grokvideo-D73qbq_i.js → grokvideo-Dsc1Mkh1.js} +1 -1
- package/dist/assets/{hailuo-D32O85q_.js → hailuo-Ci6fOfRP.js} +1 -1
- package/dist/assets/{headphones-ByWmiVQB.js → headphones-BjoPl9_v.js} +1 -1
- package/dist/assets/{history-DhPnMvMV.js → history-5oRRsRKw.js} +1 -1
- package/dist/assets/{image-wpaPNlv3.js → image-6qUMCOj2.js} +1 -1
- package/dist/assets/{index-Cfewjxc5.css → index-C0-sWesJ.css} +1 -1
- package/dist/assets/{index-BxHiLpHH.js → index-Ci5hCIG4.js} +3 -3
- package/dist/assets/{index.browser.esm-DScAFw7a.js → index.browser.esm-DAaSTZOH.js} +1 -1
- package/dist/assets/{index.es-Bw74sJPg.js → index.es-Ctitng-j.js} +1 -1
- package/dist/assets/{info-CIky8Wbu.js → info-IjBXlNby.js} +1 -1
- package/dist/assets/{input-number-BR2Mu5ij.js → input-number-D9Qcjd0v.js} +1 -1
- package/dist/assets/{key-round-CixzZJn_.js → key-round-CktMU_4o.js} +1 -1
- package/dist/assets/{kling-B6POq-m8.js → kling-B0JMJZfT.js} +1 -1
- package/dist/assets/{languages-DOseCPxD.js → languages-D0TY3LfX.js} +1 -1
- package/dist/assets/{laptop-Be6kvy0C.js → laptop-J_7p65EB.js} +1 -1
- package/dist/assets/{lightbulb-rIlVCufE.js → lightbulb-CkFLPaQG.js} +1 -1
- package/dist/assets/{link-D1M-24Rw.js → link-C_ITA-Xo.js} +1 -1
- package/dist/assets/loader-circle-DX2RG6LF.js +1 -0
- package/dist/assets/{luma-CfWUgpVJ.js → luma-Da1hp94C.js} +1 -1
- package/dist/assets/{maestro-COSVFt8c.js → maestro-KzLwIrrL.js} +1 -1
- package/dist/assets/{mail-B23BCE03.js → mail-BP9w2kEq.js} +1 -1
- package/dist/assets/{message-circle-B7rH-YAI.js → message-circle-Bzcei0NA.js} +1 -1
- package/dist/assets/{mic-D2PbMdWj.js → mic-kD_prLjq.js} +1 -1
- package/dist/assets/{midjourney-Du-XPbhQ.js → midjourney-DL8IOvmz.js} +1 -1
- package/dist/assets/{mobileLocalExec-CDEDXJXu.js → mobileLocalExec-oK7lvDyB.js} +2 -2
- package/dist/assets/{mouse-pointer-2-BXyHemtD.js → mouse-pointer-2-BUZ6nXT1.js} +1 -1
- package/dist/assets/music-2-vqvjYYOC.js +1 -0
- package/dist/assets/{nanobanana-CIieo2fN.js → nanobanana-BulasW7z.js} +1 -1
- package/dist/assets/{omni-DG7YP-Gm.js → omni-CTEPVdOR.js} +1 -1
- package/dist/assets/{openaiimage-uzC9DGgH.js → openaiimage-DMMyn4Mq.js} +1 -1
- package/dist/assets/{pagination-5PZxIWWU.js → pagination-Duds8BKZ.js} +1 -1
- package/dist/assets/{pagination-BYV_3jrR.js → pagination-cB0ZU00F.js} +1 -1
- package/dist/assets/{palette-CEZXScvS.js → palette-B1_76nVC.js} +1 -1
- package/dist/assets/{paperclip-KXEt0oS7.js → paperclip-dxrfyaR4.js} +1 -1
- package/dist/assets/{pause-Bue2vqD4.js → pause-BJFYWbVL.js} +1 -1
- package/dist/assets/{pencil-BhBxDtfe.js → pencil-Vv55uNLq.js} +1 -1
- package/dist/assets/{pika-C6CYRPxL.js → pika-B6s7gEV-.js} +1 -1
- package/dist/assets/{pixverse-CkAOOUn3.js → pixverse-JUEJCREb.js} +1 -1
- package/dist/assets/play-BcifECzE.js +1 -0
- package/dist/assets/plus-CjwGm9mF.js +1 -0
- package/dist/assets/{popover-DWXLmzVN.js → popover-os9V_gn4.js} +1 -1
- package/dist/assets/{producer-BhKowXx8.js → producer-DDA3k3rb.js} +1 -1
- package/dist/assets/{qrart-DY5zdnNJ.js → qrart-Dz3WX6oC.js} +1 -1
- package/dist/assets/{realtime-Cza4iKah.js → realtime-DOVR_suR.js} +1 -1
- package/dist/assets/{refresh-cw-DS7gxhHJ.js → refresh-cw-D9b_4lMI.js} +1 -1
- package/dist/assets/rotate-ccw-dK9UQeMn.js +1 -0
- package/dist/assets/rotate-cw-E0yZknqy.js +1 -0
- package/dist/assets/{row-B0OfQnxx.js → row-smc5N-qa.js} +1 -1
- package/dist/assets/search-BOwbfLBh.js +1 -0
- package/dist/assets/{seedance-Bbfapnwk.js → seedance-BHA0yNXW.js} +1 -1
- package/dist/assets/{seedream-CHAcYMtI.js → seedream-CepMo5jH.js} +1 -1
- package/dist/assets/{select-DUVlT9hf.js → select-C1Ma2gSa.js} +1 -1
- package/dist/assets/{serp-CnWdo1Kw.js → serp-Cow95OvY.js} +1 -1
- package/dist/assets/{shield-C8WMDq57.js → shield-c4QYRHzK.js} +1 -1
- package/dist/assets/{shuffle-ciT9HB3I.js → shuffle-Q4k3l3hJ.js} +1 -1
- package/dist/assets/{slider-BtWk6ssI.js → slider-CWPgCVHg.js} +1 -1
- package/dist/assets/{sliders-horizontal-BrbLPoUJ.js → sliders-horizontal-COuqdG-f.js} +1 -1
- package/dist/assets/{solana-wallets-Br_Gl0A-.js → solana-wallets-Bw5PqqK8.js} +2 -2
- package/dist/assets/{solana-wallets-vue-r8bhz8g7.js → solana-wallets-vue-DZdJTIEx.js} +1 -1
- package/dist/assets/{sora-B-_lOCvv.js → sora-BgKgGauK.js} +1 -1
- package/dist/assets/square-DsCbI1dK.js +1 -0
- package/dist/assets/{suno-hd1kV9am.js → suno-DlLAcyKx.js} +1 -1
- package/dist/assets/{switch-CCuW_1N4.js → switch-DadwXkG7.js} +1 -1
- package/dist/assets/{table-10S0N7Lq.js → table-B9JboppY.js} +1 -1
- package/dist/assets/{tabs-HUWpQrx0.js → tabs-CQBOGFYu.js} +1 -1
- package/dist/assets/{tag--d1uiCpB.js → tag-DEdxUrEi.js} +1 -1
- package/dist/assets/{taskDrawerMixin-7tqZnehJ.js → taskDrawerMixin-Ct12-UZy.js} +1 -1
- package/dist/assets/terminal-kTC_S2SG.js +1 -0
- package/dist/assets/{time-picker-DIaCK7uQ.js → time-picker-DQ_FbC6U.js} +1 -1
- package/dist/assets/{tooltip-Gx4jPHlO.js → tooltip-CePK2R6y.js} +1 -1
- package/dist/assets/{trash-2-CYODcd1K.js → trash-2-Bt8MKQdU.js} +1 -1
- package/dist/assets/{triangle-alert-DjbquHLH.js → triangle-alert-DvAIYGtz.js} +1 -1
- package/dist/assets/{upload-B9ekoGFH.js → upload-BbBrloaN.js} +1 -1
- package/dist/assets/{upload-BWf23oQa.js → upload-DcJ5lW69.js} +1 -1
- package/dist/assets/user-bHXyxyj9.js +1 -0
- package/dist/assets/{veo-dwg2bowY.js → veo-CPtRPmRO.js} +1 -1
- package/dist/assets/{video-Bu_CmK1e.js → video-BQtA2lRs.js} +1 -1
- package/dist/assets/{volume-2-BJIylI2W.js → volume-2-Bl3dCCw1.js} +1 -1
- package/dist/assets/{wallet-CIDNjlIu.js → wallet-DNYvAin4.js} +1 -1
- package/dist/assets/{wan-WAx9LSVV.js → wan-DHoZoWXc.js} +1 -1
- package/dist/assets/{wand-sparkles-CiQpHMMP.js → wand-sparkles-CsPJl6oi.js} +1 -1
- package/dist/assets/{web-CDfWGNCh.js → web-BZSJKerQ.js} +1 -1
- package/dist/assets/{web-CusVhh7v.js → web-C2Q8qjUd.js} +1 -1
- package/dist/assets/{web-DIublOSG.js → web-CRwhjt7R.js} +1 -1
- package/dist/assets/{web-Df2PJCGO.js → web-DdIk935G.js} +1 -1
- package/dist/assets/{web-CVLQ26Fp.js → web-Dy53CiHo.js} +1 -1
- package/dist/assets/{webextrator-DdXnI9Vg.js → webextrator-CAVcJWE9.js} +1 -1
- package/dist/assets/{zap-CcogLrun.js → zap-37Ayx0yM.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +1 -1
- package/dist/assets/Index-C-HGrlwS.css +0 -1
- package/dist/assets/Index-CY-ummV-.js +0 -1
- package/dist/assets/Index-D9srmVjK.css +0 -1
- package/dist/assets/Index-DbxRnJBR.css +0 -1
- package/dist/assets/TabSwitcher-BZYY-iDD.css +0 -1
- package/dist/assets/TabSwitcher-zegVZenS.js +0 -1
- package/dist/assets/arrow-down-DB6kszvp.js +0 -1
- package/dist/assets/arrow-left-DSwyqZnY.js +0 -1
- package/dist/assets/arrow-right-CHPX_N2y.js +0 -1
- package/dist/assets/arrow-up-DVVmqNgu.js +0 -1
- package/dist/assets/check-aLE5ztPJ.js +0 -1
- package/dist/assets/chevron-down-vuPAq13O.js +0 -1
- package/dist/assets/chevron-right-DpHaUDEn.js +0 -1
- package/dist/assets/circle-check-DSgptsGK.js +0 -1
- package/dist/assets/clock-DBA92Mpf.js +0 -1
- package/dist/assets/esm-ZyhXDEFa.js +0 -1
- package/dist/assets/gauge-DegSoIN2.js +0 -1
- package/dist/assets/loader-circle-Dgp1CZjS.js +0 -1
- package/dist/assets/music-2-CaUyBRYJ.js +0 -1
- package/dist/assets/play-eiM_z56b.js +0 -1
- package/dist/assets/plus-BmJw3Aio.js +0 -1
- package/dist/assets/rotate-ccw-CwK8kfa-.js +0 -1
- package/dist/assets/rotate-cw-CDHuoduF.js +0 -1
- package/dist/assets/search-DQWgN4hZ.js +0 -1
- package/dist/assets/square-sxcwzAnL.js +0 -1
- package/dist/assets/terminal-CL0T5eV2.js +0 -1
- package/dist/assets/user-OnR_DaXa.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-BWf23oQa.js";import{t as g}from"./alert-B2CVhm_j.js";import{n as _,r as v}from"./radio-B0Elgaw9.js";import{t as y}from"./switch-CCuW_1N4.js";import{i as b}from"./taskDrawerMixin-7tqZnehJ.js";import{t as x}from"./check-aLE5ztPJ.js";import{t as S}from"./CopyToClipboard-CdZHnA6f.js";import{t as C}from"./eye-YAISnHSQ.js";import{t as w}from"./mic-D2PbMdWj.js";import{t as T}from"./rotate-ccw-CwK8kfa-.js";import{t as E}from"./shuffle-ciT9HB3I.js";import{t as ee}from"./square-sxcwzAnL.js";import{t as D}from"./upload-B9ekoGFH.js";import{t as O}from"./volume-2-BJIylI2W.js";import{t as k}from"./wand-sparkles-CiQpHMMP.js";import{t as A}from"./vendor-axios-Ck2ffRoh.js";import"./constants-Bq6v7ZuS.js";import{$t as te,Ai as j,Bt as ne,E as M,gi as N,gn as P,ri as F,tt as I,yi as L,zi as R}from"./index-BxHiLpHH.js";import{t as z}from"./BotPlaceholder-DSEljO8x.js";import{t as B}from"./Hailuo-CNWEzoB6.js";import{t as V}from"./TabSwitcher-zegVZenS.js";var H=4,U=90,W=m({name:`FishRecorder`,components:{ConfirmIcon:x,DocsIcon:b,MicrophoneIcon:w,ShuffleIcon:E,StopIcon:ee,UndoIcon:T,ElButton:j},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`){N.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`;N.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){N.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(`${F()}/api/v1/files/`,r,{headers:{Authorization:`Bearer ${e}`}}),a=i?.file_url;if(!a){N.error(this.$t(`fish.message.uploadError`));return}this.$emit(`done`,{url:a,text:this.currentScript})}catch(e){N.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=M(W,[[`render`,ce],[`__scopeId`,`data-v-40e201f8`]]),ue=50*1024*1024,Q=()=>({title:``,description:``,texts:``,voicesUrl:``,visibility:`unlist`,trainMode:`fast`,enhanceAudio:!0,generateSample:!1}),de=m({name:`FishModelConfigPanel`,components:{MagicIcon:k,MicrophoneIcon:w,UndoIcon:T,UploadIcon:D,ElButton:j,ElInput:R,ElRadioButton:_,ElRadioGroup:v,ElSwitch:y,ElUpload:h,Recorder:le},mixins:[ne],emits:[`create`],data(){return{form:Q(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return F()+`/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?(N.warning(this.$t(`fish.message.audioSizeExceed`)),!1):(this.uploading=!0,!0)},onExceed(){N.warning(this.$t(`fish.message.audioOnlyOne`))},onUploadError(){this.uploading=!1,N.error(this.$t(`fish.message.uploadError`))},onUploadSuccess(e,t,n){this.uploading=!1;let r=e?.file_url;if(!r){N.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){N.warning(this.$t(`fish.message.titleRequired`));return}if(!this.form.voicesUrl){N.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-4`},Pe={class:`title font-bold`},Fe={class:`field-block mb-3`},Ie={class:`field-row`},Le={class:`title font-bold`},Re={class:`hint mt-0 mb-0`},ze={class:`field-block mb-2`},Be={class:`field-row`},Ve={class:`title font-bold`},He={class:`hint mt-0 mb-0`},Ue={class:`flex flex-col items-center justify-center px-5 pb-5`};function We(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[9]||=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[10]||=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.visibility`)),1),a(w,{modelValue:t.form.visibility,"onUpdate:modelValue":n[5]||=e=>t.form.visibility=e,size:`small`},{default:d(()=>[a(C,{label:`private`,value:`private`},{default:d(()=>[r(i(t.$t(`fish.value.private`)),1)]),_:1}),a(C,{label:`unlist`,value:`unlist`},{default:d(()=>[r(i(t.$t(`fish.value.unlist`)),1)]),_:1}),a(C,{label:`public`,value:`public`},{default:d(()=>[r(i(t.$t(`fish.value.public`)),1)]),_:1})]),_:1},8,[`modelValue`])]),e(`div`,Ne,[e(`h2`,Pe,i(t.$t(`fish.name.trainMode`)),1),a(w,{modelValue:t.form.trainMode,"onUpdate:modelValue":n[6]||=e=>t.form.trainMode=e,size:`small`},{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`,Fe,[e(`div`,Ie,[e(`h2`,Le,i(t.$t(`fish.name.enhanceAudio`)),1),a(T,{modelValue:t.form.enhanceAudio,"onUpdate:modelValue":n[7]||=e=>t.form.enhanceAudio=e},null,8,[`modelValue`])]),e(`p`,Re,i(t.$t(`fish.description.enhanceAudio`)),1)]),e(`div`,ze,[e(`div`,Be,[e(`h2`,Ve,i(t.$t(`fish.name.generateSample`)),1),a(T,{modelValue:t.form.generateSample,"onUpdate:modelValue":n[8]||=e=>t.form.generateSample=e},null,8,[`modelValue`])]),e(`p`,He,i(t.$t(`fish.description.generateSample`)),1)])]),e(`div`,Ue,[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 Ge=M(de,[[`render`,We],[`__scopeId`,`data-v-b41158c0`]]),Ke=m({name:`FishVoiceCard`,components:{MicrophoneIcon:w,ViewIcon:C,VolumeIcon:O,ElAlert:g,ElButton:j,ElImage:L,CopyToClipboard:S},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}))}}}),qe={class:`card`},Je={class:`left`},Ye={class:`main`},Xe={class:`header`},Ze={class:`title`},Qe={key:0,class:`datetime`},$e={key:0,class:`description`},et={key:1,class:`sample mt-2`},tt=[`src`],nt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},it={class:`operations mt-2`};function at(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`,qe,[e(`div`,Je,[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`,Ye,[e(`div`,Xe,[e(`span`,Ze,i(n.modelValue?.title||n.$t(`fish.name.untitledVoice`)),1),n.createdAtLabel?(p(),s(`span`,Qe,i(n.createdAtLabel),1)):o(``,!0)]),n.modelValue?.description?(p(),s(`p`,$e,i(n.modelValue?.description),1)):o(``,!0),n.sampleAudioUrl?(p(),s(`div`,et,[e(`audio`,{src:n.sampleAudioUrl,controls:``,preload:`metadata`,class:`w-full`},null,8,tt)])):o(``,!0),a(x,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.voiceId?(p(),s(`p`,nt,[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`,rt,[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`,it,[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 ot=m({name:`FishModelListPanel`,components:{MicrophoneIcon:w,VoiceCard:M(Ke,[[`render`,at],[`__scopeId`,`data-v-9c092ba3`]]),BotPlaceholder:z},props:{loading:{type:Boolean,default:!1}},computed:{voices(){return this.$store.state.fish?.voices}}}),st={class:`model-list-panel flex flex-col h-full`},ct={class:`header`},lt={class:`title`},ut={key:0,class:`count`},dt={class:`body flex-1 min-h-0`},ft={key:0,class:`h-full`},$={key:1,class:`w-full h-full flex flex-col items-center justify-center text-center px-6`},pt={class:`empty-title`},mt={class:`empty-hint`},ht={key:2,class:`w-full h-full overflow-y-auto pr-1`};function gt(t,n,r,d,m,h){let g=l(`bot-placeholder`),_=l(`microphone-icon`),v=l(`voice-card`);return p(),s(`div`,st,[e(`header`,ct,[e(`h2`,lt,i(t.$t(`fish.title.myVoices`)),1),t.voices?.length?(p(),s(`span`,ut,i(t.voices?.length),1)):o(``,!0)]),e(`div`,dt,[t.voices===void 0?(p(),s(`div`,ft,[a(g)])):t.voices.length===0?(p(),s(`div`,$,[a(_,{class:`empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,pt,i(t.$t(`fish.title.noVoicesYet`)),1),e(`p`,mt,i(t.$t(`fish.description.noVoicesYet`)),1)])):(p(),s(`div`,ht,[(p(!0),s(c,null,f(t.voices,e=>(p(),u(v,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]))])])}var _t=m({name:`FishModelIndex`,components:{ModelConfigPanel:Ge,Layout:B,ModelListPanel:M(ot,[[`render`,gt],[`__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(!te())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}this.loading=!0,N.info(this.$t(`fish.message.creatingModel`));try{await P.createModel(e,{token:t}),N.success(this.$t(`fish.message.createModelSuccess`)),await this.onGetVoices()}catch(e){let t=e?.response?.data;t?.error?.code===`used_up`?N.error(this.$t(`fish.message.usedUp`)):N.error(t?.error?.message||this.$t(`fish.message.createModelFailed`))}finally{this.loading=!1}}}}),vt={class:`flex flex-col h-full`},yt={class:`flex-1 min-h-0`};function bt(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`,vt,[a(c),e(`div`,yt,[a(f,{onCreate:t.onCreate},null,8,[`onCreate`])])])]),result:d(()=>[a(m,{loading:t.loading},null,8,[`loading`])]),_:1})}var xt=M(_t,[[`render`,bt]]);export{xt 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-DcJ5lW69.js";import{t as g}from"./alert-Bv7a2-bB.js";import{n as _,r as v}from"./radio-B0Elgaw9.js";import{t as y}from"./switch-DadwXkG7.js";import{i as b}from"./taskDrawerMixin-Ct12-UZy.js";import{t as x}from"./check-Dd6vZzKs.js";import{t as S}from"./CopyToClipboard-B6Etf8vG.js";import{t as C}from"./eye-DkvOCGKs.js";import{t as w}from"./mic-kD_prLjq.js";import{t as T}from"./rotate-ccw-dK9UQeMn.js";import{t as E}from"./shuffle-Q4k3l3hJ.js";import{t as ee}from"./square-DsCbI1dK.js";import{t as D}from"./upload-BbBrloaN.js";import{t as O}from"./volume-2-Bl3dCCw1.js";import{t as k}from"./wand-sparkles-CsPJl6oi.js";import{t as A}from"./vendor-axios-Ck2ffRoh.js";import"./constants-Bq6v7ZuS.js";import{$t as te,Ai as j,Bt as ne,E as M,gi as N,gn as P,ri as F,tt as I,yi as L,zi as R}from"./index-Ci5hCIG4.js";import{t as z}from"./BotPlaceholder-sIp3N8Aw.js";import{t as B}from"./Hailuo-CugSTs_n.js";import{t as V}from"./TabSwitcher-2qROSZ8S.js";var H=4,U=90,W=m({name:`FishRecorder`,components:{ConfirmIcon:x,DocsIcon:b,MicrophoneIcon:w,ShuffleIcon:E,StopIcon:ee,UndoIcon:T,ElButton:j},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`){N.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`;N.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){N.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(`${F()}/api/v1/files/`,r,{headers:{Authorization:`Bearer ${e}`}}),a=i?.file_url;if(!a){N.error(this.$t(`fish.message.uploadError`));return}this.$emit(`done`,{url:a,text:this.currentScript})}catch(e){N.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=M(W,[[`render`,ce],[`__scopeId`,`data-v-40e201f8`]]),ue=50*1024*1024,Q=()=>({title:``,description:``,texts:``,voicesUrl:``,visibility:`unlist`,trainMode:`fast`,enhanceAudio:!0,generateSample:!1}),de=m({name:`FishModelConfigPanel`,components:{MagicIcon:k,MicrophoneIcon:w,UndoIcon:T,UploadIcon:D,ElButton:j,ElInput:R,ElRadioButton:_,ElRadioGroup:v,ElSwitch:y,ElUpload:h,Recorder:le},mixins:[ne],emits:[`create`],data(){return{form:Q(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return F()+`/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?(N.warning(this.$t(`fish.message.audioSizeExceed`)),!1):(this.uploading=!0,!0)},onExceed(){N.warning(this.$t(`fish.message.audioOnlyOne`))},onUploadError(){this.uploading=!1,N.error(this.$t(`fish.message.uploadError`))},onUploadSuccess(e,t,n){this.uploading=!1;let r=e?.file_url;if(!r){N.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){N.warning(this.$t(`fish.message.titleRequired`));return}if(!this.form.voicesUrl){N.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-4`},Pe={class:`title font-bold`},Fe={class:`field-block mb-3`},Ie={class:`field-row`},Le={class:`title font-bold`},Re={class:`hint mt-0 mb-0`},ze={class:`field-block mb-2`},Be={class:`field-row`},Ve={class:`title font-bold`},He={class:`hint mt-0 mb-0`},Ue={class:`flex flex-col items-center justify-center px-5 pb-5`};function We(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[9]||=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[10]||=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.visibility`)),1),a(w,{modelValue:t.form.visibility,"onUpdate:modelValue":n[5]||=e=>t.form.visibility=e,size:`small`},{default:d(()=>[a(C,{label:`private`,value:`private`},{default:d(()=>[r(i(t.$t(`fish.value.private`)),1)]),_:1}),a(C,{label:`unlist`,value:`unlist`},{default:d(()=>[r(i(t.$t(`fish.value.unlist`)),1)]),_:1}),a(C,{label:`public`,value:`public`},{default:d(()=>[r(i(t.$t(`fish.value.public`)),1)]),_:1})]),_:1},8,[`modelValue`])]),e(`div`,Ne,[e(`h2`,Pe,i(t.$t(`fish.name.trainMode`)),1),a(w,{modelValue:t.form.trainMode,"onUpdate:modelValue":n[6]||=e=>t.form.trainMode=e,size:`small`},{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`,Fe,[e(`div`,Ie,[e(`h2`,Le,i(t.$t(`fish.name.enhanceAudio`)),1),a(T,{modelValue:t.form.enhanceAudio,"onUpdate:modelValue":n[7]||=e=>t.form.enhanceAudio=e},null,8,[`modelValue`])]),e(`p`,Re,i(t.$t(`fish.description.enhanceAudio`)),1)]),e(`div`,ze,[e(`div`,Be,[e(`h2`,Ve,i(t.$t(`fish.name.generateSample`)),1),a(T,{modelValue:t.form.generateSample,"onUpdate:modelValue":n[8]||=e=>t.form.generateSample=e},null,8,[`modelValue`])]),e(`p`,He,i(t.$t(`fish.description.generateSample`)),1)])]),e(`div`,Ue,[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 Ge=M(de,[[`render`,We],[`__scopeId`,`data-v-b41158c0`]]),Ke=m({name:`FishVoiceCard`,components:{MicrophoneIcon:w,ViewIcon:C,VolumeIcon:O,ElAlert:g,ElButton:j,ElImage:L,CopyToClipboard:S},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}))}}}),qe={class:`card`},Je={class:`left`},Ye={class:`main`},Xe={class:`header`},Ze={class:`title`},Qe={key:0,class:`datetime`},$e={key:0,class:`description`},et={key:1,class:`sample mt-2`},tt=[`src`],nt={key:0,class:`text-[var(--el-text-color-regular)] text-xs mb-2`},rt={key:1,class:`text-[var(--el-text-color-regular)] text-xs mb-0`},it={class:`operations mt-2`};function at(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`,qe,[e(`div`,Je,[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`,Ye,[e(`div`,Xe,[e(`span`,Ze,i(n.modelValue?.title||n.$t(`fish.name.untitledVoice`)),1),n.createdAtLabel?(p(),s(`span`,Qe,i(n.createdAtLabel),1)):o(``,!0)]),n.modelValue?.description?(p(),s(`p`,$e,i(n.modelValue?.description),1)):o(``,!0),n.sampleAudioUrl?(p(),s(`div`,et,[e(`audio`,{src:n.sampleAudioUrl,controls:``,preload:`metadata`,class:`w-full`},null,8,tt)])):o(``,!0),a(x,{closable:!1,class:`mt-2 success`},{default:d(()=>[n.voiceId?(p(),s(`p`,nt,[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`,rt,[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`,it,[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 ot=m({name:`FishModelListPanel`,components:{MicrophoneIcon:w,VoiceCard:M(Ke,[[`render`,at],[`__scopeId`,`data-v-9c092ba3`]]),BotPlaceholder:z},props:{loading:{type:Boolean,default:!1}},computed:{voices(){return this.$store.state.fish?.voices}}}),st={class:`model-list-panel flex flex-col h-full`},ct={class:`header`},lt={class:`title`},ut={key:0,class:`count`},dt={class:`body flex-1 min-h-0`},ft={key:0,class:`h-full`},$={key:1,class:`w-full h-full flex flex-col items-center justify-center text-center px-6`},pt={class:`empty-title`},mt={class:`empty-hint`},ht={key:2,class:`w-full h-full overflow-y-auto pr-1`};function gt(t,n,r,d,m,h){let g=l(`bot-placeholder`),_=l(`microphone-icon`),v=l(`voice-card`);return p(),s(`div`,st,[e(`header`,ct,[e(`h2`,lt,i(t.$t(`fish.title.myVoices`)),1),t.voices?.length?(p(),s(`span`,ut,i(t.voices?.length),1)):o(``,!0)]),e(`div`,dt,[t.voices===void 0?(p(),s(`div`,ft,[a(g)])):t.voices.length===0?(p(),s(`div`,$,[a(_,{class:`empty-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,pt,i(t.$t(`fish.title.noVoicesYet`)),1),e(`p`,mt,i(t.$t(`fish.description.noVoicesYet`)),1)])):(p(),s(`div`,ht,[(p(!0),s(c,null,f(t.voices,e=>(p(),u(v,{key:e.id,"model-value":e},null,8,[`model-value`]))),128))]))])])}var _t=m({name:`FishModelIndex`,components:{ModelConfigPanel:Ge,Layout:B,ModelListPanel:M(ot,[[`render`,gt],[`__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(!te())return;let t=this.credential?.token;if(!t){console.error(`no token specified`);return}this.loading=!0,N.info(this.$t(`fish.message.creatingModel`));try{await P.createModel(e,{token:t}),N.success(this.$t(`fish.message.createModelSuccess`)),await this.onGetVoices()}catch(e){let t=e?.response?.data;t?.error?.code===`used_up`?N.error(this.$t(`fish.message.usedUp`)):N.error(t?.error?.message||this.$t(`fish.message.createModelFailed`))}finally{this.loading=!1}}}}),vt={class:`flex flex-col h-full`},yt={class:`flex-1 min-h-0`};function bt(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`,vt,[a(c),e(`div`,yt,[a(f,{onCreate:t.onCreate},null,8,[`onCreate`])])])]),result:d(()=>[a(m,{loading:t.loading},null,8,[`loading`])]),_:1})}var xt=M(_t,[[`render`,bt]]);export{xt as default};
|