@acedatacloud/nexior 3.330.18 → 3.330.20
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-DAerJ0va.js → ApiCodeButton-F0ATxwIJ.js} +1 -1
- package/dist/assets/{Artifacts-D92d9HzX.js → Artifacts-J7lPvwCG.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-BVEMgpB8.js → AskUserQuestionCard-DnRQ3Xc_.js} +1 -1
- package/dist/assets/{AudioPreview-2bqIwv0t.js → AudioPreview-BxqPvf8C.js} +1 -1
- package/dist/assets/{Auth-CUDciawF.js → Auth-DYsSyeAZ.js} +1 -1
- package/dist/assets/{Bare-BgOwCBhK.js → Bare-W7rPEo9c.js} +1 -1
- package/dist/assets/{BotPlaceholder-CAUnu1Lv.js → BotPlaceholder-DkVBzsjz.js} +1 -1
- package/dist/assets/{BottomFooter-DiROxlrH.js → BottomFooter-B9b-aBHU.js} +1 -1
- package/dist/assets/{Callback-C8Gf_ISI.js → Callback-CEEmXDdt.js} +1 -1
- package/dist/assets/{CodeSnippet-BHHR2rxr.js → CodeSnippet-CJ7rhIQl.js} +1 -1
- package/dist/assets/{Console-BPJeg4SL.js → Console-DB5PSwUQ.js} +1 -1
- package/dist/assets/{Consumption-ClsP4NK3.js → Consumption-BaXzw92y.js} +1 -1
- package/dist/assets/{Conversation-BphSvyp7.js → Conversation-C58bgnxr.js} +1 -1
- package/dist/assets/Conversation-DMZGxoB1.js +1 -0
- package/dist/assets/{Conversation-Bm7jDkWb.css → Conversation-UiaCVlw0.css} +1 -1
- package/dist/assets/{CopyToClipboard-Ci7cxzlE.js → CopyToClipboard-CFq4syZL.js} +1 -1
- package/dist/assets/{Detail-y6mVEI-d.js → Detail-COP09heH.js} +2 -2
- package/dist/assets/{Extra-DKqf1L0Y.js → Extra-ClfHTe2i.js} +1 -1
- package/dist/assets/{FilePreview-qsjeLh9w.js → FilePreview-BEMnDzog.js} +1 -1
- package/dist/assets/{Hailuo-BasqONZs.js → Hailuo-Cb6FTxJw.js} +1 -1
- package/dist/assets/{History-D4bKmVgX.js → History-DTf5Z4mc.js} +1 -1
- package/dist/assets/{ImagePreview-Cxt63DK7.js → ImagePreview-GQ5yyc1Y.js} +1 -1
- package/dist/assets/{ImageWrapper-C2W3ScDK.js → ImageWrapper-CWaUYW-8.js} +1 -1
- package/dist/assets/{Index-D7ktkYK5.js → Index-BCbsbQqR.js} +1 -1
- package/dist/assets/{Index-6Q5kx2Rz2.js → Index-BIfiPxA52.js} +1 -1
- package/dist/assets/{Index-DjAM-OSF2.js → Index-Bi56yImM2.js} +1 -1
- package/dist/assets/{Index-BlVsv-QK2.js → Index-BrhMS48B2.js} +1 -1
- package/dist/assets/{Index-HjGuk9y4.js → Index-BsmfyWbN.js} +1 -1
- package/dist/assets/{Index-BriGZZYr.js → Index-BuM4H5ll.js} +1 -1
- package/dist/assets/{Index-UiW2eW_r.js → Index-BuhtBNTu.js} +1 -1
- package/dist/assets/{Index-nHCBIQj3.js → Index-By5CLiSu.js} +1 -1
- package/dist/assets/{Index-D4vG94ug.js → Index-C0y2FAbZ.js} +1 -1
- package/dist/assets/{Index-BxN81P8a.js → Index-C3yUbi8D.js} +1 -1
- package/dist/assets/{Index-2yzTSWNN2.js → Index-CUQYVVis2.js} +1 -1
- package/dist/assets/{Index-CzwkSwTK.js → Index-CWAbC4M_.js} +1 -1
- package/dist/assets/{Index-CrNQd5dW.js → Index-CgY2KfKA.js} +1 -1
- package/dist/assets/{Index-BznwvH3R.js → Index-Cil9jsRs.js} +1 -1
- package/dist/assets/{Index-ElVDPvZY.js → Index-D-U_RYqa.js} +1 -1
- package/dist/assets/{Index-DIeVpZ5c.js → Index-D1JALjYq.js} +1 -1
- package/dist/assets/{Index-7t__zLM0.js → Index-DAYiL7UY.js} +1 -1
- package/dist/assets/{Index--CgVa11m.js → Index-DCC5NTlI.js} +1 -1
- package/dist/assets/{Index-Bq766IC-.js → Index-DIQeINfi.js} +1 -1
- package/dist/assets/{Index-B03xZRhJ.js → Index-DMczhGAR.js} +1 -1
- package/dist/assets/{Index-CgWg4Jpc2.js → Index-D_Opld1H2.js} +1 -1
- package/dist/assets/{Index-CvA5aVMp.js → Index-DcznIjOE.js} +1 -1
- package/dist/assets/{Index-Di1N9Lbm.js → Index-Df0CouI0.js} +1 -1
- package/dist/assets/{Index-BMdwvmPm.js → Index-DiZznMVo.js} +1 -1
- package/dist/assets/{Index-wxTBQTsR.js → Index-Dk8CdEJs.js} +1 -1
- package/dist/assets/{Index-pQR0om8-.js → Index-Qtq6k0qw.js} +1 -1
- package/dist/assets/{Index-Dtnjabt32.js → Index-XUJpP9NK2.js} +1 -1
- package/dist/assets/{Index-DkEoWkGe2.js → Index-_Mx3IWfL2.js} +1 -1
- package/dist/assets/{Index-C2RY8oc2.js → Index-nm-Jft3r.js} +1 -1
- package/dist/assets/{Index-Qwgdl8PP.js → Index-phSyTaBu.js} +1 -1
- package/dist/assets/{Invitees-Bu-uWbmW.js → Invitees-ZNrcDErx.js} +1 -1
- package/dist/assets/{List-CnF46B6P.js → List-BXwtgg0Z.js} +1 -1
- package/dist/assets/{List-Peu7mXfH.js → List-Ccm0waeM.js} +1 -1
- package/dist/assets/{List-CbDgflRF.js → List-DPdyzvKQ.js} +1 -1
- package/dist/assets/{LocalTools-BA9j6ojy.js → LocalTools-Bm7mQ0Am.js} +1 -1
- package/dist/assets/{LocalTools-BeyQ4RHf.js → LocalTools-yQkVaw-X.js} +1 -1
- package/dist/assets/{Main-DTP5ke2E.js → Main-Brpyh7Do.js} +1 -1
- package/dist/assets/{Message-DBok8d5N.js → Message-CBQvrB5t.js} +1 -1
- package/dist/assets/{Model-DtxqDeeU.js → Model-CA8uxL2G.js} +1 -1
- package/dist/assets/{Navigator-CnEL3Xs1.js → Navigator-ClxSZTmY.js} +3 -3
- package/dist/assets/{NotFound-DaBUW98D.js → NotFound-k8VVO0Tt.js} +1 -1
- package/dist/assets/{Pay-CRRK-AwK.js → Pay-CPUzShbl.js} +1 -1
- package/dist/assets/{Player-0u_iM-P8.js → Player-DNknlB3m.js} +1 -1
- package/dist/assets/{Poivelle-DAKsoEHW.js → Poivelle-BsuJ_yEn.js} +1 -1
- package/dist/assets/{PromptTextarea-CuOOcgKb.js → PromptTextarea-C0uBKHIV.js} +1 -1
- package/dist/assets/{RealtimeCall-CvvpJ2Cj.js → RealtimeCall-XpMARxQX.js} +1 -1
- package/dist/assets/{ScheduledTasks-DE8NkzNE.js → ScheduledTasks-Q4RL9lJa.js} +1 -1
- package/dist/assets/{Status-CGIkhS0X.js → Status-BCO3QM6K.js} +1 -1
- package/dist/assets/{Subscribe-BRNJaFO-.js → Subscribe-KT22pN50.js} +1 -1
- package/dist/assets/{TabSwitcher-Carp37ht.js → TabSwitcher-QmywPant.js} +1 -1
- package/dist/assets/Tts-Cedzhaoh.css +1 -0
- package/dist/assets/Tts-DGsCez_w.js +1 -0
- package/dist/assets/{VideoPlayer-CxDMYTsw.js → VideoPlayer-CSNIl2YT.js} +1 -1
- package/dist/assets/{alert-C8HgA_KT.js → alert-w1kaGC8r.js} +1 -1
- package/dist/assets/arrow-down-bn7O_xPf.js +1 -0
- package/dist/assets/{arrow-down-wide-narrow-DKsZjleD.js → arrow-down-wide-narrow-DZlX-4xb.js} +1 -1
- package/dist/assets/arrow-left-jVgyWJkz.js +1 -0
- package/dist/assets/arrow-right-lLWseFOD.js +1 -0
- package/dist/assets/arrow-up-DT1A4R8y.js +1 -0
- package/dist/assets/{avatar-CMfVlUbO.js → avatar-kUU1RTwv.js} +1 -1
- package/dist/assets/{basic-CsAG71fI.js → basic-wyH1fH1X.js} +1 -1
- package/dist/assets/{box-Cz8y8ktW.js → box-CnKpk8us.js} +1 -1
- package/dist/assets/{boxes-D1-aw2BA.js → boxes-BoCtD0dH.js} +1 -1
- package/dist/assets/{brain-DH1yOKQg.js → brain-Be0vSB1z.js} +1 -1
- package/dist/assets/{chart-no-axes-combined-Da1sNUti.js → chart-no-axes-combined-DeGi1dGs.js} +1 -1
- package/dist/assets/{chat-DIEfs7zp.js → chat-gWyb26ta.js} +1 -1
- package/dist/assets/check-vXkWxIx1.js +1 -0
- package/dist/assets/chevron-down-DweTeYuu.js +1 -0
- package/dist/assets/chevron-right-DKQXtLOw.js +1 -0
- package/dist/assets/circle-check-Bx03arK7.js +1 -0
- package/dist/assets/clock-pyQU2aDC.js +1 -0
- package/dist/assets/{codingBridge-DCvOnDFl.js → codingBridge-CttYhNYd.js} +1 -1
- package/dist/assets/{codingBridgeNotify-DsZ_7p8y.js → codingBridgeNotify-B-LxFn5M.js} +2 -2
- package/dist/assets/{coins-DJ57fy17.js → coins-CrrV4j8K.js} +1 -1
- package/dist/assets/{collapse-CrGGHBVG.js → collapse-2iDiYifC.js} +1 -1
- package/dist/assets/{constants-mcSzdyE5.js → constants-au0ZzCx8.js} +1 -1
- package/dist/assets/{copy-CXTUVSVB.js → copy-CYQRBaxa.js} +1 -1
- package/dist/assets/{createTaskActions-BbJsZF8J.js → createTaskActions-C7weAXG9.js} +1 -1
- package/dist/assets/{digitalhuman-VHzi8067.js → digitalhuman-Db8EEDpt.js} +1 -1
- package/dist/assets/{dollar-sign-D4yB3nJ_.js → dollar-sign-BXGGUr9K.js} +1 -1
- package/dist/assets/{download-CU4G5hbi.js → download-OvEXtoUG.js} +1 -1
- package/dist/assets/{drawer-BB4cIDVl.js → drawer-LC7MaHe8.js} +1 -1
- package/dist/assets/{dropdown-Mj_RXudE.js → dropdown-BjvhqOya.js} +1 -1
- package/dist/assets/{dropdown-BWaxYGtu.js → dropdown-Dqf_7Uk2.js} +1 -1
- package/dist/assets/{ellipsis-A4khBrbD.js → ellipsis-CMh-0drt.js} +1 -1
- package/dist/assets/{esm-ikfTfrQE.js → esm-Bj18A5BP.js} +1 -1
- package/dist/assets/esm-Cy2SGmGp.js +1 -0
- package/dist/assets/{esm-DotVQs0V.js → esm-D8ci_dyT.js} +2 -2
- package/dist/assets/{esm-BJbu7SKE.js → esm-DDZDaNtw.js} +1 -1
- package/dist/assets/{esm-29rjsUtO.js → esm-DOj69nvn.js} +1 -1
- package/dist/assets/{esm-CEvi3txi.js → esm-DVPKLUxx.js} +3 -3
- package/dist/assets/{esm-C72hY5k3.js → esm-DhClz816.js} +2 -2
- package/dist/assets/{external-link-B9UnO8h9.js → external-link-Da9bVGx7.js} +1 -1
- package/dist/assets/{eye-Igd-5IKh.js → eye-Bdl3XRb2.js} +1 -1
- package/dist/assets/{file-output-DUeIOql-.js → file-output-DV8o6x9Q.js} +1 -1
- package/dist/assets/{file-text-eWKzWjMM.js → file-text-B8wU2fKy.js} +1 -1
- package/dist/assets/fish-5CTEKhPw.js +1 -0
- package/dist/assets/fish-A5mxP0D7.js +1 -0
- package/dist/assets/fish-B2aBA5Lt.js +1 -0
- package/dist/assets/fish-B7e2hc0R.js +1 -0
- package/dist/assets/fish-BDU-wEQv.js +1 -0
- package/dist/assets/fish-BKgfTY5M.js +1 -0
- package/dist/assets/fish-Bkj9qqW2.js +1 -0
- package/dist/assets/fish-BtmrGK3L.js +1 -0
- package/dist/assets/fish-BwYDMmxg.js +1 -0
- package/dist/assets/fish-C3-tYns0.js +1 -0
- package/dist/assets/fish-ChmBg5_x.js +1 -0
- package/dist/assets/fish-DCmeW3O7.js +1 -0
- package/dist/assets/{fish-xJvZbCL7.js → fish-DJKfp5nt.js} +1 -1
- package/dist/assets/fish-DMr1w3qQ.js +1 -0
- package/dist/assets/fish-DjcPWlKC.js +1 -0
- package/dist/assets/fish-DvrXivJD.js +1 -0
- package/dist/assets/fish-IDhzUnUr.js +1 -0
- package/dist/assets/fish-mqGghsJf.js +1 -0
- package/dist/assets/fish-oS70vPkk.js +1 -0
- package/dist/assets/{flux-C4SwEkvT.js → flux-BJ3A1OJg.js} +1 -1
- package/dist/assets/{folder-Df6vmWKq.js → folder-CCYZC_Pi.js} +1 -1
- package/dist/assets/gauge-Da_QGwFd.js +1 -0
- package/dist/assets/{globe-B1A0sLUZ.js → globe-DtBxMtnQ.js} +1 -1
- package/dist/assets/{grokvideo-ELoS64ma.js → grokvideo-BxpSBf7h.js} +1 -1
- package/dist/assets/{hailuo-BqKCE07E.js → hailuo-Basxw55S.js} +1 -1
- package/dist/assets/{headphones-CTKB00Yi.js → headphones-5dyIi4zI.js} +1 -1
- package/dist/assets/{history-B3PCqGqg.js → history-BvplK14v.js} +1 -1
- package/dist/assets/{house-D_BJgiTq.js → house-zRlVV2Av.js} +1 -1
- package/dist/assets/{i18n-Dxpy-4Gk.js → i18n-CTLRBj_V.js} +1 -1
- package/dist/assets/{image-gNa1xZpu.js → image-DlQ3KDwW.js} +1 -1
- package/dist/assets/{index-CFsbwwWs.js → index-BZq3jm8a.js} +4 -4
- package/dist/assets/{index.browser.esm-BS7AbQYg.js → index.browser.esm-D_AO8T-U.js} +1 -1
- package/dist/assets/{index.es-D_cROcA_.js → index.es-t8toyhVJ.js} +1 -1
- package/dist/assets/{info-DqIHVScS.js → info-Vuska8HI.js} +1 -1
- package/dist/assets/{input-number-CWSjoh3p.js → input-number-D1gEH1Hp.js} +1 -1
- package/dist/assets/{key-round-C0asj6so.js → key-round-Bq6QVZmb.js} +1 -1
- package/dist/assets/{kling-CQ6EjtWX.js → kling-BgQ0JBn6.js} +1 -1
- package/dist/assets/{languages-Dv7S8sy_.js → languages-DPN8cfr2.js} +1 -1
- package/dist/assets/{laptop-TeqVspjE.js → laptop-D_5jUyFA.js} +1 -1
- package/dist/assets/{lightbulb-D1cMjBAt.js → lightbulb-DbAIuB9Z.js} +1 -1
- package/dist/assets/{link-BJ4S90sw.js → link-CPlu7abr.js} +1 -1
- package/dist/assets/loader-circle-BcLVzjcN.js +1 -0
- package/dist/assets/{luma-bt4o5KgP.js → luma-BySVZzA-.js} +1 -1
- package/dist/assets/{maestro-XICLKX3k.js → maestro-CTYoyTMe.js} +1 -1
- package/dist/assets/{maestro-BemUNQR8.js → maestro-CrHTxv_4.js} +1 -1
- package/dist/assets/{mail-CeI-zAyA.js → mail-CR54sHPh.js} +1 -1
- package/dist/assets/{message-circle-D2GGvucd.js → message-circle-CbqHvkbK.js} +1 -1
- package/dist/assets/{mic-BOTpPWob.js → mic-B30_UWk0.js} +1 -1
- package/dist/assets/{midjourney-BjFPpQYb.js → midjourney-Cj8l-TqE.js} +1 -1
- package/dist/assets/{mobileLocalExec-Cv5cbeCb.js → mobileLocalExec-DJOTAIWw.js} +2 -2
- package/dist/assets/{mouse-pointer-2-BBjXELDI.js → mouse-pointer-2-B6sJWvaK.js} +1 -1
- package/dist/assets/music-2-DK_Dt_4b.js +1 -0
- package/dist/assets/{nanobanana-UEakfXiI.js → nanobanana-DHDBNIAB.js} +1 -1
- package/dist/assets/{omni-BpGJPTpm.js → omni-CSprgQ9f.js} +1 -1
- package/dist/assets/{openaiimage-DcodJ8fz.js → openaiimage-C4uPxmE8.js} +1 -1
- package/dist/assets/{pagination-DqGpeZlx.js → pagination-C4lWe3mD.js} +1 -1
- package/dist/assets/{pagination-CL8TviK8.js → pagination-CwKSQoIp.js} +1 -1
- package/dist/assets/{palette-D9lKhCWe.js → palette-CM7Bnf4f.js} +1 -1
- package/dist/assets/{paperclip-DGu3GmwC.js → paperclip-CvsJHqtB.js} +1 -1
- package/dist/assets/{pause-D2KrwuQx.js → pause-lnmjStqU.js} +1 -1
- package/dist/assets/{pencil-CIpj0T4h.js → pencil-CUgvnzHU.js} +1 -1
- package/dist/assets/{pika-DsBQ2v9q.js → pika-V1EaJUks.js} +1 -1
- package/dist/assets/{pixverse-DuSRPJy5.js → pixverse-BTEpOleY.js} +1 -1
- package/dist/assets/play-BygUicIz.js +1 -0
- package/dist/assets/plus-Bgm__ssL.js +1 -0
- package/dist/assets/{poivelle-sWx-Ohod.js → poivelle-LEP73XvK.js} +1 -1
- package/dist/assets/{popover-B-NKJRbu.js → popover-CdOBfWCL.js} +1 -1
- package/dist/assets/{producer-Cxu_i_e5.js → producer--3ecBwMb.js} +1 -1
- package/dist/assets/{qrart-CvBlKatG.js → qrart-CHcV77Wp.js} +1 -1
- package/dist/assets/{realtime-hs8yQB6U.js → realtime-CuF5f5g2.js} +1 -1
- package/dist/assets/{refresh-cw-DDLqu2dp.js → refresh-cw-DMcYrk_3.js} +1 -1
- package/dist/assets/rotate-ccw-D44HNrzP.js +1 -0
- package/dist/assets/rotate-cw-B6y7qzYj.js +1 -0
- package/dist/assets/{row-zv2RYPsp.js → row-Cz0enH0P.js} +1 -1
- package/dist/assets/search-DsT-E7jG.js +1 -0
- package/dist/assets/{seedance-Cn5iIxl9.js → seedance-15HvaMSh.js} +1 -1
- package/dist/assets/{seedream-rH5-XawP.js → seedream-Df72T4We.js} +1 -1
- package/dist/assets/{select-B2IH_A2T.js → select-zGPdE0Sk.js} +1 -1
- package/dist/assets/{serp-R3OR8B9R.js → serp-Cv0CAKZe.js} +1 -1
- package/dist/assets/{shield-eUVETJKY.js → shield-DeUB2z1Z.js} +1 -1
- package/dist/assets/{shuffle-ytiTWmh4.js → shuffle-BFcUmSjO.js} +1 -1
- package/dist/assets/{slider-DNATiQGM.js → slider-C0DJnIUv.js} +1 -1
- package/dist/assets/{sliders-horizontal-CAo_Eikh.js → sliders-horizontal-1Y7y3Q6K.js} +1 -1
- package/dist/assets/{solana-wallets-CvVE-Fg5.js → solana-wallets-Bv8rJ1I7.js} +2 -2
- package/dist/assets/{solana-wallets-vue-B4fBas-I.js → solana-wallets-vue-xvBEcu3l.js} +1 -1
- package/dist/assets/{sora-hvWtU-d8.js → sora-B4Z1G_kz.js} +1 -1
- package/dist/assets/{sparkles-HT6AZzS5.js → sparkles-D-1HP7fD.js} +1 -1
- package/dist/assets/square-CmIAGfzl.js +1 -0
- package/dist/assets/{suno-BpqD8PHZ.js → suno-DoFCAqg8.js} +1 -1
- package/dist/assets/{switch-f-rb9Xdl.js → switch-Cs75LPmN.js} +1 -1
- package/dist/assets/{table-BsFPK-GY.js → table-CsPs1-4x.js} +1 -1
- package/dist/assets/{tabs-BWAC5ytL.js → tabs-n_pKH8G_.js} +1 -1
- package/dist/assets/{tag-8UZnjrAK.js → tag-BZ5hTdb5.js} +1 -1
- package/dist/assets/{taskDrawerMixin-uEkwMALb.js → taskDrawerMixin-CMlwqOPR.js} +1 -1
- package/dist/assets/terminal-CTDCWu48.js +1 -0
- package/dist/assets/{time-picker-CS1Od3PK.js → time-picker-Cdzdvuh4.js} +1 -1
- package/dist/assets/{tooltip-1kimVXlI.js → tooltip-Cg4lvqxt.js} +1 -1
- package/dist/assets/{trash-2-DHsWQnzA.js → trash-2-BrjANKJH.js} +1 -1
- package/dist/assets/{triangle-alert-CgYZA69o.js → triangle-alert-BjeTc9sl.js} +1 -1
- package/dist/assets/{upload-CsGTsLeD.js → upload-BC6lRzPl.js} +1 -1
- package/dist/assets/{upload-CcDcSF_X.js → upload-BPadrurv.js} +1 -1
- package/dist/assets/user-0gpscnXo.js +1 -0
- package/dist/assets/{veo-e8xX8lkM.js → veo-CywAlhXY.js} +1 -1
- package/dist/assets/{video-DFnvJRca.js → video-DL4JCpg1.js} +1 -1
- package/dist/assets/{volume-2-i0TdrmUS.js → volume-2-4vdN1DJH.js} +1 -1
- package/dist/assets/{wallet-cui3amaR.js → wallet-BTJAf1Lx.js} +1 -1
- package/dist/assets/{wan-C1eec_X3.js → wan-BHffY3LL.js} +1 -1
- package/dist/assets/{wand-sparkles-C5ruxDvQ.js → wand-sparkles-D-HweR3j.js} +1 -1
- package/dist/assets/{web-BNQYpdiG.js → web-7jh8R_H6.js} +1 -1
- package/dist/assets/{web-3UHz7mou.js → web-BZvuUrlS.js} +1 -1
- package/dist/assets/{web-WjiLXdS1.js → web-BuoR2Dpn.js} +1 -1
- package/dist/assets/{web-DtaGjAmb.js → web-ChxEh0ml.js} +1 -1
- package/dist/assets/{web-CfdT_-cE.js → web-D_UuTDKk.js} +1 -1
- package/dist/assets/{webextrator-B2nJn4Z9.js → webextrator-C6CQxCFR.js} +1 -1
- package/dist/assets/{zap-Bfp53Qc4.js → zap-DYASpPZQ.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/Conversation-BkuGAieK.js +0 -1
- package/dist/assets/Tts-c2_cnD4h.js +0 -1
- package/dist/assets/Tts-kj8c15qm.css +0 -1
- package/dist/assets/arrow-down-BCdh_gdK.js +0 -1
- package/dist/assets/arrow-left-M-xtuFJN.js +0 -1
- package/dist/assets/arrow-right-CPW6Tbu0.js +0 -1
- package/dist/assets/arrow-up-BPo1i0Sq.js +0 -1
- package/dist/assets/check-C6AF3VyW.js +0 -1
- package/dist/assets/chevron-down-BkWvDvuS.js +0 -1
- package/dist/assets/chevron-right-DvXMRi59.js +0 -1
- package/dist/assets/circle-check-Dju9SuZu.js +0 -1
- package/dist/assets/clock-Dq4P7NTm.js +0 -1
- package/dist/assets/esm-CiJz4SLS.js +0 -1
- package/dist/assets/fish-BAYcXp_z.js +0 -1
- package/dist/assets/fish-BIZjlaQe.js +0 -1
- package/dist/assets/fish-BVKyhU7B.js +0 -1
- package/dist/assets/fish-BixJkppS.js +0 -1
- package/dist/assets/fish-BtnRbA1q.js +0 -1
- package/dist/assets/fish-Bu_UlZSB.js +0 -1
- package/dist/assets/fish-C0GcVbK7.js +0 -1
- package/dist/assets/fish-C3IY_4y1.js +0 -1
- package/dist/assets/fish-CJEdLISj.js +0 -1
- package/dist/assets/fish-CckLrOkF.js +0 -1
- package/dist/assets/fish-D04jSyr3.js +0 -1
- package/dist/assets/fish-D7Zgx_Nn.js +0 -1
- package/dist/assets/fish-DFgCBycH.js +0 -1
- package/dist/assets/fish-DK20PA_0.js +0 -1
- package/dist/assets/fish-Ddtlq7r2.js +0 -1
- package/dist/assets/fish-DwqJEX1m.js +0 -1
- package/dist/assets/fish-DxulaawV.js +0 -1
- package/dist/assets/fish-V9Uy3Lx-.js +0 -1
- package/dist/assets/gauge-CqoxQ199.js +0 -1
- package/dist/assets/loader-circle-CfTqIoa1.js +0 -1
- package/dist/assets/music-2-DiHygZOr.js +0 -1
- package/dist/assets/play-1lz-7Cnr.js +0 -1
- package/dist/assets/plus-CQubehjc.js +0 -1
- package/dist/assets/rotate-ccw-X3MF7mwB.js +0 -1
- package/dist/assets/rotate-cw-BRfNodGi.js +0 -1
- package/dist/assets/search-CJu44ezz.js +0 -1
- package/dist/assets/square-CggvfbY-.js +0 -1
- package/dist/assets/terminal-Dht6hckV.js +0 -1
- package/dist/assets/user-D7x7cgwD.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-CsGTsLeD.js";import{t as g}from"./alert-C8HgA_KT.js";import{n as _,r as v}from"./radio-DgDgyT2l.js";import{t as y}from"./switch-f-rb9Xdl.js";import{i as b}from"./taskDrawerMixin-uEkwMALb.js";import{t as x}from"./check-C6AF3VyW.js";import{t as S}from"./eye-Igd-5IKh.js";import{t as C}from"./mic-BOTpPWob.js";import{t as w}from"./rotate-ccw-X3MF7mwB.js";import{t as T}from"./shuffle-ytiTWmh4.js";import{t as E}from"./square-CggvfbY-.js";import{t as ee}from"./upload-CcDcSF_X.js";import{t as te}from"./volume-2-i0TdrmUS.js";import{t as D}from"./wand-sparkles-C5ruxDvQ.js";import{t as O}from"./vendor-axios-Ck2ffRoh.js";import"./constants-mcSzdyE5.js";import{Ci as k,E as A,Pi as j,Ui as ne,Vt as M,_n as N,bi as P,en as F,si as I,tt as L}from"./index-CFsbwwWs.js";import{t as R}from"./CopyToClipboard-Ci7cxzlE.js";import{t as z}from"./BotPlaceholder-CAUnu1Lv.js";import{t as B}from"./Hailuo-BasqONZs.js";import{t as V}from"./TabSwitcher-Carp37ht.js";var H=4,U=90,W=m({name:`FishRecorder`,components:{ConfirmIcon:x,DocsIcon:b,MicrophoneIcon:C,ShuffleIcon:T,StopIcon:E,UndoIcon:w,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`){P.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`;P.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){P.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 O.post(`${I()}/api/v1/files/`,r,{headers:{Authorization:`Bearer ${e}`}}),a=i?.file_url;if(!a){P.error(this.$t(`fish.message.uploadError`));return}this.$emit(`done`,{url:a,text:this.currentScript})}catch(e){P.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=A(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:D,MicrophoneIcon:C,UndoIcon:w,UploadIcon:ee,ElButton:j,ElInput:ne,ElRadioButton:_,ElRadioGroup:v,ElSwitch:y,ElUpload:h,Recorder:le},mixins:[M],emits:[`create`],data(){return{form:Q(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return I()+`/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?(P.warning(this.$t(`fish.message.audioSizeExceed`)),!1):(this.uploading=!0,!0)},onExceed(){P.warning(this.$t(`fish.message.audioOnlyOne`))},onUploadError(){this.uploading=!1,P.error(this.$t(`fish.message.uploadError`))},onUploadSuccess(e,t,n){this.uploading=!1;let r=e?.file_url;if(!r){P.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){P.warning(this.$t(`fish.message.titleRequired`));return}if(!this.form.voicesUrl){P.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=A(de,[[`render`,He],[`__scopeId`,`data-v-46dbe88b`]]),We=m({name:`FishVoiceCard`,components:{MicrophoneIcon:C,ViewIcon:S,VolumeIcon:te,ElAlert:g,ElButton:j,ElImage:k,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:L}))}}}),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:A(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:A(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,P.info(this.$t(`fish.message.creatingModel`));try{await N.createModel(e,{token:t}),P.success(this.$t(`fish.message.createModelSuccess`)),await this.onGetVoices()}catch(e){let t=e?.response?.data;t?.error?.code===`used_up`?P.error(this.$t(`fish.message.usedUp`)):P.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=A(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-BC6lRzPl.js";import{t as g}from"./alert-w1kaGC8r.js";import{n as _,r as v}from"./radio-DgDgyT2l.js";import{t as y}from"./switch-Cs75LPmN.js";import{i as b}from"./taskDrawerMixin-CMlwqOPR.js";import{t as x}from"./check-vXkWxIx1.js";import{t as S}from"./eye-Bdl3XRb2.js";import{t as C}from"./mic-B30_UWk0.js";import{t as w}from"./rotate-ccw-D44HNrzP.js";import{t as T}from"./shuffle-BFcUmSjO.js";import{t as E}from"./square-CmIAGfzl.js";import{t as ee}from"./upload-BPadrurv.js";import{t as te}from"./volume-2-4vdN1DJH.js";import{t as D}from"./wand-sparkles-D-HweR3j.js";import{t as O}from"./vendor-axios-Ck2ffRoh.js";import"./constants-au0ZzCx8.js";import{Ci as k,E as A,Pi as j,Ui as ne,Vt as M,_n as N,bi as P,en as F,si as I,tt as L}from"./index-BZq3jm8a.js";import{t as R}from"./CopyToClipboard-CFq4syZL.js";import{t as z}from"./BotPlaceholder-DkVBzsjz.js";import{t as B}from"./Hailuo-Cb6FTxJw.js";import{t as V}from"./TabSwitcher-QmywPant.js";var H=4,U=90,W=m({name:`FishRecorder`,components:{ConfirmIcon:x,DocsIcon:b,MicrophoneIcon:C,ShuffleIcon:T,StopIcon:E,UndoIcon:w,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`){P.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`;P.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){P.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 O.post(`${I()}/api/v1/files/`,r,{headers:{Authorization:`Bearer ${e}`}}),a=i?.file_url;if(!a){P.error(this.$t(`fish.message.uploadError`));return}this.$emit(`done`,{url:a,text:this.currentScript})}catch(e){P.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=A(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:D,MicrophoneIcon:C,UndoIcon:w,UploadIcon:ee,ElButton:j,ElInput:ne,ElRadioButton:_,ElRadioGroup:v,ElSwitch:y,ElUpload:h,Recorder:le},mixins:[M],emits:[`create`],data(){return{form:Q(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return I()+`/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?(P.warning(this.$t(`fish.message.audioSizeExceed`)),!1):(this.uploading=!0,!0)},onExceed(){P.warning(this.$t(`fish.message.audioOnlyOne`))},onUploadError(){this.uploading=!1,P.error(this.$t(`fish.message.uploadError`))},onUploadSuccess(e,t,n){this.uploading=!1;let r=e?.file_url;if(!r){P.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){P.warning(this.$t(`fish.message.titleRequired`));return}if(!this.form.voicesUrl){P.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=A(de,[[`render`,He],[`__scopeId`,`data-v-46dbe88b`]]),We=m({name:`FishVoiceCard`,components:{MicrophoneIcon:C,ViewIcon:S,VolumeIcon:te,ElAlert:g,ElButton:j,ElImage:k,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:L}))}}}),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:A(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:A(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,P.info(this.$t(`fish.message.creatingModel`));try{await N.createModel(e,{token:t}),P.success(this.$t(`fish.message.createModelSuccess`)),await this.onGetVoices()}catch(e){let t=e?.response?.data;t?.error?.code===`used_up`?P.error(this.$t(`fish.message.usedUp`)):P.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=A(ht,[[`render`,vt]]);export{yt as default};
|