@acedatacloud/nexior 3.252.0 → 3.253.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{ApiCodeButton-OI5mHlsz.js → ApiCodeButton-Drq1wo0T.js} +1 -1
- package/dist/assets/Auth-CZ1D5LGg.js +1 -0
- package/dist/assets/{BotPlaceholder-CeRMdwzL.js → BotPlaceholder-Bb3okszP.js} +1 -1
- package/dist/assets/{Callback-DC9HuPCi.js → Callback-DQYu2lmO.js} +1 -1
- package/dist/assets/Console-BBcDMeyv.js +1 -0
- package/dist/assets/{Consumption-C05reyZz.js → Consumption-Bx3U0iJn.js} +1 -1
- package/dist/assets/{Conversation-DbAz0djm.js → Conversation-rw_jqpk1.js} +1 -1
- package/dist/assets/{CopyToClipboard-VMhzQe2I.js → CopyToClipboard-ffsw6Et3.js} +1 -1
- package/dist/assets/Detail-BMFW5EkL.js +2 -0
- package/dist/assets/{Detail-BR407GFU.css → Detail-Bx_qvytL.css} +1 -1
- package/dist/assets/{Extra-f-eeBn91.js → Extra-BthcFzYT.js} +1 -1
- package/dist/assets/{FilePreview-CD0rZ1Ts.js → FilePreview-SrSnDMh6.js} +1 -1
- package/dist/assets/{Hailuo-WJEhqlHH.js → Hailuo-DJhW5ZsC.js} +1 -1
- package/dist/assets/{History-BjFqw0CA.js → History-ExPfxYZ0.js} +1 -1
- package/dist/assets/{ImagePreview-C20ScRMB.js → ImagePreview-BKe9oBpc.js} +1 -1
- package/dist/assets/{ImageWrapper-BBoS5tpS.js → ImageWrapper-DzNRJvY4.js} +1 -1
- package/dist/assets/{Index-CjZDW-hu.js → Index--3ynTuu6.js} +2 -2
- package/dist/assets/{Index-BUA4naRp.js → Index-B0phzJBq.js} +1 -1
- package/dist/assets/Index-BUgPSlDC.js +1 -0
- package/dist/assets/{Index-CiIfBjUU.js → Index-BYTdrKm4.js} +1 -1
- package/dist/assets/{Index-CxhnHsHd.js → Index-Bcky52n4.js} +2 -2
- package/dist/assets/{Index-7GVBd6da.js → Index-BjL51U9D.js} +1 -1
- package/dist/assets/{Index-CiTbdNM6.js → Index-BmOd7ffS.js} +1 -1
- package/dist/assets/{Index-B-1_75Jq.js → Index-BojlkX3h.js} +1 -1
- package/dist/assets/{Index-uX1p4oR8.js → Index-BtiLj0le.js} +1 -1
- package/dist/assets/{Index-B5Uwha7V.js → Index-C1oLHd-u.js} +1 -1
- package/dist/assets/{Index-mgX1-aqY.js → Index-C6HmT5fE.js} +1 -1
- package/dist/assets/Index-CVQ96DV5.js +1 -0
- package/dist/assets/{Index-BqQ17dTx.js → Index-CbfQnEXB.js} +1 -1
- package/dist/assets/{Index-CdhZixMf.js → Index-CmSKAh7m.js} +1 -1
- package/dist/assets/{Index-CVaEwB56.js → Index-Cpf9Sg77.js} +1 -1
- package/dist/assets/{Index-yb2Nyizh.js → Index-Cqt0TDzx.js} +1 -1
- package/dist/assets/Index-Czuez0uY.js +1 -0
- package/dist/assets/Index-D8Z9QaVn.js +1 -0
- package/dist/assets/{Index-DZthJQl4.js → Index-DKwZ_wBA.js} +1 -1
- package/dist/assets/{Index-DiASepRa.js → Index-DRvtmmcY.js} +1 -1
- package/dist/assets/{Index-DmzssHy5.js → Index-DT6Sk9aR.js} +1 -1
- package/dist/assets/{Index-J1xK6HPP.js → Index-DUSxOyea.js} +1 -1
- package/dist/assets/{Index-DBppM020.css → Index-DszDglIi.css} +1 -1
- package/dist/assets/{Index-DQygsbGa.js → Index-PUHoRpqU.js} +1 -1
- package/dist/assets/Index-Ve8jfyOn.js +1 -0
- package/dist/assets/{Index-BMn0upMa.js → Index-tnhMyV8C.js} +1 -1
- package/dist/assets/{Invitees-C_YCMSVP.js → Invitees-LYo1v4W-.js} +1 -1
- package/dist/assets/List-BY87VDaH.js +1 -0
- package/dist/assets/List-D5WSfw2M.js +1 -0
- package/dist/assets/List-DYI6Xzy-.css +1 -0
- package/dist/assets/List-Dr5Noynt.js +1 -0
- package/dist/assets/{Login-Grpn3vy8.js → Login-CCcWFUjj.js} +1 -1
- package/dist/assets/{Main-tKbbvyuP.js → Main-BWsVcUq8.js} +1 -1
- package/dist/assets/{Model-CkR95iBC.js → Model-BYyfLGD1.js} +1 -1
- package/dist/assets/{Navigator-D5yK5VK9.css → Navigator-H8biTUiS.css} +1 -1
- package/dist/assets/{Navigator-Db6mcrjB.js → Navigator-ySiZ_3sE.js} +3 -3
- package/dist/assets/{NoTasks-BMmjOL6C.js → NoTasks-Ct9vzToj.js} +1 -1
- package/dist/assets/{NotFound-DM6Ou0hT.js → NotFound-_zj9nPTI.js} +1 -1
- package/dist/assets/{Pagination-B3rbYo8q.js → Pagination-C_lShewI.js} +1 -1
- package/dist/assets/{Player.vue_vue_type_script_setup_true_lang-DUqOrsUP.js → Player.vue_vue_type_script_setup_true_lang-B7W50pMc.js} +1 -1
- package/dist/assets/Status-DAfUPPmi.js +1 -0
- package/dist/assets/Subscribe-CABz2G6N.js +1 -0
- package/dist/assets/{TabSwitcher-BwzmJBrX.js → TabSwitcher-Dw8j_EHR.js} +1 -1
- package/dist/assets/{Tts-Dgqm2zxe.js → Tts-DvQqFPAz.js} +1 -1
- package/dist/assets/{VideoPlayer-mRwxMvax.js → VideoPlayer-CMIYFrB5.js} +1 -1
- package/dist/assets/{_Uint8Array-vXvvgSwF.js → _Uint8Array-CVqSvQNa.js} +1 -1
- package/dist/assets/{_baseClone-0Kiqxc2t.js → _baseClone-CxI4YMcc.js} +1 -1
- package/dist/assets/{_baseIteratee-D3DXGIH5.js → _baseIteratee-CCsMHsVd.js} +1 -1
- package/dist/assets/{_initCloneObject-BYrljc_C.js → _initCloneObject-C7zi7Gf-.js} +1 -1
- package/dist/assets/{add-ROKAhAx8.js → add-BbL1JEc3.js} +1 -1
- package/dist/assets/{all-wallets-C4D7_A_i.js → all-wallets-DdQGFefb.js} +1 -1
- package/dist/assets/{app-store-DNPp78XV.js → app-store-BkcsVQNb.js} +1 -1
- package/dist/assets/{apple-DfNf6EZD.js → apple-DK6gw0DT.js} +1 -1
- package/dist/assets/{arrow-bottom-DCCMMlIW.js → arrow-bottom-BBGb_WRw.js} +1 -1
- package/dist/assets/{arrow-bottom-circle-DvRlLXGl.js → arrow-bottom-circle-CGTx4qcO.js} +1 -1
- package/dist/assets/{arrow-left-D2-6Ao7G.js → arrow-left-BAoKWKC9.js} +1 -1
- package/dist/assets/{arrow-right-WiUOFK69.js → arrow-right-WIaYqO7i.js} +1 -1
- package/dist/assets/{arrow-top-CYKx4ckw.js → arrow-top-C9j7ZKAv.js} +1 -1
- package/dist/assets/{avatar-CXNo-K1E.js → avatar-Cxk_5Ggh.js} +1 -1
- package/dist/assets/{bank-VK8Xlchv.js → bank-BvloARJ4.js} +1 -1
- package/dist/assets/{basic-Bl46DgE-.js → basic-CBOiMGEo.js} +1 -1
- package/dist/assets/{browser-DmRHza7S.js → browser-0A0ww1Lg.js} +1 -1
- package/dist/assets/{byokCredential-BezA-Q0o.js → byokCredential-EfkQl_84.js} +1 -1
- package/dist/assets/{card-C8Q1R8Ez.js → card-BPCCAYIt.js} +1 -1
- package/dist/assets/{castArray-D2L4b2-n.js → castArray-DEdhtRiU.js} +1 -1
- package/dist/assets/{chat-CpKjC_5N.js → chat-BsWGw1Fe.js} +1 -1
- package/dist/assets/{checkmark-CXijf8G5.js → checkmark-TIa-HZL1.js} +1 -1
- package/dist/assets/{checkmark-bold-DRWQKiQA.js → checkmark-bold-CUogUz4V.js} +1 -1
- package/dist/assets/{chevron-bottom-C1BJv0L9.js → chevron-bottom-Dt_WbJd7.js} +1 -1
- package/dist/assets/{chevron-left-Vu2ADV9X.js → chevron-left-uhs4cWhh.js} +1 -1
- package/dist/assets/{chevron-right-CTdx1oVQ.js → chevron-right-B50bY-xg.js} +1 -1
- package/dist/assets/{chevron-top-rKXEZs3X.js → chevron-top-xKVL4vA2.js} +1 -1
- package/dist/assets/{chrome-store-DAKnQGK-.js → chrome-store-BDDjIZUl.js} +1 -1
- package/dist/assets/{clock-CvYNheDg.js → clock-B2K-MTG7.js} +1 -1
- package/dist/assets/{close-36qwh4yN.js → close-kkXdBnME.js} +1 -1
- package/dist/assets/{coinPlaceholder-B0KlaSqE.js → coinPlaceholder-C41D4dQt.js} +1 -1
- package/dist/assets/{compass-BkamIm6T.js → compass-CmO_fCDE.js} +1 -1
- package/dist/assets/{copy-CdhRy_sY.js → copy-CDX4KaDL.js} +1 -1
- package/dist/assets/{createTaskActions-BQ-J-qYX.js → createTaskActions-DJIisH05.js} +1 -1
- package/dist/assets/cursor-CHB-6oOu.js +3 -0
- package/dist/assets/{cursor-transparent-BkRDmlpD.js → cursor-transparent-DdpFJJS6.js} +1 -1
- package/dist/assets/{debounce-D3D-TN8J.js → debounce-BTG3LRQl.js} +1 -1
- package/dist/assets/{desktop-B1CffDTz.js → desktop-BvciHaL6.js} +1 -1
- package/dist/assets/{disconnect-B3FKrGvy.js → disconnect-CC4T8bxU.js} +1 -1
- package/dist/assets/{discord-DxAVeQ36.js → discord-CNyAAYkG.js} +1 -1
- package/dist/assets/{distribution-ot7BdIuV.js → distribution-CFg8mzRf.js} +1 -1
- package/dist/assets/{dropdown-i82x4SIN.js → dropdown-CfgJYpo-.js} +1 -1
- package/dist/assets/{etherscan-B8JdXJbE.js → etherscan--zFzETQv.js} +1 -1
- package/dist/assets/{exclamation-triangle-BJzfxL7S.js → exclamation-triangle-DuQqiCxL.js} +1 -1
- package/dist/assets/{extension-DheOQF9F.js → extension-D-qpGFg1.js} +1 -1
- package/dist/assets/{external-link-DNzdeJNg.js → external-link-FvxnbG0p.js} +1 -1
- package/dist/assets/{facebook-Cn5_nuiR.js → facebook-BW3aCde4.js} +1 -1
- package/dist/assets/{farcaster-CAOKDuWW.js → farcaster-BYDOSU6f.js} +1 -1
- package/dist/assets/{filters-CZczcfFI.js → filters-BClwkmZD.js} +1 -1
- package/dist/assets/{github-BKb-Obzl.js → github-DzcMXO-k.js} +1 -1
- package/dist/assets/{google-BLkOdPl_.js → google-DUIsppvT.js} +1 -1
- package/dist/assets/{help-circle-h5YQgj3B.js → help-circle-lZ-QdmvQ.js} +1 -1
- package/dist/assets/{highlight-D_nCtwSQ.js → highlight-CWzFA2AR.js} +1 -1
- package/dist/assets/{id-DE8y_d17.js → id-B4BeN1c1.js} +1 -1
- package/dist/assets/{image-tUnoMmC1.js → image-0HI2SbjR.js} +1 -1
- package/dist/assets/index-0JQvyqxg.js +1 -0
- package/dist/assets/index-0LjPFnwM.js +1 -0
- package/dist/assets/{index-ZfUaPKcv.js → index-8OUK_qo_.js} +1 -1
- package/dist/assets/{index-2E79H4-m.js → index-9b5J_69T.js} +2 -2
- package/dist/assets/{index-C9YbnFDL.js → index-A1vs7Tvb.js} +1 -1
- package/dist/assets/index-B-XszVZM.js +1 -0
- package/dist/assets/{index-DfR9Qbi5.js → index-B8svBnpb.js} +1 -1
- package/dist/assets/index-B8wbDRCk.js +1 -0
- package/dist/assets/{index-CcdOdcaC.js → index-B99Tt-3f.js} +1 -1
- package/dist/assets/{index-CzfZ4hlp.js → index-BC6AqXIx.js} +1 -1
- package/dist/assets/{index-HvX88gUe.js → index-BCXKdZWY.js} +1 -1
- package/dist/assets/{index-v6xzjQaz.css → index-BCb0oDfU.css} +1 -1
- package/dist/assets/index-BJuXTSkv.js +1 -0
- package/dist/assets/{index-5K0Lpmid.js → index-BQ1Esg7B.js} +1 -1
- package/dist/assets/index-BRAaGgzT.js +1 -0
- package/dist/assets/{index-BlbDJipA.js → index-BXuzdQwl.js} +1 -1
- package/dist/assets/{index-DaVcOf-H.js → index-BZblnLXL.js} +3 -3
- package/dist/assets/{index-Bni1A9Rc.js → index-BafGfJuZ.js} +1 -1
- package/dist/assets/index-Bf6ZJ_-M.js +1 -0
- package/dist/assets/{index-B3ON5KCY.js → index-BiXKkTGi.js} +5 -5
- package/dist/assets/{index-DlO_4Ch8.js → index-Blb1DDfP.js} +1 -1
- package/dist/assets/{index-CCiFJCOC.js → index-BoKfbtX5.js} +1 -1
- package/dist/assets/{index-BbqZ38Fk.js → index-BoXQVYKo.js} +1 -1
- package/dist/assets/index-BpUUocOH.js +1 -0
- package/dist/assets/index-Br1yUMf8.js +1 -0
- package/dist/assets/index-C71cSz36.js +1 -0
- package/dist/assets/{index-C4MW0Y-7.js → index-CCgsKWE1.js} +1 -1
- package/dist/assets/{index-Bbqo-qSi.js → index-CDwwbugy.js} +1 -1
- package/dist/assets/index-CFfoccqE.js +1 -0
- package/dist/assets/{index-CYV32aGr.js → index-CLCPMnHR.js} +1 -1
- package/dist/assets/{index-Ckre7Zpa.js → index-CPxD-sCL.js} +1 -1
- package/dist/assets/{index-D6ZcNGZb.js → index-CQ8_0yRK.js} +1 -1
- package/dist/assets/{index-DTMMG9mo.js → index-CTpATBUx.js} +1 -1
- package/dist/assets/{index-CUBNhwXI.js → index-CWjfFjXS.js} +1 -1
- package/dist/assets/index-Cfmbp0EV.js +1 -0
- package/dist/assets/{index-DKvCd3Nn.js → index-CpcLlVkI.js} +1 -1
- package/dist/assets/{index-CVLXhEPs.js → index-Cr5D85Nx.js} +1 -1
- package/dist/assets/{index-B1M4uhu-.js → index-CuT8kfLH.js} +1 -1
- package/dist/assets/{index-BYTebE_M.js → index-D1E_Y5lj.js} +1 -1
- package/dist/assets/{index-DV3ASYVw.js → index-D7KBMZcH.js} +1 -1
- package/dist/assets/{index-0siBu26b.js → index-DC-1EJIg.js} +1 -1
- package/dist/assets/{index-D80gH5oR.js → index-DDnwYmZh.js} +1 -1
- package/dist/assets/{index-DaUAZ-Qi.js → index-DJQ9HAgr.js} +1 -1
- package/dist/assets/index-DPrdPxRp.js +1 -0
- package/dist/assets/{index-B-MleZa9.js → index-DRgx3hTx.js} +2 -2
- package/dist/assets/{index-DO97gxud.js → index-DVF-DbEJ.js} +1 -1
- package/dist/assets/{index-NYylF2dS.js → index-DZuGeaea.js} +1 -1
- package/dist/assets/{index-CVPZ2Dty.js → index-D_Hz5fA6.js} +1 -1
- package/dist/assets/{index-Bco_5N-Z.js → index-DhiRha4e.js} +1 -1
- package/dist/assets/index-DiN4Bfoz.js +1 -0
- package/dist/assets/{index-Huz7bqDK.js → index-DiwSA7hK.js} +1 -1
- package/dist/assets/{index-CRSR24vz.js → index-DmpJeEzY.js} +1 -1
- package/dist/assets/{index-M80r0o0t.js → index-DoQNCDIK.js} +1 -1
- package/dist/assets/{index-DdZdmuPG.js → index-DopdqtSU.js} +1 -1
- package/dist/assets/{index-DiKXm2Vl.js → index-DrvYmhcP.js} +11 -11
- package/dist/assets/index-DtKgf_D_.js +1 -0
- package/dist/assets/{index-B1i4gVgF.js → index-DuewqZJa.js} +1 -1
- package/dist/assets/{index-D4TuYCMj.js → index-DxD6oont.js} +1 -1
- package/dist/assets/{index-BWEs8OdQ.js → index-DxRJVBld.js} +1 -1
- package/dist/assets/{index-BqqnmYpD.js → index-T9dwQr1K.js} +1 -1
- package/dist/assets/{index-CL0JKgby.js → index-VX-0_ECC.js} +1 -1
- package/dist/assets/index-h2aywIom.js +6 -0
- package/dist/assets/index-lfOMNaVh.js +1 -0
- package/dist/assets/index-rDyNuNM8.js +1 -0
- package/dist/assets/{index-9mLl2MXe.js → index-ugpiiN8d.js} +1 -1
- package/dist/assets/{index-BLNljvJY.js → index-xDJdJ7tW.js} +1 -1
- package/dist/assets/{index.browser.esm-DEcfVR7W.js → index.browser.esm-CrJVQdid.js} +1 -1
- package/dist/assets/{index.es-DvG6Omih.js → index.es-CJfukhtE.js} +1 -1
- package/dist/assets/{info-gtogHc-R.js → info-BlZxXLeA.js} +1 -1
- package/dist/assets/{info-circle-DeGG4x2m.js → info-circle-CMH3qpFh.js} +1 -1
- package/dist/assets/{isEqual-UX6HkLTo.js → isEqual-Box1EVJE.js} +1 -1
- package/dist/assets/{isPlainObject-B8kQT8U7.js → isPlainObject-DoaviOGK.js} +1 -1
- package/dist/assets/{lightbulb-BRKjhZQP.js → lightbulb-C5rtp_4Y.js} +1 -1
- package/dist/assets/{mail--S6sFbUJ.js → mail-VdLRq_MO.js} +1 -1
- package/dist/assets/{midjourney-BglPHigl.js → midjourney-3vLSyV_6.js} +1 -1
- package/dist/assets/{mobile-DM4lyUCh.js → mobile-PEz03m91.js} +1 -1
- package/dist/assets/{more-CcrRfq1A.js → more-CqgAmMdq.js} +1 -1
- package/dist/assets/{network-placeholder-BZn-Rqvr.js → network-placeholder-DqaMG2mQ.js} +1 -1
- package/dist/assets/{nftPlaceholder-BUy9XKfY.js → nftPlaceholder-ObdTBCBa.js} +1 -1
- package/dist/assets/{off-C7HsBIVu.js → off-umcDqI-N.js} +1 -1
- package/dist/assets/{order-Dh3F9166.js → order-B1hxjKoD.js} +1 -1
- package/dist/assets/{order-DcR5etPG.js → order-BOkEMTGm.js} +1 -1
- package/dist/assets/{order-CdpPmQpG.js → order-BP1IUP5d.js} +1 -1
- package/dist/assets/{order-03apkk4w.js → order-B_LsTujN.js} +1 -1
- package/dist/assets/{order-DamR_aAT.js → order-BnsarLHZ.js} +1 -1
- package/dist/assets/{order-CkQDY4Jd.js → order-BrBYxI1W.js} +1 -1
- package/dist/assets/{order-rAaEPzDi.js → order-CC6B6Gge.js} +1 -1
- package/dist/assets/{order-DhEagMXF.js → order-CYU1HtHS.js} +1 -1
- package/dist/assets/{order-JbPHacDg.js → order-ClrkS2zn.js} +1 -1
- package/dist/assets/{order-Bo-tnXB3.js → order-CoOWtaD7.js} +1 -1
- package/dist/assets/{order-CnCQGMJh.js → order-Crc77GW7.js} +1 -1
- package/dist/assets/{order-D97e7T7u.js → order-CyD2axQ8.js} +1 -1
- package/dist/assets/{order-CzIgaSX4.js → order-D5ID07HO.js} +1 -1
- package/dist/assets/{order-CwX_tpSV.js → order-DKLYGFwv.js} +1 -1
- package/dist/assets/{order-C94zB2DA.js → order-DR286FJG.js} +1 -1
- package/dist/assets/{order-DZurK8Ek.js → order-JqQuJvaj.js} +1 -1
- package/dist/assets/{order-DCTvXGft.js → order-USBlglMa.js} +1 -1
- package/dist/assets/{order-D2XQBvdp.js → order-ZYdEDMNp.js} +1 -1
- package/dist/assets/{order-Dc0Ec8sh.js → order-yvnkyHdx.js} +1 -1
- package/dist/assets/{pagination-Dx2jY-ov.js → pagination-CJx5Nyq8.js} +6 -6
- package/dist/assets/{play-store-D1Pbz7Mh.js → play-store-C_vpBc5E.js} +1 -1
- package/dist/assets/{plus-BdBAesM2.js → plus-Cj6dJQCn.js} +1 -1
- package/dist/assets/{price-BTmfK-T9.js → price-C6x3zgFx.js} +1 -1
- package/dist/assets/{producer-NotRcX_R.js → producer-IWrbrVvV.js} +1 -1
- package/dist/assets/{qr-code-a4spXoOz.js → qr-code-B2BXj4Ws.js} +1 -1
- package/dist/assets/{recycle-horizontal-B-uPxj4L.js → recycle-horizontal-gWA-GXAx.js} +1 -1
- package/dist/assets/{refresh-zOHKLrzl.js → refresh-oZ-uQpSm.js} +1 -1
- package/dist/assets/{reown-logo-Cxl8UKru.js → reown-logo-DRoPuj3k.js} +1 -1
- package/dist/assets/{search-bDCuOEXU.js → search-CUx2Toms.js} +1 -1
- package/dist/assets/{secp256k1-BwwcvsGj.js → secp256k1-CKgAHccq.js} +1 -1
- package/dist/assets/{secp256k1-Bvy-lRdo.js → secp256k1-D7hQM7XA.js} +1 -1
- package/dist/assets/{seedream-CrqIuoYy.js → seedream-C1MkodJX.js} +1 -1
- package/dist/assets/{send-CbJwvUBX.js → send-BvrGPjYl.js} +1 -1
- package/dist/assets/{service-CHHVOHr5.js → service-7_Q7xSzl.js} +1 -1
- package/dist/assets/{solana-wallets-vue-DyJIJkGB.js → solana-wallets-vue-BcEdBWYc.js} +7 -7
- package/dist/assets/solana-wallets-zpWYSaEg.js +2 -0
- package/dist/assets/{strings-C53lWZ6Y.js → strings-CoSJ5yUQ.js} +1 -1
- package/dist/assets/subsite-B2ktoi93.js +1 -0
- package/dist/assets/subsite-BA0ywfPZ.js +1 -0
- package/dist/assets/subsite-BNzUFzgu.js +1 -0
- package/dist/assets/subsite-BZlNW2hw.js +1 -0
- package/dist/assets/subsite-BvAN10u9.js +1 -0
- package/dist/assets/subsite-BvyZUEf-.js +1 -0
- package/dist/assets/subsite-Bwmf7GWU.js +1 -0
- package/dist/assets/subsite-CGa7pTMd.js +1 -0
- package/dist/assets/subsite-COWKHWnJ.js +1 -0
- package/dist/assets/subsite-DA4JWYWC.js +1 -0
- package/dist/assets/subsite-DB_nwSIW.js +1 -0
- package/dist/assets/subsite-DesPR8YU.js +1 -0
- package/dist/assets/subsite-Djb8oEDu.js +1 -0
- package/dist/assets/subsite-Dtjutl-9.js +1 -0
- package/dist/assets/subsite-h_S82Fyk.js +1 -0
- package/dist/assets/subsite-qv_T1LI1.js +1 -0
- package/dist/assets/subsite-sXCcrvtN.js +1 -0
- package/dist/assets/subsite-tIqr7JA4.js +1 -0
- package/dist/assets/{suno--8m3yc4O.js → suno-CMvMdEud.js} +1 -1
- package/dist/assets/{swapHorizontal-h5M0bqX-.js → swapHorizontal-Cv-TgJkH.js} +1 -1
- package/dist/assets/{swapHorizontalBold-D-GIWgtE.js → swapHorizontalBold-DuFXa36h.js} +1 -1
- package/dist/assets/{swapHorizontalMedium-DuNaDDWo.js → swapHorizontalMedium-CmQ52Cpp.js} +1 -1
- package/dist/assets/{swapHorizontalRoundedBold-B3MPO_nA.js → swapHorizontalRoundedBold-CjAiyg-2.js} +1 -1
- package/dist/assets/{swapVertical-DwgiW8VQ.js → swapVertical-DzK2PlTe.js} +1 -1
- package/dist/assets/{telegram-C3YFBxeu.js → telegram-DgjV_aip.js} +1 -1
- package/dist/assets/{three-dots-DPU4Ehnn.js → three-dots-EiLdcMPi.js} +1 -1
- package/dist/assets/{twitch-D4JM9Noi.js → twitch-BN1DycPm.js} +1 -1
- package/dist/assets/{twitterIcon-CMRWMSiJ.js → twitterIcon-CDGin63H.js} +1 -1
- package/dist/assets/{typescript-nWN70UwR.js → typescript-lkSt6sMt.js} +1 -1
- package/dist/assets/{use-form-item-d9y6c1OU.js → use-form-item-xBSOcnBK.js} +1 -1
- package/dist/assets/validator-Cct-VH_X.js +1 -0
- package/dist/assets/{vendor-chart-CXmsunE8.js → vendor-chart-CqqdxQvL.js} +1 -1
- package/dist/assets/{vendor-vue-Ck7I6JZv.js → vendor-vue-BWIxYyW8.js} +1 -1
- package/dist/assets/{vendor-vue-router-CBGKudGF.js → vendor-vue-router-CCWK5dA3.js} +1 -1
- package/dist/assets/{verify-tP64B1rn.js → verify-CcY1lPIc.js} +1 -1
- package/dist/assets/{verify-filled-ORvtBkcK.js → verify-filled-D6hBO2qT.js} +1 -1
- package/dist/assets/{w3m-modal-Dzf7spro.js → w3m-modal-CiPnWbhU.js} +1 -1
- package/dist/assets/{wallet-nLJ3AfFR.js → wallet-Bl7RERHs.js} +1 -1
- package/dist/assets/{wallet-placeholder-CCBA8L-s.js → wallet-placeholder-DAeOzX8D.js} +1 -1
- package/dist/assets/{walletconnect-DFVFR52p.js → walletconnect-CnAX0UcV.js} +1 -1
- package/dist/assets/{warning-circle-GChbM6D0.js → warning-circle-Bbgrb2Be.js} +1 -1
- package/dist/assets/{web-iZ9b_q_6.js → web-Bq58frSo.js} +1 -1
- package/dist/assets/{web-D2v13US7.js → web-CEWvXHzG.js} +1 -1
- package/dist/assets/{web-CB0uQbRT.js → web-DIg1_spB.js} +1 -1
- package/dist/assets/{web-DrUm0od0.js → web-Drx0rheY.js} +1 -1
- package/dist/assets/{x-BUN4HTP_.js → x-Dult3UxB.js} +1 -1
- package/dist/index.html +6 -6
- package/package.json +1 -1
- package/dist/assets/Auth-CiXiF1Kr.js +0 -1
- package/dist/assets/Console-DadmGJrj.js +0 -1
- package/dist/assets/Detail-C8X0owmE.js +0 -2
- package/dist/assets/Index-BHsqBD1T.js +0 -1
- package/dist/assets/Index-CTy6GV7F.js +0 -1
- package/dist/assets/Index-D4Mhn_NR.js +0 -1
- package/dist/assets/Index-DV_lae8h.js +0 -1
- package/dist/assets/Index-DhgJpylx.js +0 -1
- package/dist/assets/List-Bl_lkLd6.js +0 -1
- package/dist/assets/List-BtlMLAJm.js +0 -1
- package/dist/assets/List-CM3Pe17E.js +0 -1
- package/dist/assets/Status-BWX90kKH.js +0 -1
- package/dist/assets/Subscribe-CmcqSMqI.js +0 -1
- package/dist/assets/cursor-D1Qo_oKB.js +0 -3
- package/dist/assets/index-0SgFPXi5.js +0 -1
- package/dist/assets/index-27mJ7ET6.js +0 -1
- package/dist/assets/index-BKuC36PM.js +0 -1
- package/dist/assets/index-BUPZeOUN.js +0 -1
- package/dist/assets/index-Bz15zyvY.js +0 -1
- package/dist/assets/index-C6MxxmdJ.js +0 -1
- package/dist/assets/index-CDEW0Kb3.js +0 -1
- package/dist/assets/index-CmQ5Mbdo.js +0 -1
- package/dist/assets/index-CoBE4zDK.js +0 -1
- package/dist/assets/index-CriRKKl4.js +0 -1
- package/dist/assets/index-D8cuJCJu.js +0 -1
- package/dist/assets/index-DCKHnjpd.js +0 -6
- package/dist/assets/index-DbaQbYQ-.js +0 -1
- package/dist/assets/index-DjSAdHwP.js +0 -1
- package/dist/assets/index-DmkksXrm.js +0 -1
- package/dist/assets/index-DpuiO2XK.js +0 -1
- package/dist/assets/index-xfKA6XaK.js +0 -1
- package/dist/assets/solana-wallets-DPIIroDt.js +0 -2
- package/dist/assets/subsite-BK7_5k--.js +0 -1
- package/dist/assets/subsite-BNP3Q7Xc.js +0 -1
- package/dist/assets/subsite-BV3v1smY.js +0 -1
- package/dist/assets/subsite-BXqHpj3U.js +0 -1
- package/dist/assets/subsite-BxhkCm_q.js +0 -1
- package/dist/assets/subsite-CD9qucZ_.js +0 -1
- package/dist/assets/subsite-CO0HlEgu.js +0 -1
- package/dist/assets/subsite-CPKAViL3.js +0 -1
- package/dist/assets/subsite-CWci3iP9.js +0 -1
- package/dist/assets/subsite-CcEH6rFn.js +0 -1
- package/dist/assets/subsite-CriXOvKo.js +0 -1
- package/dist/assets/subsite-D8spnHY6.js +0 -1
- package/dist/assets/subsite-DPFBXmjR.js +0 -1
- package/dist/assets/subsite-DoVCpjJz.js +0 -1
- package/dist/assets/subsite-DyAacqjt.js +0 -1
- package/dist/assets/subsite-gB-tx31m.js +0 -1
- package/dist/assets/subsite-gwotV_S2.js +0 -1
- package/dist/assets/subsite-tmNJvtFj.js +0 -1
- package/dist/assets/validator-BS3Z4xEC.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{l as S,a0 as Y,o as j,a6 as N,J as G}from"./index-DrvYmhcP.js";import{I as v,a as W}from"./credential-CEfFFZzi.js";import{P as Z}from"./Pagination-C_lShewI.js";import{C as z}from"./CopyToClipboard-ffsw6Et3.js";import{F as J}from"./index.es-CJfukhtE.js";import{B as K,C as Q,a as X,L as tt,b as et,p as at,c as st,d as it}from"./vendor-chart-CqqdxQvL.js";import{a as ot}from"./index-CFfoccqE.js";import{E as nt,a as lt}from"./index-CQ8_0yRK.js";import{E as rt}from"./index-8OUK_qo_.js";import{E as dt,a as pt}from"./index-Cfmbp0EV.js";import{E as ut,a as ct}from"./index-DmpJeEzY.js";import{E as ht,a as gt}from"./index-D7KBMZcH.js";import{E as mt}from"./index-DPrdPxRp.js";import{d as ft,x as u,y as s,E as i,D as o,H as n,F as E,C as f,L as C,M as D,I as _,N as R,J as r,W as yt,q as l,G as _t}from"./vendor-vue-BWIxYyW8.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./typescript-lkSt6sMt.js";import"./isEqual-Box1EVJE.js";import"./_Uint8Array-CVqSvQNa.js";import"./index-B8svBnpb.js";import"./index-lfOMNaVh.js";import"./index-DZuGeaea.js";import"./use-form-item-xBSOcnBK.js";import"./index-BLjywj98.js";import"./index-BoKfbtX5.js";import"./index-0JQvyqxg.js";import"./_initCloneObject-C7zi7Gf-.js";import"./isPlainObject-DoaviOGK.js";import"./_baseIteratee-CCsMHsVd.js";import"./castArray-DEdhtRiU.js";import"./debounce-BTG3LRQl.js";import"./index-DiwSA7hK.js";import"./index-BoXQVYKo.js";import"./strings-CoSJ5yUQ.js";import"./index-C71cSz36.js";import"./index-BuyEbX8F.js";import"./index-BC6AqXIx.js";class bt{key="usage/apis";async getAll(e){return await S.get(`/${this.key}/`,{params:e})}async getAggregate(e){return await S.get(`/${this.key}/aggregate/`,{params:e})}async get(e){return await S.get(`/${this.key}/${e}`)}}const L=new bt;class $t{key="usage/proxies";async getAll(e){return await S.get(`/${this.key}/`,{params:e})}}const wt=new $t;Q.register(X,tt,et,at,st,it);const At=ft({name:"ConsoleUsageList",components:{Pagination:Z,ElTag:Y,ElDatePicker:mt,ElTable:pt,ElSelect:gt,ElOption:ht,CopyToClipboard:z,ElRow:ct,ElCol:ut,ElTableColumn:dt,ElCard:rt,ElRadioButton:lt,ElRadioGroup:nt,ElSkeleton:ot,FontAwesomeIcon:J,BarChart:K},data(){return{applicationIds:this.$route.query.application_id?.toString()?this.$route.query.application_id?.toString().split(","):[],apiIds:this.$route.query.api_id?.toString()?this.$route.query.api_id?.toString().split(","):[],applications:[],credentialType:W,serviceType:v,apiUsages:[],proxyUsages:[],createdAtRange:(()=>{const t=this.$route.query.created_at_to?.toString(),e=this.$route.query.created_at_from?.toString();if(e&&t)return[new Date(e),new Date(t)];const y=new Date,c=new Date;return c.setDate(c.getDate()-30),[c,y]})(),shortcuts:[{text:this.$t("usage.shortcuts.today"),value:()=>{const t=new Date,e=new Date;return e.setHours(0,0,0,0),[e,t]}},{text:this.$t("usage.shortcuts.last1Day"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-1),[e,t]}},{text:this.$t("usage.shortcuts.last3Days"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-3),[e,t]}},{text:this.$t("usage.shortcuts.last7Days"),value:()=>{const t=new Date,e=new Date;return e.setDate(e.getDate()-7),[e,t]}},{text:this.$t("usage.shortcuts.last1Month"),value:()=>{const t=new Date,e=new Date;return e.setMonth(e.getMonth()-1),[e,t]}}],type:this.$route.query.type?.toString()||v.API,loading:!1,total:void 0,limit:15,totalUsed:0,barChartLabels:[],barChartSeries:[],aggLoading:!1}},computed:{redirect(){return this.$route.query?.redirect},page(){return parseInt(this.$route.query.page?.toString()||"1")},apis(){return this.applications.filter(t=>this.applicationIds&&this.applicationIds.length?this.applicationIds.includes(t.id):!0).map(t=>t.service?.apis).flat()},totalUsedString(){return`${(this.totalUsed||0).toFixed(2)}`},barChartData(){return{labels:this.barChartLabels,datasets:this.barChartSeries.map(t=>({label:t.label,data:t.data,backgroundColor:t.color}))}},barChartOptions(){return{responsive:!0,plugins:{legend:{position:"top",onClick:(t,e,y)=>{const c=y?.chart;if(!c||e?.datasetIndex===void 0)return;const $=e.datasetIndex,b=c.data?.datasets||[];b.some((p,d)=>d!==$&&c.isDatasetVisible(d))?b.forEach((p,d)=>c.setDatasetVisibility(d,d===$)):b.forEach((p,d)=>c.setDatasetVisibility(d,!0)),c.update()}},title:{display:!0,text:this.$t("usage.title.usageTrend")}},scales:{x:{stacked:!0},y:{stacked:!0,beginAtZero:!0}}}}},watch:{page:{handler(){this.onFetchUsages()}},type:{handler(){this.applicationIds=[],this.apiIds=[],this.onApplicationsChange(this.applicationIds),this.onFetchApplications(),this.onFetchUsages(),this.onFetchAggregate()}}},mounted(){this.onFetchApplications(),this.onFetchUsages(),this.onFetchAggregate()},methods:{async onFetchUsages(){this.type===v.API?this.onFetchApiUsages():this.type===v.Proxy&&this.onFetchProxyUsages()},async onApiChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:t}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onApisChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,api_id:t&&t.length?t.join(","):""}}),this.onFetchApiUsages(),this.onFetchAggregate()},async onTimeRangeChanged(){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,created_at_from:this.createdAtRange?this.$dayjs.format(this.createdAtRange[0].toString(),"YYYY-MM-DDTHH:mm:ss.SSSSSSZ"):"",created_at_to:this.createdAtRange?this.$dayjs.format(this.createdAtRange[1].toString(),"YYYY-MM-DDTHH:mm:ss.SSSSSSZ"):""}}),this.onFetchUsages(),this.onFetchAggregate()},async onApplicationChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:t}}),this.onFetchUsages(),this.onFetchAggregate()},async onApplicationsChange(t){await this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,application_id:t&&t.length?t.join(","):""}}),this.onFetchUsages(),this.onFetchAggregate()},onPageChange(t){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:t}})},getRemainingAmount(t){if(t.remaining_amount===void 0||t.remaining_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.remaining_amount?.toFixed(6)} ${e}`},getUsedAmount(t){if(t.used_amount===void 0||t.used_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.used_amount?.toFixed(6)} ${e}`},getDeductedAmount(t){if(t?.deducted_amount===void 0||t?.deducted_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.deducted_amount?.toFixed(6)} ${e}`},getOriginalAmount(t){if(t?.original_amount===void 0||t?.original_amount===null)return"";const e=this.$t(`service.unit.${t?.service?.unit||"credit"}s`);return`${t.original_amount?.toFixed(6)} ${e}`},onFetchApplications(){j.getAll({limit:100,offset:0,user_id:this.$store.getters.user.id,ordering:"-created_at",type:N.USAGE}).then(({data:t})=>{this.applications=t.items.filter(e=>e?.service?.type?e.service.type===this.type:!0)}).catch(()=>{})},onFetchApiUsages(){this.loading=!0,L.getAll({limit:this.limit,offset:(this.page-1)*this.limit,user_id:this.$store.getters.user.id,ordering:"-created_at",...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{},...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{}}).then(({data:t})=>{this.apiUsages=t.items,this.loading=!1,this.total=t.count}).catch(()=>{this.loading=!1})},onFetchProxyUsages(){this.loading=!0,wt.getAll({limit:this.limit,offset:(this.page-1)*this.limit,user_id:this.$store.getters.user.id,ordering:"-created_at",...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{}}).then(({data:t})=>{this.proxyUsages=t.items,this.loading=!1,this.total=t.count}).catch(()=>{this.loading=!1})},async onFetchAggregate(){if(this.aggLoading=!0,this.type!==this.serviceType.API){this.aggLoading=!1;return}const t={user_id:this.$store.getters.user.id,...this.applicationIds&&this.applicationIds.length?{application_id:this.applicationIds}:{},...this.apiIds&&this.apiIds.length?{api_id:this.apiIds}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0]}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1]}:{}};try{const{data:e}=await L.getAggregate(t);this.totalUsed=e.total||0;const y=Array.from(new Set((e.items||[]).map(h=>h.date))).sort(),c=Array.from(new Set((e.items||[]).map(h=>h.api_id))),$=h=>`hsl(${h*57%360}, 70%, 60%)`,b=c.map((h,p)=>{const d=e.apis?.[h]?.title||h,w={};(e.items||[]).filter(m=>m.api_id===h).forEach(m=>{w[m.date]=m.amount||0});const I=y.map(m=>w[m]||0);return{key:h,label:d,data:I,color:$(p)}});this.barChartLabels=y,this.barChartSeries=b}finally{this.aggLoading=!1}}}}),vt={class:"title"},Ct={class:"inline-block w-9"},Dt={class:"inline-block"},St={key:1,class:"summary-card"},It={class:"icon-wrapper"},kt={class:"text-left"},Ut={class:"description"},Ft={class:"value"},Et={class:"chart-wrapper"},Rt={key:0},Tt={key:1},qt={class:"flex flex-wrap gap-2"},Vt={class:"key"},Pt={key:0,class:"cursor-pointer"},Lt={class:"created-at"},Ot={class:"created-at"},xt={class:"float-right"};function Bt(t,e,y,c,$,b){const h=r("help-entry"),p=r("el-col"),d=r("el-row"),w=r("el-radio-button"),I=r("el-radio-group"),m=r("el-option"),T=r("el-select"),O=r("el-date-picker"),q=r("el-skeleton"),x=r("font-awesome-icon"),k=r("el-card"),B=r("bar-chart"),g=r("el-table-column"),U=r("el-tag"),H=r("copy-to-clipboard"),V=r("el-table"),M=r("pagination"),P=yt("loading");return l(),u(d,{class:"panel"},{default:s(()=>[i(h,{class:"help"}),i(p,{span:24},{default:s(()=>[i(d,null,{default:s(()=>[i(p,{span:24},{default:s(()=>[o("h2",vt,n(t.$t("common.title.allUsages")),1)]),_:1})]),_:1}),i(d,null,{default:s(()=>[i(p,{md:4,xs:24,class:"mb-4 flex px-2 gap-2 items-center"},{default:s(()=>[o("span",null,n(t.$t("application.field.type")),1),i(I,{modelValue:t.type,"onUpdate:modelValue":e[0]||(e[0]=a=>t.type=a)},{default:s(()=>[i(w,{value:t.serviceType.API,label:t.$t("application.field.api")},null,8,["value","label"]),i(w,{value:t.serviceType.Proxy,label:t.$t("application.field.proxy")},null,8,["value","label"])]),_:1},8,["modelValue"])]),_:1}),E(i(p,{md:6,xs:24,class:"mb-4 flex px-2 gap-2 items-center"},{default:s(()=>[o("span",Ct,n(t.$t("usage.field.application")),1),i(T,{modelValue:t.applicationIds,"onUpdate:modelValue":e[1]||(e[1]=a=>t.applicationIds=a),placeholder:t.$t("usage.field.application"),clearable:"",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",class:"w-full",onChange:t.onApplicationsChange},{default:s(()=>[(l(!0),f(D,null,C(t.applications,a=>(l(),u(m,{key:a.id,label:a.service?.title,value:a?.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"])]),_:1},512),[[_t,!1]]),t.type===t.serviceType.API?(l(),u(p,{key:0,md:6,xs:24,class:"mb-4 flex px-2 gap-2 items-center"},{default:s(()=>[o("span",Dt,n(t.$t("usage.field.api")),1),i(T,{modelValue:t.apiIds,"onUpdate:modelValue":e[2]||(e[2]=a=>t.apiIds=a),placeholder:t.$t("usage.field.api"),clearable:"",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",class:"w-full",onChange:t.onApisChange},{default:s(()=>[(l(!0),f(D,null,C(t.apis,a=>(l(),u(m,{key:a?.id,label:a?.title,value:a?.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"])]),_:1})):_("",!0),t.type===t.serviceType.API?(l(),u(p,{key:1,md:8,xs:24,class:"mb-4 flex px-2 gap-2 items-center"},{default:s(()=>[i(O,{modelValue:t.createdAtRange,"onUpdate:modelValue":e[3]||(e[3]=a=>t.createdAtRange=a),type:"datetimerange",class:"w-full",shortcuts:t.shortcuts,"range-separator":t.$t("usage.placeholder.to"),"start-placeholder":t.$t("usage.placeholder.startDate"),"end-placeholder":t.$t("usage.placeholder.endDate"),onChange:t.onTimeRangeChanged},null,8,["modelValue","shortcuts","range-separator","start-placeholder","end-placeholder","onChange"])]),_:1})):_("",!0)]),_:1}),i(d,null,{default:s(()=>[i(p,{span:24},{default:s(()=>[t.type===t.serviceType.API?(l(),u(d,{key:0,gutter:15,class:"mb-4"},{default:s(()=>[i(p,{md:6,xs:24},{default:s(()=>[i(k,{shadow:"hover",class:"h-full"},{default:s(()=>[t.aggLoading?(l(),u(q,{key:0})):(l(),f("div",St,[o("div",It,[i(x,{icon:"fa-solid fa-cubes",class:"icon"})]),o("div",kt,[o("p",Ut,n(t.$t("usage.title.totalUsed")),1),o("p",Ft,n(t.totalUsedString),1)])]))]),_:1})]),_:1}),i(p,{md:18,xs:24},{default:s(()=>[i(k,{shadow:"hover",class:"h-full"},{default:s(()=>[o("div",Et,[t.aggLoading?(l(),u(q,{key:0,class:"w-full"})):(l(),u(B,{key:1,data:t.barChartData,options:t.barChartOptions,class:"chart"},null,8,["data","options"]))])]),_:1})]),_:1})]),_:1})):_("",!0),i(k,{shadow:"hover"},{default:s(()=>[t.type===t.serviceType.API?E((l(),u(V,{key:0,data:t.apiUsages,stripe:"","table-layout":"fixed","empty-text":t.$t("common.message.noData"),class:"min-h-[calc(100vh-350px)] mb-[50px]"},{default:s(()=>[i(g,{label:t.$t("application.field.name"),width:"160px"},{default:s(a=>[o("span",null,n(a.row?.api?.title),1)]),_:1},8,["label"]),i(g,{label:t.$t("usage.field.statusCode"),width:"120px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:s(a=>[o("span",null,n(a.row.status_code),1)]),_:1},8,["label"]),i(g,{prop:"deducted_amount",label:t.$t("usage.field.deductedAmount"),width:"150px","class-name":"text-center"},{default:s(a=>[t.getDeductedAmount(a.row)===t.getOriginalAmount(a.row)?(l(),f("div",Rt,[o("span",null,n(t.getDeductedAmount(a.row)),1)])):(l(),f("div",Tt,[e[4]||(e[4]=o("p",null,null,-1)),o("p",null,[o("span",null,n(t.getDeductedAmount(a.row)),1)]),o("p",null,[o("del",null,n(t.getOriginalAmount(a.row)),1)])]))]),_:1},8,["label"]),i(g,{prop:"metadata",label:t.$t("usage.field.metadata"),width:"260px","class-name":"text-center"},{default:s(a=>[o("div",qt,[a.row.original_amount>a.row.deducted_amount&&a.row.original_amount>0?(l(),u(U,{key:0,type:"success",style:{textWrap:"wrap",height:"fit-content",lineHeight:"20px",borderRadius:"10px"}},{default:s(()=>[R(n(((a.row.original_amount-a.row.deducted_amount)*100/a.row.original_amount).toFixed(0)+"% OFF"),1)]),_:2},1024)):_("",!0),(l(!0),f(D,null,C(a.row.metadata,(F,A)=>(l(),u(U,{key:A,style:{textWrap:"wrap",height:"fit-content",lineHeight:"20px",borderRadius:"10px"}},{default:s(()=>[R(n(A)+": "+n(F),1)]),_:2},1024))),128))])]),_:1},8,["label"]),i(g,{prop:"trace_id",label:t.$t("application.field.traceId"),width:"200px","class-name":"hidden sm:table-cell text-center","label-class-name":"hidden sm:table-cell"},{default:s(a=>[o("span",Vt,n(a.row.trace_id),1),a.row.trace_id?(l(),f("span",Pt,[i(H,{content:a.row.trace_id,class:"inline-block"},null,8,["content"])])):_("",!0)]),_:1},8,["label"]),i(g,{label:t.$t("usage.field.createdAt"),width:"200px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:s(a=>[o("span",Lt,n(t.$dayjs.format(a.row.created_at)),1)]),_:1},8,["label"])]),_:1},8,["data","empty-text"])),[[P,t.loading]]):_("",!0),t.type===t.serviceType.Proxy?E((l(),u(V,{key:1,data:t.proxyUsages,stripe:"","table-layout":"fixed","empty-text":t.$t("common.message.noData"),class:"min-h-[calc(100vh-350px)] mb-[50px]"},{default:s(()=>[i(g,{label:t.$t("application.field.name"),width:"160px"},{default:s(a=>[o("span",null,n(a.row?.service?.title),1)]),_:1},8,["label"]),i(g,{prop:"remaining_amount",label:t.$t("usage.field.remainingAmount"),width:"160px","class-name":"text-center"},{default:s(a=>[o("span",null,n(t.getRemainingAmount(a.row)),1),o("span",null,n(t.getOriginalAmount(a.row)),1)]),_:1},8,["label"]),i(g,{prop:"deducted_amount",label:t.$t("usage.field.deductedAmount"),width:"150px","class-name":"text-center"},{default:s(a=>[o("span",null,n(t.getDeductedAmount(a.row)),1)]),_:1},8,["label"]),i(g,{prop:"metadata",label:t.$t("usage.field.metadata"),width:"200px","class-name":"text-center"},{default:s(a=>[(l(!0),f(D,null,C(a.row.metadata,(F,A)=>(l(),u(U,{key:A,class:"mb-2"},{default:s(()=>[R(n(A)+": "+n(F),1)]),_:2},1024))),128))]),_:1},8,["label"]),i(g,{label:t.$t("usage.field.createdAt"),width:"200px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:s(a=>[o("span",Ot,n(t.$dayjs.format(a.row.created_at)),1)]),_:1},8,["label"])]),_:1},8,["data","empty-text"])),[[P,t.loading]]):_("",!0)]),_:1})]),_:1})]),_:1}),i(d,null,{default:s(()=>[i(p,{span:10,offset:14},{default:s(()=>[o("div",xt,[i(M,{"current-page":t.page,"page-size":t.limit,total:t.total,onChange:t.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}const De=G(At,[["render",Bt],["__scopeId","data-v-f555407f"]]);export{De as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a5 as h,a0 as F,o as A,a6 as T,a7 as G,a8 as P,J as B}from"./index-DrvYmhcP.js";import{I as N,a as V}from"./credential-CEfFFZzi.js";import{P as x}from"./Pagination-C_lShewI.js";import{C as O}from"./CopyToClipboard-ffsw6Et3.js";import{F as z}from"./index.es-CJfukhtE.js";import{E as q}from"./index-8OUK_qo_.js";import{E as M,a as R}from"./index-Cfmbp0EV.js";import{E as j}from"./index-Bf6ZJ_-M.js";import{a as J}from"./index-CFfoccqE.js";import{E as H,a as W}from"./index-DmpJeEzY.js";import{E as X}from"./index-C71cSz36.js";import{E as $}from"./index-BJuXTSkv.js";import{d as K,x as r,y as t,E as a,D as i,H as l,C,N as m,I as u,F as Q,J as p,W as Y,q as s}from"./vendor-vue-BWIxYyW8.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./index-D7KBMZcH.js";import"./index-BoKfbtX5.js";import"./index-B8svBnpb.js";import"./typescript-lkSt6sMt.js";import"./index-0JQvyqxg.js";import"./strings-CoSJ5yUQ.js";import"./isEqual-Box1EVJE.js";import"./_Uint8Array-CVqSvQNa.js";import"./castArray-DEdhtRiU.js";import"./use-form-item-xBSOcnBK.js";import"./index-lfOMNaVh.js";import"./index-DZuGeaea.js";import"./debounce-BTG3LRQl.js";import"./_baseIteratee-CCsMHsVd.js";import"./index-BoXQVYKo.js";import"./index-BLjywj98.js";import"./_initCloneObject-C7zi7Gf-.js";import"./isPlainObject-DoaviOGK.js";import"./index-DiwSA7hK.js";import"./validator-Cct-VH_X.js";import"./index-BuyEbX8F.js";const Z=K({name:"ConsoleApplicationList",components:{Pagination:x,CopyToClipboard:O,ElTable:R,ElRow:W,ElButton:X,ElCol:H,ElTag:F,ElSkeleton:J,ElSwitch:j,ElTableColumn:M,ElCard:q,FontAwesomeIcon:z},data(){return{credentialType:V,serviceType:N,individualApplications:[],globalApplications:[],individualApplicationsTotal:void 0,globalApplicationsTotal:void 0,loading:!1,buying:!1,limit:10,form:{amount:1},active:{service:void 0,application:void 0}}},computed:{redirect(){return this.$route.query?.redirect},page(){return parseInt(this.$route.query.page?.toString()||"1")},showPayment(){return!0}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onInitializeGlobalApplication(),this.onFetchData()},methods:{updateAllowConsumeGlobal(e,n){!e||!e.id||A.updateAllConsumeGlobal(e.id,{...e,allow_consume_global:!!n}).then(()=>{$.success(this.$t("application.message.updateSuccessfully").toString())}).catch(()=>{$.error(this.$t("application.message.updateFailed").toString())})},onGoUsage(e){this.$router.push({name:P,query:{application_id:e.id,type:e?.service?.type}})},onBuyMore(e){e?.id&&this.$router.push({name:G,params:{id:e.id}})},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchApplications(e=h.INDIVIDUAL){return new Promise((n,k)=>{A.getAll({limit:this.limit,...e===h.INDIVIDUAL?{offset:(this.page-1)*this.limit}:{},user_id:this.$store.getters.user.id,ordering:"-created_at",type:T.USAGE,scope:e}).then(({data:d})=>{e===h.INDIVIDUAL?(this.individualApplications=d.items,this.individualApplicationsTotal=d.count):(this.globalApplications=d.items,this.globalApplicationsTotal=d.count),n(d)}).catch(d=>{$.error(this.$t("application.message.fetchFailed").toString()),k(d)})})},onFetchData(){this.loading=!0,Promise.all([this.onFetchApplications(h.INDIVIDUAL),this.onFetchApplications(h.GLOBAL)]).then(()=>{this.loading=!1}).catch(()=>{this.loading=!1})},onInitializeGlobalApplication(){A.create({type:T.USAGE,scope:h.GLOBAL,user_id:this.$store.getters.user.id}).finally(()=>{this.onFetchApplications(h.GLOBAL)})},getRemainingAmount(e){if(e.remaining_amount===void 0||e.remaining_amount===null)return"";const n=this.$t(`service.unit.${e?.service?.unit||"credit"}s`);return`${e.remaining_amount?.toFixed(6)} ${n}`},getUsedAmount(e){if(e.used_amount===void 0||e.used_amount===null)return"";const n=this.$t(`service.unit.${e?.service?.unit||"credit"}s`);return`${e.used_amount?.toFixed(6)} ${n}`}}}),ee={class:"title"},te={key:1,class:"summary-card"},ae={class:"icon-wrapper"},oe={class:"label"},le={class:"value"},ie={class:"description"},se={key:1,class:"flex flex-row justify-between align-center"},ne={class:"summary-card"},re={class:"flex justify-start items-center gap-2 mb-2 w-full"},pe={class:"icon-wrapper !mb-0"},de={class:"text-[var(--el-text-color-regular)] text-[14px] truncate"},ce={class:"label"},me={class:"value"},ue={class:"description"},he={class:"flex flex-col items-end gap-2"},fe={class:"copy"},ge={key:0,class:"expired-at"},_e={class:"flex flex-wrap items-center justify-end gap-1"},be={class:"pagination"};function ye(e,n,k,d,ve,we){const f=p("el-col"),_=p("el-row"),I=p("el-skeleton"),g=p("font-awesome-icon"),v=p("el-card"),E=p("copy-to-clipboard"),y=p("el-button"),c=p("el-table-column"),w=p("el-tag"),D=p("el-switch"),S=p("el-table"),U=p("pagination"),L=Y("loading");return s(),r(_,{class:"application-list"},{default:t(()=>[a(f,{span:24},{default:t(()=>[a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[i("h2",ee,l(e.$t("common.title.allApplications")),1)]),_:1})]),_:1}),a(_,{gutter:15,class:"mb-3"},{default:t(()=>[a(f,{md:12,xs:24},{default:t(()=>[a(v,{shadow:"hover",class:"relative min-h-[180px] mb-2","body-style":{padding:"18px 20px"}},{default:t(()=>[e.loading?(s(),r(I,{key:0})):(s(),C("div",te,[i("div",ae,[a(g,{icon:"fa-solid fa-cubes-stacked"})]),i("p",oe,l(e.$t("application.title.count")),1),i("p",le,l(e.individualApplicationsTotal),1),i("p",ie,l(e.$t("application.message.countDescription")),1)]))]),_:1})]),_:1}),e.showPayment&&e.globalApplications?.length>0?(s(),r(f,{key:0,md:12,xs:24},{default:t(()=>[a(v,{shadow:"hover",class:"relative min-h-[180px] mb-2","body-style":{padding:"18px 20px"}},{default:t(()=>[e.loading?(s(),r(I,{key:0})):(s(),C("div",se,[i("div",ne,[i("div",re,[i("div",pe,[a(g,{icon:"fa-solid fa-wallet"})]),i("span",de,[m(l(e.$t("application.field.id"))+": "+l(e.globalApplications?.[0]?.id)+" ",1),e.globalApplications?.[0]?.id?(s(),r(E,{key:0,content:e.globalApplications?.[0]?.id,class:"inline-block"},null,8,["content"])):u("",!0)])]),i("p",ce,l(e.$t("application.title.globalBalance")),1),i("p",me,l(e.globalApplications?.[0]?.remaining_amount?.toFixed(6)||"0.000000")+" "+l(e.$t("service.unit.credits")),1),i("p",ue,l(e.$t("application.message.globalBalanceDescription")),1)]),i("div",he,[a(y,{class:"!m-0 !px-2",size:"small",round:"",onClick:n[0]||(n[0]=o=>e.onGoUsage(e.globalApplications?.[0]))},{default:t(()=>[a(g,{icon:"fa-solid fa-chart-line",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.usage")),1)]),_:1}),e.showPayment?(s(),r(y,{key:0,class:"!m-0 !px-2",type:"primary",round:"",size:"small",onClick:n[1]||(n[1]=o=>e.onBuyMore(e.globalApplications?.[0]))},{default:t(()=>[a(g,{icon:"fa-solid fa-coins",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.buyMore")),1)]),_:1})):u("",!0)])]))]),_:1})]),_:1})):u("",!0)]),_:1}),a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[a(v,{shadow:"hover",class:"applications-table-card"},{default:t(()=>[Q((s(),r(S,{data:e.individualApplications,stripe:"",class:"applications-table !min-h-[calc(100vh-420px)]","table-layout":"fixed","empty-text":e.$t("common.message.noData")},{default:t(()=>[a(c,{prop:"id",label:e.$t("application.field.id"),width:"200px","class-name":"text-center"},{default:t(o=>[i("span",null,l(o.row.id),1),i("span",fe,[a(E,{content:o?.row?.id,class:"inline-block"},null,8,["content"])])]),_:1},8,["label"]),a(c,{label:e.$t("application.field.type"),width:"90px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row?.type==="Period"?(s(),r(w,{key:0,type:"success",effect:"dark",round:""},{default:t(()=>[m(l(e.$t("application.type.period")),1)]),_:1})):o.row?.type==="Usage"?(s(),r(w,{key:1,effect:"dark",round:""},{default:t(()=>[m(l(e.$t("application.type.usage")),1)]),_:1})):u("",!0)]),_:1},8,["label"]),a(c,{label:e.$t("application.field.name"),width:"180px"},{default:t(o=>[i("span",null,l(o.row?.service?.title),1),o.row?.role==="grantee"?(s(),r(w,{key:0,type:"info",size:"small",round:"",class:"ml-2"},{default:t(()=>[m(l(e.$t("application.badge.shared")),1)]),_:1})):u("",!0)]),_:1},8,["label"]),a(c,{prop:"remaining_amount",label:e.$t("application.field.remainingAmount"),width:"150px","class-name":"text-center"},{default:t(o=>[i("span",null,l(e.getRemainingAmount(o.row)),1)]),_:1},8,["label"]),a(c,{prop:"used_amount",label:e.$t("application.field.usedAmount"),width:"150px","class-name":"hidden sm:table-cell text-center","label-class-name":"hidden sm:table-cell"},{default:t(o=>[i("span",null,l(e.getUsedAmount(o.row)),1)]),_:1},8,["label"]),a(c,{prop:"allow_consume_global",label:e.$t("application.field.allowConsumeGlobal"),width:"120px","class-name":"hidden sm:table-cell text-center","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row.service?.type===e.serviceType.API?(s(),r(D,{key:0,modelValue:o.row.allow_consume_global,"onUpdate:modelValue":b=>o.row.allow_consume_global=b,"active-value":!0,"inactive-value":!1,onChange:b=>e.updateAllowConsumeGlobal(o.row,b)},null,8,["modelValue","onUpdate:modelValue","onChange"])):u("",!0)]),_:1},8,["label"]),a(c,{label:e.$t("application.field.expiredAt"),width:"180px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:t(o=>[o.row.expired_at?(s(),C("span",ge,l(e.$dayjs.format(o.row.expired_at)),1)):u("",!0)]),_:1},8,["label"]),a(c,{fixed:"right",width:"200px"},{default:t(o=>[i("div",_e,[a(y,{class:"!m-0 !px-2",size:"small",round:"",onClick:b=>e.onGoUsage(o?.row)},{default:t(()=>[a(g,{icon:"fa-solid fa-chart-line",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.usage")),1)]),_:1},8,["onClick"]),e.showPayment?(s(),r(y,{key:0,class:"!m-0 !px-2",type:"primary",round:"",size:"small",onClick:b=>e.onBuyMore(o?.row)},{default:t(()=>[a(g,{icon:"fa-solid fa-coins",class:"mr-1 text-[12px]"}),m(" "+l(e.$t("application.button.buyMore")),1)]),_:1},8,["onClick"])):u("",!0)])]),_:1})]),_:1},8,["data","empty-text"])),[[L,e.loading]])]),_:1})]),_:1})]),_:1}),a(_,null,{default:t(()=>[a(f,{span:24},{default:t(()=>[i("div",be,[a(U,{"current-page":e.page,"page-size":e.limit,total:e.individualApplicationsTotal,onChange:e.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}const it=B(Z,[["render",ye],["__scopeId","data-v-7182b838"]]);export{it as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.title[data-v-350ab467]{font-size:20px;font-weight:700;margin-bottom:16px;color:var(--el-text-color-primary)}.item-mini .card-content[data-v-350ab467]{display:flex;flex-direction:column}.item-mini .icon-wrapper[data-v-350ab467]{height:36px;width:36px;line-height:36px;border-radius:50%;background-color:var(--el-bg-color-page);text-align:center;margin-bottom:8px}.item-mini .icon-wrapper .icon[data-v-350ab467]{color:var(--el-color-primary)}.item-mini .value[data-v-350ab467]{font-weight:600;font-size:24px;color:var(--el-text-color-primary)}.item-mini .description[data-v-350ab467]{color:var(--el-text-color-regular);font-size:13px}.filter-row[data-v-350ab467]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-select[data-v-350ab467]{width:160px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as v}from"./order-BrBYxI1W.js";import{P as O}from"./Pagination-C_lShewI.js";import{C as N}from"./CopyToClipboard-ffsw6Et3.js";import{O as r}from"./order-CB3uOPHS.js";import{a0 as T,J as U}from"./index-DrvYmhcP.js";import{g as W}from"./price-C6x3zgFx.js";import{F as V}from"./index.es-CJfukhtE.js";import{a as q}from"./index-CFfoccqE.js";import{E as H}from"./index-DPrdPxRp.js";import{E as M,a as z}from"./index-D7KBMZcH.js";import{E as B}from"./index-8OUK_qo_.js";import{E as X}from"./index-C71cSz36.js";import{E as j,a as Q}from"./index-Cfmbp0EV.js";import{E as G,a as J}from"./index-DmpJeEzY.js";import{d as Y,x as c,y as a,E as t,D as l,H as i,C as u,L as E,M as S,N as b,F as K,J as d,W as Z,q as n}from"./vendor-vue-BWIxYyW8.js";import"./typescript-lkSt6sMt.js";import"./isEqual-Box1EVJE.js";import"./_Uint8Array-CVqSvQNa.js";import"./index-B8svBnpb.js";import"./index-lfOMNaVh.js";import"./index-DZuGeaea.js";import"./use-form-item-xBSOcnBK.js";import"./index-BLjywj98.js";import"./index-BoKfbtX5.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./index-0JQvyqxg.js";import"./index-BC6AqXIx.js";import"./debounce-BTG3LRQl.js";import"./index-BoXQVYKo.js";import"./strings-CoSJ5yUQ.js";import"./castArray-DEdhtRiU.js";import"./_baseIteratee-CCsMHsVd.js";import"./index-BuyEbX8F.js";import"./_initCloneObject-C7zi7Gf-.js";import"./isPlainObject-DoaviOGK.js";import"./index-DiwSA7hK.js";const P={total_count:0,total_spent:0,state_counts:{}},x=Y({name:"ConsoleOrderList",components:{Pagination:O,CopyToClipboard:N,ElRow:J,ElCol:G,ElTable:Q,ElTableColumn:j,ElButton:X,ElTag:T,ElCard:B,ElSelect:z,ElOption:M,ElDatePicker:H,ElSkeleton:q,FontAwesomeIcon:V},data(){return{OrderState:r,orders:[],loading:!1,total:void 0,limit:10,filterState:this.$route.query.state?.toString()||"",filterPayWay:this.$route.query.pay_way?.toString()||"",createdAtRange:(()=>{const e=this.$route.query.created_at_from?.toString(),s=this.$route.query.created_at_to?.toString();if(e&&s)return[new Date(e),new Date(s)]})(),summary:{...P},summaryLoading:!1,exporting:!1,shortcuts:[{text:this.$t("usage.shortcuts.today"),value:()=>{const e=new Date,s=new Date;return s.setHours(0,0,0,0),[s,e]}},{text:this.$t("usage.shortcuts.last7Days"),value:()=>{const e=new Date,s=new Date;return s.setDate(s.getDate()-7),[s,e]}},{text:this.$t("usage.shortcuts.last1Month"),value:()=>{const e=new Date,s=new Date;return s.setMonth(s.getMonth()-1),[s,e]}}]}},computed:{page(){return parseInt(this.$route.query.page?.toString()||"1")},stateOptions(){return[{value:r.PENDING,label:this.$t("order.state.pending")},{value:r.FINISHED,label:this.$t("order.state.finished")},{value:r.PAID,label:this.$t("order.state.paid")},{value:r.EXPIRED,label:this.$t("order.state.expired")},{value:r.FAILED,label:this.$t("order.state.failed")},{value:r.REFUNDED,label:this.$t("order.state.refunded")}]},payWayOptions(){return[{value:"WechatPay",label:this.$t("order.title.wechatPay")},{value:"Stripe",label:this.$t("order.title.stripe")},{value:"AliPay",label:this.$t("order.title.aliPay")},{value:"X402",label:this.$t("order.title.x402")},{value:"PayPal",label:this.$t("order.title.paypal")}]},filterQuery(){const e={user_id:this.$store.getters.user?.id};return this.filterState&&(e.state=this.filterState),this.filterPayWay&&(e.pay_way=this.filterPayWay),this.createdAtRange?.[0]&&(e.created_at_from=this.createdAtRange[0]),this.createdAtRange?.[1]&&(e.created_at_to=this.createdAtRange[1]),e}},watch:{page:{handler(){this.onFetchData()}}},mounted(){this.onFetchData(),this.onFetchSummary()},methods:{getPriceString:W,stateTagType(e){return e===r.FINISHED||e===r.PAID?"success":e===r.EXPIRED||e===r.FAILED?"danger":e===r.REFUNDED?"warning":"info"},stateLabel(e){return{[r.PENDING]:this.$t("order.state.pending"),[r.PAID]:this.$t("order.state.paid"),[r.FINISHED]:this.$t("order.state.finished"),[r.EXPIRED]:this.$t("order.state.expired"),[r.FAILED]:this.$t("order.state.failed"),[r.REFUNDED]:this.$t("order.state.refunded")}[e]||e},isPendingAction(e){return e!==r.PAID&&e!==r.FINISHED&&e!==r.EXPIRED&&e!==r.FAILED&&e!==r.REFUNDED},goToDetail(e){this.$router.push({name:"console-order-detail",params:{id:e}})},async onFilterChange(){await this.$router.push({name:this.$route.name?.toString(),query:{page:1,...this.filterState?{state:this.filterState}:{},...this.filterPayWay?{pay_way:this.filterPayWay}:{},...this.createdAtRange?.[0]?{created_at_from:this.createdAtRange[0].toISOString()}:{},...this.createdAtRange?.[1]?{created_at_to:this.createdAtRange[1].toISOString()}:{}}}),this.onFetchData(),this.onFetchSummary()},onPageChange(e){this.$router.push({name:this.$route.name?.toString(),query:{...this.$route.query,page:e}})},onFetchData(){this.loading=!0,v.getAll({ordering:"-created_at",limit:this.limit,offset:(this.page-1)*this.limit,...this.filterQuery}).then(({data:e})=>{this.orders=e.items,this.total=e.count}).catch(()=>{}).finally(()=>{this.loading=!1})},onFetchSummary(){this.summaryLoading=!0,v.getSummary(this.filterQuery).then(({data:e})=>{this.summary=e}).catch(()=>{this.summary={...P}}).finally(()=>{this.summaryLoading=!1})},onExport(){this.exporting=!0,v.exportCsv(this.filterQuery).then(({data:e})=>{const s=window.URL.createObjectURL(e),_=document.createElement("a");_.href=s,_.download="orders.csv",_.click(),window.URL.revokeObjectURL(s)}).catch(()=>{}).finally(()=>{this.exporting=!1})}}}),ee={class:"title"},te={key:1,class:"card-content"},ae={class:"icon-wrapper"},oe={class:"description"},se={class:"value"},re={key:1,class:"card-content"},le={class:"icon-wrapper"},ie={class:"description"},ne={class:"value"},de={key:1,class:"card-content"},ce={class:"icon-wrapper"},pe={class:"description"},me={class:"value"},ue={key:1,class:"card-content"},he={class:"icon-wrapper"},fe={class:"description"},ge={class:"value"},_e={class:"filter-row mb-3"},ye={class:"key"},be={class:"cursor-pointer"},$e={class:"price"},ve={class:"description"},we={class:"text-gray-500"},De={class:"created-at"},Ee={class:"flex items-center justify-center flex-wrap"},Se={class:"float-right"};function Pe(e,s,_,ke,Ce,Fe){const p=d("el-col"),h=d("el-row"),y=d("el-skeleton"),f=d("font-awesome-icon"),g=d("el-card"),w=d("el-option"),D=d("el-select"),k=d("el-date-picker"),$=d("el-button"),C=d("copy-to-clipboard"),m=d("el-table-column"),F=d("el-tag"),A=d("el-table"),I=d("pagination"),R=Z("loading");return n(),c(h,{class:"panel"},{default:a(()=>[t(p,{span:24},{default:a(()=>[t(h,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[l("h2",ee,i(e.$t("common.title.allOrders")),1)]),_:1})]),_:1}),t(h,{gutter:16},{default:a(()=>[t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",te,[l("div",ae,[t(f,{icon:"fa-solid fa-receipt",class:"icon"})]),l("p",oe,i(e.$t("order.title.totalOrders")),1),l("p",se,i(e.summary.total_count),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",re,[l("div",le,[t(f,{icon:"fa-solid fa-dollar-sign",class:"icon"})]),l("p",ie,i(e.$t("order.title.totalSpent")),1),l("p",ne,i(e.getPriceString({value:e.summary.total_spent})),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",de,[l("div",ce,[t(f,{icon:"fa-solid fa-check-circle",class:"icon"})]),l("p",pe,i(e.$t("order.title.finishedOrders")),1),l("p",me,i(e.summary.state_counts?.Finished||0),1)]))]),_:1})]),_:1}),t(p,{md:6,sm:12,xs:24},{default:a(()=>[t(g,{shadow:"hover",class:"item-mini mb-3"},{default:a(()=>[e.summaryLoading?(n(),c(y,{key:0})):(n(),u("div",ue,[l("div",he,[t(f,{icon:"fa-solid fa-clock",class:"icon"})]),l("p",fe,i(e.$t("order.title.pendingOrders")),1),l("p",ge,i(e.summary.state_counts?.Pending||0),1)]))]),_:1})]),_:1})]),_:1}),l("div",_e,[t(D,{modelValue:e.filterState,"onUpdate:modelValue":s[0]||(s[0]=o=>e.filterState=o),clearable:"",placeholder:e.$t("order.field.allStates"),class:"filter-select",onChange:e.onFilterChange},{default:a(()=>[(n(!0),u(S,null,E(e.stateOptions,o=>(n(),c(w,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"]),t(D,{modelValue:e.filterPayWay,"onUpdate:modelValue":s[1]||(s[1]=o=>e.filterPayWay=o),clearable:"",placeholder:e.$t("order.field.allPayWays"),class:"filter-select",onChange:e.onFilterChange},{default:a(()=>[(n(!0),u(S,null,E(e.payWayOptions,o=>(n(),c(w,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","onChange"]),t(k,{modelValue:e.createdAtRange,"onUpdate:modelValue":s[2]||(s[2]=o=>e.createdAtRange=o),type:"datetimerange",shortcuts:e.shortcuts,"range-separator":e.$t("usage.placeholder.to"),"start-placeholder":e.$t("usage.placeholder.startDate"),"end-placeholder":e.$t("usage.placeholder.endDate"),onChange:e.onFilterChange},null,8,["modelValue","shortcuts","range-separator","start-placeholder","end-placeholder","onChange"]),t($,{type:"primary",plain:"",loading:e.exporting,onClick:e.onExport},{default:a(()=>[t(f,{icon:"fa-solid fa-file-export",class:"mr-1"}),b(" "+i(e.$t("order.button.export")),1)]),_:1},8,["loading","onClick"])]),t(h,null,{default:a(()=>[t(p,{span:24},{default:a(()=>[t(g,{shadow:"hover"},{default:a(()=>[K((n(),c(A,{data:e.orders,stripe:"","empty-text":e.$t("common.message.noData"),class:"min-h-[calc(100vh-450px)] mb-[20px]"},{default:a(()=>[t(m,{prop:"id",label:e.$t("order.field.id"),"class-name":"text-center",width:"200px"},{default:a(o=>[l("span",ye,i(o.row.id),1),l("span",be,[t(C,{content:o.row.id,class:"inline-block"},null,8,["content"])])]),_:1},8,["label"]),t(m,{label:e.$t("order.field.price"),width:"110px",align:"center"},{default:a(o=>[l("span",$e,i(e.getPriceString({value:o.row?.price})),1)]),_:1},8,["label"]),t(m,{label:e.$t("order.field.description"),"min-width":"220px","class-name":"hidden md:table-cell","label-class-name":"hidden md:table-cell"},{default:a(o=>[l("span",ve,i(o.row.description),1)]),_:1},8,["label"]),t(m,{prop:"state",label:e.$t("order.field.state"),width:"130px",align:"center"},{default:a(o=>[t(F,{type:e.stateTagType(o.row.state),class:"mx-1",effect:"dark",round:"",size:"small"},{default:a(()=>[b(i(e.stateLabel(o.row.state)),1)]),_:2},1032,["type"])]),_:1},8,["label"]),t(m,{label:e.$t("order.field.payWay"),width:"120px",align:"center","class-name":"hidden md:table-cell","label-class-name":"hidden md:table-cell"},{default:a(o=>[l("span",we,i(o.row.pay_way||"-"),1)]),_:1},8,["label"]),t(m,{label:e.$t("order.field.createdAt"),width:"200px","class-name":"hidden sm:table-cell","label-class-name":"hidden sm:table-cell"},{default:a(o=>[l("span",De,i(e.$dayjs.format(o.row.created_at)),1)]),_:1},8,["label"]),t(m,{"min-width":"130px",fixed:"right"},{default:a(o=>[l("div",Ee,[e.isPendingAction(o.row.state)?(n(),c($,{key:0,type:"primary",size:"small",onClick:L=>e.goToDetail(o.row.id)},{default:a(()=>[b(i(e.$t("order.button.continuePay")),1)]),_:1},8,["onClick"])):(n(),c($,{key:1,size:"small",onClick:L=>e.goToDetail(o.row.id)},{default:a(()=>[b(i(e.$t("order.button.checkDetail")),1)]),_:1},8,["onClick"]))])]),_:1})]),_:1},8,["data","empty-text"])),[[R,e.loading]])]),_:1})]),_:1})]),_:1}),t(h,null,{default:a(()=>[t(p,{span:10,offset:14},{default:a(()=>[l("div",Se,[t(I,{"current-page":e.page,"page-size":e.limit,total:e.total,onChange:e.onPageChange},null,8,["current-page","page-size","total","onChange"])])]),_:1})]),_:1})]),_:1})]),_:1})}const ht=U(x,[["render",Pe],["__scopeId","data-v-350ab467"]]);export{ht as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as t}from"./vendor-vue-
|
|
1
|
+
import{d as t}from"./vendor-vue-BWIxYyW8.js";const r=t({name:"AuthLogin",data(){return{redirect:this.$route.query.redirect?.toString()}},async mounted(){this.$store.state.token.access?this.$router.push(this.redirect||"/"):this.$store.dispatch("login")}});export{r as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as E}from"./Navigator-
|
|
1
|
+
import{N as E}from"./Navigator-ySiZ_3sE.js";import{A as N}from"./Status-DAfUPPmi.js";import{a5 as d,a6 as u,bq as z,br as I,J as v,o as k,S as C}from"./index-DrvYmhcP.js";import{a as x}from"./errorCode-Cqj9Td_Z.js";import{E as D}from"./index-C71cSz36.js";import{E as U}from"./index-DiwSA7hK.js";import{E as L}from"./index-DopdqtSU.js";import{E as y}from"./index-BJuXTSkv.js";import{d as w,x as _,y as $,D as m,H as h,E as l,N as R,J as a,q as A,c as B,C as V,I as P}from"./vendor-vue-BWIxYyW8.js";import"./midjourney-BpOMf6EO.js";import"./luma-DcySqBv2.js";import"./kling-DwJwIwVI.js";import"./veo-Dg8Zhpd-.js";import"./sora-Dyuoglk1.js";import"./pixverse-g-p4CgDy.js";import"./flux-BDAe6Szo.js";import"./hailuo-C8Dw-0xR.js";import"./suno-B9P6-pqW.js";import"./producer-BGNC4QeM.js";import"./serp-BcjVM9iR.js";import"./wan-DKq-jYOo.js";import"./webextrator-B5rnj1Le.js";import"./fish-B2JG6AjH.js";import"./avatar-Cxk_5Ggh.js";import"./index.es-CJfukhtE.js";import"./index-D1E_Y5lj.js";import"./index-BoKfbtX5.js";import"./index-B8svBnpb.js";import"./typescript-lkSt6sMt.js";import"./index-0JQvyqxg.js";import"./dropdown-CfgJYpo-.js";import"./castArray-DEdhtRiU.js";import"./byokCredential-EfkQl_84.js";import"./vendor-axios-B8_nURbH.js";import"./index-D7KBMZcH.js";import"./strings-CoSJ5yUQ.js";import"./isEqual-Box1EVJE.js";import"./_Uint8Array-CVqSvQNa.js";import"./use-form-item-xBSOcnBK.js";import"./index-lfOMNaVh.js";import"./index-DZuGeaea.js";import"./debounce-BTG3LRQl.js";import"./_baseIteratee-CCsMHsVd.js";import"./index-BoXQVYKo.js";import"./index-DRgx3hTx.js";import"./_baseClone-CxI4YMcc.js";import"./_initCloneObject-C7zi7Gf-.js";import"./index-Cfmbp0EV.js";import"./isPlainObject-DoaviOGK.js";import"./index-Bf6ZJ_-M.js";import"./validator-Cct-VH_X.js";import"./index-A1vs7Tvb.js";import"./index-VX-0_ECC.js";import"./index-Blb1DDfP.js";import"./index-BuyEbX8F.js";import"./index-8OUK_qo_.js";import"./index-Br1yUMf8.js";import"./index-CCgsKWE1.js";import"./index-0LjPFnwM.js";import"./CopyToClipboard-ffsw6Et3.js";import"./index-BLjywj98.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";function S(t){if(!t?.expired_at)return!1;try{return new Date(t?.expired_at)<new Date}catch{return!1}}function O(t){return console.debug("application remaining amount",t,t?.remaining_amount),t?.remaining_amount&&t?.remaining_amount<0}function f(t){if(!t)return console.debug("application is undefined, return false"),!1;const i=O(t),o=S(t);return console.debug("is application exhausted",i),console.debug("is application expired",o),!i&&!o}function G(t,i){if(console.debug("start to execute getFinalApplication",t,i),i){const e=t?.find(c=>c.id===i.id);if(e)return console.debug("current application is preserved (respect user selection)",e),e}console.debug("get final application from applications",t);const o=t?.find(e=>e.scope===d.GLOBAL&&e.type===u.PERIOD);if(console.debug("application1",o),f(o))return console.debug("application with global scope and Period type",o),o;const s=t?.find(e=>e.scope===d.GLOBAL&&e.type===u.USAGE);if(console.debug("application2",s),f(s))return console.debug("application with global scope and Usage type",s),s;const p=t?.find(e=>(e.scope===d.INDIVIDUAL&&e?.type)===u.PERIOD);if(console.debug("application3",p),f(p))return console.debug("application with Period type",p),p;const n=t?.find(e=>(e.scope===d.INDIVIDUAL&&e?.type)===u.USAGE);return console.debug("application4",n),f(n)?(console.debug("application with Usage type",n),n):o||s||p||n}const F=w({name:"ApplicationConfirm",components:{ElDialog:I,ElDivider:L,ElCheckbox:U,ElButton:D},props:{visible:{type:Boolean,required:!1,default:!1}},emits:["update:visible","apply"],data(){return{checked:!0}},watch:{},methods:{getBaseUrlPlatform:z,onApply(){if(!this.checked){y.error(this.$t("application.message.notAgreePolicy"));return}this.$emit("apply")}}}),M={class:"content py-[10px] px-[40px]"},T={class:"my-4"},W={class:"policy mb-[10px]"},q={class:"policy-title text-[12px] relative -bottom-[3px]"},J=["href"];function H(t,i,o,s,p,n){const e=a("el-divider"),c=a("el-checkbox"),g=a("el-button"),b=a("el-dialog");return A(),_(b,{"model-value":t.visible,width:"500px",title:t.$t("application.message.welcome"),center:"",onClose:i[1]||(i[1]=r=>t.$emit("update:visible",!1))},{default:$(()=>[m("div",M,[m("p",T,h(t.$t("application.message.notApplied")),1),l(e,{class:"my-2"}),m("div",W,[l(c,{modelValue:t.checked,"onUpdate:modelValue":i[0]||(i[0]=r=>t.checked=r),size:"large",class:"policy-checkbox mr-[10px]"},null,8,["modelValue"]),m("span",q,h(t.$t("application.message.readPolicy")),1),m("a",{class:"policy-title text-[12px] relative -bottom-[3px] text-[var(--el-color-primary)] cursor-pointer no-underline",target:"_blank",href:t.getBaseUrlPlatform()+"/terms"}," "+h(t.$t("application.message.policy")),9,J)]),l(g,{round:"",type:"primary",onClick:t.onApply},{default:$(()=>[R(h(t.$t("common.button.start")),1)]),_:1},8,["onClick"])])]),_:1},8,["model-value","title"])}const j=v(F,[["render",H]]),K=w({name:"LayoutMain",components:{Navigator:E,ApplicationStatus:N,ApplicationConfirm:j},provide(){return{initialized:B(()=>this.initialized)}},data(){return{initialized:!1,applying:!1,mobile:window.innerWidth<768,initializeRunId:0}},computed:{appName(){return this.$route.meta.appName},application(){return this.$store.state[this.appName]?.application},applications(){const t=this.$store.state[this.appName]?.applications??[];console.debug("individualApplications",t);const i=this.$store.state.applications??[];return console.debug("globalApplications",i),i.concat(t)},loading(){return this.$store.state[this.appName]?.status?.getApplications===C.Request},service(){return this.$store.state[this.appName]?.service},userId(){return this.$store.state.user?.id}},watch:{appName(){this.initialize()},userId(t,i){t&&t!==i&&this.initialize()}},mounted(){this.initialize(),window.addEventListener("resize",this.onResize)},beforeUnmount(){window.removeEventListener("resize",this.onResize)},methods:{onResize(){this.mobile=window.innerWidth<768},async initialize(){const t=++this.initializeRunId;if(this.initialized=!1,console.debug("Fetching all individual and global applications for",this.appName),await Promise.allSettled([this.$store.dispatch("getApplications"),this.$store.dispatch(`${this.appName}/getApplications`)]),t!==this.initializeRunId)return;console.debug("Fetched all applications",this.applications),this.$store.state.applications?.length===0&&await this.onAutoApply();const i=this.$store.state[this.appName]?.application;console.debug("current application",i);const o=G(this.applications,i);console.debug("final application",o),o&&(console.debug("set final application",o,o?.type),await this.$store.dispatch(`${this.appName}/setApplication`,o)),console.debug("finished initialization"),this.initialized=!0},onApply(){this.onAutoApply()},async onAutoApply(){try{await k.create({type:u.USAGE,scope:d.GLOBAL,user_id:this.$store.getters.user.id}),this.applying=!1,await this.$store.dispatch("getApplications"),this.showWelcomeToast()}catch(t){t?.response?.data?.code===x?await this.$store.dispatch("getApplications"):y.error(this.$t("application.message.applyFailed"))}},showWelcomeToast(){const t=this.$store.state.applications?.[0],i=Math.floor(t?.remaining_amount??0),o=i>0?this.$t("application.message.welcomeWithCredits",{credits:i}):this.$t("application.message.welcomeNoCredits");y({message:o,type:"success",duration:6e3,showClose:!0})}}}),Q={class:"wrapper"};function X(t,i,o,s,p,n){const e=a("router-view"),c=a("navigator"),g=a("application-status"),b=a("application-confirm");return A(),V("div",Q,[l(e,{class:"main"}),l(c,{class:"navigator",direction:t.mobile?"row":"column"},null,8,["direction"]),t.application?(A(),_(g,{key:0,class:"status-floating fixed right-2 z-[200]",application:t.application,applications:t.applications,"show-price":!1,authenticated:!!t.$store.state.token.access,service:t.service,onSelect:i[0]||(i[0]=r=>t.$store.dispatch(`${t.appName}/setApplication`,r))},null,8,["application","applications","authenticated","service"])):P("",!0),l(b,{modelValue:t.applying,"onUpdate:modelValue":i[1]||(i[1]=r=>t.applying=r),modelModifiers:{visible:!0},onApply:t.onApply},null,8,["modelValue","onApply"])])}const ni=v(K,[["render",X],["__scopeId","data-v-319483e1"]]);export{ni as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{L as A}from"./Hailuo-WJEhqlHH.js";import{F as R}from"./index.es-DvG6Omih.js";import{bq as T,J as k,az as B,b8 as L}from"./index-DiKXm2Vl.js";import{u as D}from"./uploadTrackerMixin--N-yU8Tl.js";import{a as z}from"./vendor-axios-B8_nURbH.js";import{E as S}from"./index-xfKA6XaK.js";import{E as p}from"./index-DmkksXrm.js";import{d as U,G as l,D as t,C as i,E as s,y as a,H as m,I as f,x as b,Q as F,J as n,q as r,M as O,O as N,N as P}from"./vendor-vue-Ck7I6JZv.js";import{E as j}from"./index-0SgFPXi5.js";import{E as q}from"./index-CDEW0Kb3.js";import{a as G,E as H}from"./index-D6ZcNGZb.js";import{E as X}from"./index-BUPZeOUN.js";import{C as Y}from"./CopyToClipboard-VMhzQe2I.js";import{E as J}from"./index-DlO_4Ch8.js";import{E as Q}from"./index-DpuiO2XK.js";import{B as Z}from"./BotPlaceholder-CeRMdwzL.js";import{T as K}from"./TabSwitcher-BwzmJBrX.js";import{b as W}from"./errorCode-Cqj9Td_Z.js";import"./index-DjSAdHwP.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CBGKudGF.js";import"./use-form-item-d9y6c1OU.js";import"./index-BuyEbX8F.js";import"./typescript-nWN70UwR.js";import"./index-DCKHnjpd.js";import"./_baseClone-0Kiqxc2t.js";import"./_Uint8Array-vXvvgSwF.js";import"./index-DfR9Qbi5.js";import"./_initCloneObject-BYrljc_C.js";import"./isEqual-UX6HkLTo.js";import"./validator-BS3Z4xEC.js";import"./index-NYylF2dS.js";import"./index-BLjywj98.js";import"./index-CCiFJCOC.js";import"./debounce-D3D-TN8J.js";import"./index-BKuC36PM.js";import"./index-Bz15zyvY.js";import"./strings-C53lWZ6Y.js";import"./isPlainObject-B8kQT8U7.js";const I=4,x=90,ee=U({name:"FishRecorder",components:{ElButton:S,FontAwesomeIcon:R},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(){const e=Math.floor(this.seconds/60),o=this.seconds%60;return`${e.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`},currentScript(){const e=`fish.script.passage${this.scriptIndex%I+1}`;return this.$t(e)}},beforeUnmount(){this.cleanup()},mounted(){this.$emit("update:script",this.currentScript)},methods:{nextScript(){this.scriptIndex=(this.scriptIndex+1)%I,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(o){const v=o?.name==="NotAllowedError"||o?.name==="PermissionDeniedError";p.error(this.$t(v?"fish.message.micDenied":"fish.message.micError"));return}this.chunks=[];const 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=o=>{o.data&&o.data.size>0&&this.chunks.push(o.data)},this.mediaRecorder.onstop=()=>{const o=new Blob(this.chunks,{type:this.mediaRecorder?.mimeType||"audio/webm"});this.recordedBlob=o,this.recordedUrl=URL.createObjectURL(o),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()},x*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(){const e=["audio/webm;codecs=opus","audio/webm","audio/mp4","audio/ogg"];for(const o of e)if(typeof MediaRecorder<"u"&&MediaRecorder.isTypeSupported?.(o))return o},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{const e=this.$store.state.token?.access,o=this.extensionForMime(this.recordedBlob.type||""),v=new File([this.recordedBlob],`recording-${Date.now()}.${o}`,{type:this.recordedBlob.type||"audio/webm"}),h=new FormData;h.append("file",v);const{data:y}=await z.post(`${T()}/api/v1/files/`,h,{headers:{Authorization:`Bearer ${e}`}}),_=y?.file_url;if(!_){p.error(this.$t("fish.message.uploadError"));return}this.$emit("done",{url:_,text:this.currentScript})}catch(e){p.error(this.$t("fish.message.uploadError")),console.error("recorder upload failed",e)}finally{this.uploading=!1}}}}}),oe={class:"recorder"},te={key:0,class:"script"},se={class:"script-header"},ie={class:"label"},re={class:"script-text"},ae={class:"controls"},ne={class:"status"},le={class:"hint"},de={key:1,class:"preview"},ce=["src"],me={class:"preview-actions"},ue={class:"footer"};function pe(e,o,v,h,y,_){const c=n("font-awesome-icon"),d=n("el-button");return r(),l("div",oe,[e.state!=="recorded"?(r(),l("div",te,[t("div",se,[i(c,{icon:"fa-solid fa-book-open",class:"icon mr-1"}),t("span",ie,s(e.$t("fish.description.readScript")),1),i(d,{link:"",size:"small",class:"ml-auto",disabled:e.state==="recording",onClick:e.nextScript},{default:a(()=>[i(c,{icon:"fa-solid fa-shuffle",class:"mr-1"}),m(" "+s(e.$t("fish.button.nextScript")),1)]),_:1},8,["disabled","onClick"])]),t("p",re,s(e.currentScript),1)])):f("",!0),t("div",ae,[e.state==="idle"?(r(),b(d,{key:0,type:"danger",circle:"",size:"large",title:e.$t("fish.button.startRecord"),onClick:e.startRecord},{default:a(()=>[i(c,{icon:"fa-solid fa-microphone"})]),_:1},8,["title","onClick"])):e.state==="recording"?(r(),b(d,{key:1,type:"warning",circle:"",size:"large",title:e.$t("fish.button.stopRecord"),onClick:e.stopRecord},{default:a(()=>[i(c,{icon:"fa-solid fa-stop"})]),_:1},8,["title","onClick"])):f("",!0),t("div",ne,[t("span",{class:F(["timer",e.state==="recording"?"live":""])},s(e.formattedTime),3),t("span",le,s(e.state==="idle"?e.$t("fish.description.recorderIdle"):e.state==="recording"?e.$t("fish.description.recorderRecording"):e.$t("fish.description.recorderRecorded")),1)])]),e.state==="recorded"&&e.recordedUrl?(r(),l("div",de,[t("audio",{src:e.recordedUrl,controls:"",preload:"metadata",class:"w-full"},null,8,ce),t("div",me,[i(d,{size:"small",disabled:e.uploading,onClick:e.reset},{default:a(()=>[i(c,{icon:"fa-solid fa-rotate-left",class:"mr-1"}),m(" "+s(e.$t("fish.button.reRecord")),1)]),_:1},8,["disabled","onClick"]),i(d,{size:"small",type:"primary",loading:e.uploading,onClick:e.useRecording},{default:a(()=>[i(c,{icon:"fa-solid fa-check",class:"mr-1"}),m(" "+s(e.$t("fish.button.useRecording")),1)]),_:1},8,["loading","onClick"])])])):f("",!0),t("div",ue,[i(d,{link:"",size:"small",disabled:e.uploading||e.state==="recording",onClick:e.onCancel},{default:a(()=>[m(s(e.$t("fish.button.cancel")),1)]),_:1},8,["disabled","onClick"])])])}const fe=k(ee,[["render",pe],["__scopeId","data-v-1958e4a1"]]),he=50*1024*1024,M=()=>({title:"",description:"",texts:"",voicesUrl:"",visibility:"unlist",trainMode:"fast",enhanceAudio:!0,generateSample:!1}),ve=U({name:"FishModelConfigPanel",components:{ElButton:S,ElInput:X,ElRadioButton:H,ElRadioGroup:G,ElSwitch:q,ElUpload:j,FontAwesomeIcon:R,Recorder:fe},mixins:[D],emits:["create"],data(){return{form:M(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return T()+"/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>he?(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,o,v){this.uploading=!1;const h=e?.file_url;if(!h){p.error(this.$t("fish.message.uploadError")),this.fileList=[];return}this.form.voicesUrl=h,this.fileList=v},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(){const 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}const o={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()&&(o.description=this.form.description.trim()),this.form.texts.trim()&&(o.texts=[this.form.texts.trim()]),this.creating=!0,this.$emit("create",o),setTimeout(()=>{this.creating=!1,this.form=M(),this.fileList=[]},600)}}}),$e={class:"flex flex-col h-full"},ge={class:"flex-1 overflow-y-auto p-5"},_e={class:"field-block mb-4"},be={class:"title font-bold"},ye={class:"field-block mb-4"},we={class:"flex items-baseline justify-between mb-1"},ke={class:"title font-bold"},Ue={key:0,class:"muted"},Re={class:"hint"},Ce={key:0,class:"audio-actions"},Se={key:1,class:"hint warn"},Ve={key:3,class:"mt-2"},Ee=["src"],Ie={class:"ready-actions"},Me={class:"field-block mb-4"},Te={class:"title font-bold"},Ae={class:"hint"},Be={class:"field-block mb-4"},Le={class:"title font-bold"},De={class:"field-block mb-4"},ze={class:"title font-bold"},Fe={class:"field-block mb-4"},Oe={class:"title font-bold"},Ne={class:"field-block mb-3"},Pe={class:"field-row"},je={class:"title font-bold"},qe={class:"hint mt-0 mb-0"},Ge={class:"field-block mb-2"},He={class:"field-row"},Xe={class:"title font-bold"},Ye={class:"hint mt-0 mb-0"},Je={class:"flex flex-col items-center justify-center px-5 pb-5"};function Qe(e,o,v,h,y,_){const c=n("el-input"),d=n("font-awesome-icon"),$=n("el-button"),g=n("el-upload"),C=n("recorder"),w=n("el-radio-button"),V=n("el-radio-group"),E=n("el-switch");return r(),l("div",$e,[t("div",ge,[t("div",_e,[t("h2",be,[m(s(e.$t("fish.name.voiceTitle"))+" ",1),o[9]||(o[9]=t("span",{class:"required"},"*",-1))]),i(c,{modelValue:e.form.title,"onUpdate:modelValue":o[0]||(o[0]=u=>e.form.title=u),placeholder:e.$t("fish.placeholder.voiceTitle"),maxlength:"60"},null,8,["modelValue","placeholder"])]),t("div",ye,[t("div",we,[t("h2",ke,[m(s(e.$t("fish.name.referenceAudio"))+" ",1),o[10]||(o[10]=t("span",{class:"required"},"*",-1))]),!e.form.voicesUrl&&!e.recording?(r(),l("span",Ue,s(e.$t("fish.description.audioRequired")),1)):f("",!0)]),t("p",Re,s(e.$t("fish.description.uploadAudio")),1),!e.form.voicesUrl&&!e.recording?(r(),l("div",Ce,[i(g,{"file-list":e.fileList,"onUpdate:fileList":o[1]||(o[1]=u=>e.fileList=u),name:"file",limit:1,class:"upload-wrapper",action:e.uploadUrl,accept:".mp3,.wav,.m4a,.ogg,.webm,audio/*","show-file-list":!1,"on-exceed":e.onExceed,"on-error":e.onUploadError,"on-success":e.onUploadSuccess,"before-upload":e.onBeforeUpload,headers:e.uploadHeaders},{default:a(()=>[i($,{type:"primary",plain:"",round:"",loading:e.uploading},{default:a(()=>[i(d,{icon:"fa-solid fa-upload",class:"icon mr-1"}),m(" "+s(e.$t("fish.button.uploadAudio")),1)]),_:1},8,["loading"])]),_:1},8,["file-list","action","on-exceed","on-error","on-success","before-upload","headers"]),i($,{type:"primary",round:"",disabled:!e.supportsRecorder,onClick:e.onStartRecord},{default:a(()=>[i(d,{icon:"fa-solid fa-microphone",class:"icon mr-1"}),m(" "+s(e.$t("fish.button.recordAudio")),1)]),_:1},8,["disabled","onClick"])])):f("",!0),!e.supportsRecorder&&!e.form.voicesUrl&&!e.recording?(r(),l("p",Se,s(e.$t("fish.message.recorderUnsupported")),1)):f("",!0),e.recording?(r(),b(C,{key:2,class:"mt-2",onDone:e.onRecorded,onCancel:o[2]||(o[2]=u=>e.recording=!1),"onUpdate:script":e.onScriptChange},null,8,["onDone","onUpdate:script"])):f("",!0),e.form.voicesUrl&&!e.recording?(r(),l("div",Ve,[t("audio",{src:e.form.voicesUrl,controls:"",preload:"metadata",class:"w-full"},null,8,Ee),t("div",Ie,[i($,{link:"",size:"small",onClick:e.clearAudio},{default:a(()=>[i(d,{icon:"fa-solid fa-rotate-left",class:"mr-1"}),m(" "+s(e.$t("fish.button.replaceAudio")),1)]),_:1},8,["onClick"])])])):f("",!0)]),t("div",Me,[t("h2",Te,s(e.$t("fish.name.audioTexts")),1),t("p",Ae,s(e.$t("fish.description.audioTexts")),1),i(c,{modelValue:e.form.texts,"onUpdate:modelValue":o[3]||(o[3]=u=>e.form.texts=u),type:"textarea",rows:2,placeholder:e.$t("fish.placeholder.audioTexts"),maxlength:"500",onInput:e.onTextsInput},null,8,["modelValue","placeholder","onInput"])]),t("div",Be,[t("h2",Le,s(e.$t("fish.name.voiceDescription")),1),i(c,{modelValue:e.form.description,"onUpdate:modelValue":o[4]||(o[4]=u=>e.form.description=u),type:"textarea",rows:2,placeholder:e.$t("fish.placeholder.voiceDescription"),maxlength:"500"},null,8,["modelValue","placeholder"])]),t("div",De,[t("h2",ze,s(e.$t("fish.name.visibility")),1),i(V,{modelValue:e.form.visibility,"onUpdate:modelValue":o[5]||(o[5]=u=>e.form.visibility=u),size:"small"},{default:a(()=>[i(w,{label:"private",value:"private"},{default:a(()=>[m(s(e.$t("fish.value.private")),1)]),_:1}),i(w,{label:"unlist",value:"unlist"},{default:a(()=>[m(s(e.$t("fish.value.unlist")),1)]),_:1}),i(w,{label:"public",value:"public"},{default:a(()=>[m(s(e.$t("fish.value.public")),1)]),_:1})]),_:1},8,["modelValue"])]),t("div",Fe,[t("h2",Oe,s(e.$t("fish.name.trainMode")),1),i(V,{modelValue:e.form.trainMode,"onUpdate:modelValue":o[6]||(o[6]=u=>e.form.trainMode=u),size:"small"},{default:a(()=>[i(w,{label:"fast",value:"fast"},{default:a(()=>[m(s(e.$t("fish.value.trainModeFast")),1)]),_:1}),i(w,{label:"precise",value:"precise"},{default:a(()=>[m(s(e.$t("fish.value.trainModePrecise")),1)]),_:1})]),_:1},8,["modelValue"])]),t("div",Ne,[t("div",Pe,[t("h2",je,s(e.$t("fish.name.enhanceAudio")),1),i(E,{modelValue:e.form.enhanceAudio,"onUpdate:modelValue":o[7]||(o[7]=u=>e.form.enhanceAudio=u)},null,8,["modelValue"])]),t("p",qe,s(e.$t("fish.description.enhanceAudio")),1)]),t("div",Ge,[t("div",He,[t("h2",Xe,s(e.$t("fish.name.generateSample")),1),i(E,{modelValue:e.form.generateSample,"onUpdate:modelValue":o[8]||(o[8]=u=>e.form.generateSample=u)},null,8,["modelValue"])]),t("p",Ye,s(e.$t("fish.description.generateSample")),1)])]),t("div",Je,[i($,{type:"primary",class:"btn w-full",round:"",disabled:!e.canCreate||e.creating,loading:e.creating,onClick:e.onCreate},{default:a(()=>[i(d,{icon:"fa-solid fa-magic",class:"mr-2"}),m(" "+s(e.$t("fish.button.createModel")),1)]),_:1},8,["disabled","loading","onClick"])])])}const Ze=k(ve,[["render",Qe],["__scopeId","data-v-d8fc0e55"]]),Ke=U({name:"FishVoiceCard",components:{ElAlert:Q,ElButton:S,ElImage:J,CopyToClipboard:Y,FontAwesomeIcon:R},props:{modelValue:{type:Object,required:!0}},computed:{sampleAudioUrl(){const e=this.modelValue?.samples;if(e?.length)return e[0]?.audio},voiceId(){const e=this.modelValue;return(e?.id||e?._id||e?.reference_id||"").toString()},coverSrc(){const e=this.modelValue?.cover_image;return e&&typeof e=="string"?e:void 0},createdAtLabel(){const e=this.modelValue?.created_at;if(e==null||e==="")return null;const o=typeof e=="number"?e:parseFloat(String(e));return!Number.isFinite(o)||o<=0?null:this.$dayjs.format(""+new Date(o*1e3))}},methods:{onUseVoice(){const e=this.voiceId;e&&(this.$store.commit("fish/setConfig",{...this.$store.state.fish?.config,reference_id:e}),this.$router.push({name:B}))}}}),We={class:"card"},xe={class:"left"},eo={class:"main"},oo={class:"header"},to={class:"title"},so={key:0,class:"datetime"},io={key:0,class:"description"},ro={key:1,class:"sample mt-2"},ao=["src"],no={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},lo={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},co={class:"operations mt-2"};function mo(e,o,v,h,y,_){const c=n("el-image"),d=n("font-awesome-icon"),$=n("copy-to-clipboard"),g=n("el-alert"),C=n("el-button");return r(),l("div",We,[t("div",xe,[e.coverSrc?(r(),b(c,{key:0,src:e.coverSrc,class:"cover",fit:"cover"},{error:a(()=>[i(c,{src:"https://cdn.acedata.cloud/e40fccc727.png",class:"cover fallback",fit:"cover"})]),placeholder:a(()=>[...o[0]||(o[0]=[t("div",{class:"cover placeholder"},null,-1)])]),_:1},8,["src"])):(r(),b(c,{key:1,src:"https://cdn.acedata.cloud/e40fccc727.png",class:"cover fallback",fit:"cover"}))]),t("div",eo,[t("div",oo,[t("span",to,s(e.modelValue?.title||e.$t("fish.name.untitledVoice")),1),e.createdAtLabel?(r(),l("span",so,s(e.createdAtLabel),1)):f("",!0)]),e.modelValue?.description?(r(),l("p",io,s(e.modelValue?.description),1)):f("",!0),e.sampleAudioUrl?(r(),l("div",ro,[t("audio",{src:e.sampleAudioUrl,controls:"",preload:"metadata",class:"w-full"},null,8,ao)])):f("",!0),i(g,{closable:!1,class:"mt-2 success"},{default:a(()=>[e.voiceId?(r(),l("p",no,[i(d,{icon:"fa-solid fa-microphone",class:"mr-1"}),m(" "+s(e.$t("fish.name.referenceId"))+": "+s(e.voiceId)+" ",1),i($,{content:e.voiceId},null,8,["content"])])):f("",!0),e.modelValue?.visibility?(r(),l("p",lo,[i(d,{icon:"fa-solid fa-eye",class:"mr-1"}),m(" "+s(e.$t("fish.name.visibility"))+": "+s(e.modelValue?.visibility),1)])):f("",!0)]),_:1}),t("div",co,[i(C,{type:"primary",size:"small",plain:"",disabled:!e.voiceId,onClick:O(e.onUseVoice,["stop"])},{default:a(()=>[i(d,{icon:"fa-solid fa-volume-high",class:"mr-1"}),m(" "+s(e.$t("fish.button.useVoice")),1)]),_:1},8,["disabled","onClick"])])])])}const uo=k(Ke,[["render",mo],["__scopeId","data-v-629e2d04"]]),po=U({name:"FishModelListPanel",components:{VoiceCard:uo,BotPlaceholder:Z,FontAwesomeIcon:R},props:{loading:{type:Boolean,default:!1}},computed:{voices(){return this.$store.state.fish?.voices}}}),fo={class:"model-list-panel flex flex-col h-full"},ho={class:"header"},vo={class:"title"},$o={key:0,class:"count"},go={class:"body flex-1 min-h-0"},_o={key:0,class:"h-full"},bo={key:1,class:"w-full h-full flex flex-col items-center justify-center text-center px-6"},yo={class:"empty-title"},wo={class:"empty-hint"},ko={key:2,class:"w-full h-full overflow-y-auto pr-1"};function Uo(e,o,v,h,y,_){const c=n("bot-placeholder"),d=n("font-awesome-icon"),$=n("voice-card");return r(),l("div",fo,[t("header",ho,[t("h2",vo,s(e.$t("fish.title.myVoices")),1),e.voices?.length?(r(),l("span",$o,s(e.voices?.length),1)):f("",!0)]),t("div",go,[e.voices===void 0?(r(),l("div",_o,[i(c)])):e.voices.length===0?(r(),l("div",bo,[i(d,{icon:"fa-solid fa-microphone-lines",class:"empty-icon"}),t("p",yo,s(e.$t("fish.title.noVoicesYet")),1),t("p",wo,s(e.$t("fish.description.noVoicesYet")),1)])):(r(),l("div",ko,[(r(!0),l(N,null,P(e.voices,g=>(r(),b($,{key:g.id,"model-value":g},null,8,["model-value"]))),128))]))])])}const Ro=k(po,[["render",Uo],["__scopeId","data-v-4aab2294"]]),Co=U({name:"FishModelIndex",components:{ModelConfigPanel:Ze,Layout:A,ModelListPanel:Ro,TabSwitcher:K},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){const o=this.credential?.token;if(!o){console.error("no token specified");return}this.loading=!0,p.info(this.$t("fish.message.creatingModel"));try{await L.createModel(e,{token:o}),p.success(this.$t("fish.message.createModelSuccess")),await this.onGetVoices()}catch(v){const h=v?.response?.data;h?.error?.code===W?p.error(this.$t("fish.message.usedUp")):p.error(h?.error?.message||this.$t("fish.message.createModelFailed"))}finally{this.loading=!1}}}}),So={class:"flex flex-col h-full"},Vo={class:"flex-1 min-h-0"};function Eo(e,o,v,h,y,_){const c=n("tab-switcher"),d=n("model-config-panel"),$=n("model-list-panel"),g=n("layout");return r(),b(g,null,{config:a(()=>[t("div",So,[i(c),t("div",Vo,[i(d,{onCreate:e.onCreate},null,8,["onCreate"])])])]),result:a(()=>[i($,{loading:e.loading},null,8,["loading"])]),_:1})}const ht=k(Co,[["render",Eo]]);export{ht as default};
|
|
1
|
+
import{L as A}from"./Hailuo-DJhW5ZsC.js";import{F as R}from"./index.es-CJfukhtE.js";import{bq as T,J as k,az as B,b8 as L}from"./index-DrvYmhcP.js";import{u as D}from"./uploadTrackerMixin--N-yU8Tl.js";import{a as z}from"./vendor-axios-B8_nURbH.js";import{E as S}from"./index-C71cSz36.js";import{E as p}from"./index-BJuXTSkv.js";import{d as U,C as l,D as t,E as i,H as s,y as a,N as m,I as f,x as b,P as F,J as n,q as r,K as O,M as N,L as P}from"./vendor-vue-BWIxYyW8.js";import{E as j}from"./index-BRAaGgzT.js";import{E as q}from"./index-Bf6ZJ_-M.js";import{E as G,a as H}from"./index-CQ8_0yRK.js";import{E as X}from"./index-lfOMNaVh.js";import{C as Y}from"./CopyToClipboard-ffsw6Et3.js";import{E as J}from"./index-Blb1DDfP.js";import{E as K}from"./index-rDyNuNM8.js";import{B as Z}from"./BotPlaceholder-Bb3okszP.js";import{T as Q}from"./TabSwitcher-Dw8j_EHR.js";import{b as W}from"./errorCode-Cqj9Td_Z.js";import"./index-BpUUocOH.js";import"./vendor-dayjs-v0j1UNZp.js";import"./vendor-vue-router-CCWK5dA3.js";import"./use-form-item-xBSOcnBK.js";import"./index-BuyEbX8F.js";import"./typescript-lkSt6sMt.js";import"./index-h2aywIom.js";import"./_baseClone-CxI4YMcc.js";import"./_Uint8Array-CVqSvQNa.js";import"./index-B8svBnpb.js";import"./_initCloneObject-C7zi7Gf-.js";import"./isEqual-Box1EVJE.js";import"./validator-Cct-VH_X.js";import"./index-DZuGeaea.js";import"./index-BLjywj98.js";import"./index-BoKfbtX5.js";import"./debounce-BTG3LRQl.js";import"./index-CFfoccqE.js";import"./index-DtKgf_D_.js";import"./strings-CoSJ5yUQ.js";import"./isPlainObject-DoaviOGK.js";const I=4,x=90,ee=U({name:"FishRecorder",components:{ElButton:S,FontAwesomeIcon:R},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(){const e=Math.floor(this.seconds/60),o=this.seconds%60;return`${e.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}`},currentScript(){const e=`fish.script.passage${this.scriptIndex%I+1}`;return this.$t(e)}},beforeUnmount(){this.cleanup()},mounted(){this.$emit("update:script",this.currentScript)},methods:{nextScript(){this.scriptIndex=(this.scriptIndex+1)%I,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(o){const v=o?.name==="NotAllowedError"||o?.name==="PermissionDeniedError";p.error(this.$t(v?"fish.message.micDenied":"fish.message.micError"));return}this.chunks=[];const 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=o=>{o.data&&o.data.size>0&&this.chunks.push(o.data)},this.mediaRecorder.onstop=()=>{const o=new Blob(this.chunks,{type:this.mediaRecorder?.mimeType||"audio/webm"});this.recordedBlob=o,this.recordedUrl=URL.createObjectURL(o),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()},x*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(){const e=["audio/webm;codecs=opus","audio/webm","audio/mp4","audio/ogg"];for(const o of e)if(typeof MediaRecorder<"u"&&MediaRecorder.isTypeSupported?.(o))return o},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{const e=this.$store.state.token?.access,o=this.extensionForMime(this.recordedBlob.type||""),v=new File([this.recordedBlob],`recording-${Date.now()}.${o}`,{type:this.recordedBlob.type||"audio/webm"}),h=new FormData;h.append("file",v);const{data:y}=await z.post(`${T()}/api/v1/files/`,h,{headers:{Authorization:`Bearer ${e}`}}),_=y?.file_url;if(!_){p.error(this.$t("fish.message.uploadError"));return}this.$emit("done",{url:_,text:this.currentScript})}catch(e){p.error(this.$t("fish.message.uploadError")),console.error("recorder upload failed",e)}finally{this.uploading=!1}}}}}),oe={class:"recorder"},te={key:0,class:"script"},se={class:"script-header"},ie={class:"label"},re={class:"script-text"},ae={class:"controls"},ne={class:"status"},le={class:"hint"},de={key:1,class:"preview"},ce=["src"],me={class:"preview-actions"},ue={class:"footer"};function pe(e,o,v,h,y,_){const c=n("font-awesome-icon"),d=n("el-button");return r(),l("div",oe,[e.state!=="recorded"?(r(),l("div",te,[t("div",se,[i(c,{icon:"fa-solid fa-book-open",class:"icon mr-1"}),t("span",ie,s(e.$t("fish.description.readScript")),1),i(d,{link:"",size:"small",class:"ml-auto",disabled:e.state==="recording",onClick:e.nextScript},{default:a(()=>[i(c,{icon:"fa-solid fa-shuffle",class:"mr-1"}),m(" "+s(e.$t("fish.button.nextScript")),1)]),_:1},8,["disabled","onClick"])]),t("p",re,s(e.currentScript),1)])):f("",!0),t("div",ae,[e.state==="idle"?(r(),b(d,{key:0,type:"danger",circle:"",size:"large",title:e.$t("fish.button.startRecord"),onClick:e.startRecord},{default:a(()=>[i(c,{icon:"fa-solid fa-microphone"})]),_:1},8,["title","onClick"])):e.state==="recording"?(r(),b(d,{key:1,type:"warning",circle:"",size:"large",title:e.$t("fish.button.stopRecord"),onClick:e.stopRecord},{default:a(()=>[i(c,{icon:"fa-solid fa-stop"})]),_:1},8,["title","onClick"])):f("",!0),t("div",ne,[t("span",{class:F(["timer",e.state==="recording"?"live":""])},s(e.formattedTime),3),t("span",le,s(e.state==="idle"?e.$t("fish.description.recorderIdle"):e.state==="recording"?e.$t("fish.description.recorderRecording"):e.$t("fish.description.recorderRecorded")),1)])]),e.state==="recorded"&&e.recordedUrl?(r(),l("div",de,[t("audio",{src:e.recordedUrl,controls:"",preload:"metadata",class:"w-full"},null,8,ce),t("div",me,[i(d,{size:"small",disabled:e.uploading,onClick:e.reset},{default:a(()=>[i(c,{icon:"fa-solid fa-rotate-left",class:"mr-1"}),m(" "+s(e.$t("fish.button.reRecord")),1)]),_:1},8,["disabled","onClick"]),i(d,{size:"small",type:"primary",loading:e.uploading,onClick:e.useRecording},{default:a(()=>[i(c,{icon:"fa-solid fa-check",class:"mr-1"}),m(" "+s(e.$t("fish.button.useRecording")),1)]),_:1},8,["loading","onClick"])])])):f("",!0),t("div",ue,[i(d,{link:"",size:"small",disabled:e.uploading||e.state==="recording",onClick:e.onCancel},{default:a(()=>[m(s(e.$t("fish.button.cancel")),1)]),_:1},8,["disabled","onClick"])])])}const fe=k(ee,[["render",pe],["__scopeId","data-v-1958e4a1"]]),he=50*1024*1024,M=()=>({title:"",description:"",texts:"",voicesUrl:"",visibility:"unlist",trainMode:"fast",enhanceAudio:!0,generateSample:!1}),ve=U({name:"FishModelConfigPanel",components:{ElButton:S,ElInput:X,ElRadioButton:H,ElRadioGroup:G,ElSwitch:q,ElUpload:j,FontAwesomeIcon:R,Recorder:fe},mixins:[D],emits:["create"],data(){return{form:M(),fileList:[],uploading:!1,creating:!1,recording:!1,textsAuto:!0}},computed:{uploadUrl(){return T()+"/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>he?(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,o,v){this.uploading=!1;const h=e?.file_url;if(!h){p.error(this.$t("fish.message.uploadError")),this.fileList=[];return}this.form.voicesUrl=h,this.fileList=v},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(){const 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}const o={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()&&(o.description=this.form.description.trim()),this.form.texts.trim()&&(o.texts=[this.form.texts.trim()]),this.creating=!0,this.$emit("create",o),setTimeout(()=>{this.creating=!1,this.form=M(),this.fileList=[]},600)}}}),$e={class:"flex flex-col h-full"},ge={class:"flex-1 overflow-y-auto p-5"},_e={class:"field-block mb-4"},be={class:"title font-bold"},ye={class:"field-block mb-4"},we={class:"flex items-baseline justify-between mb-1"},ke={class:"title font-bold"},Ue={key:0,class:"muted"},Re={class:"hint"},Ce={key:0,class:"audio-actions"},Se={key:1,class:"hint warn"},Ve={key:3,class:"mt-2"},Ee=["src"],Ie={class:"ready-actions"},Me={class:"field-block mb-4"},Te={class:"title font-bold"},Ae={class:"hint"},Be={class:"field-block mb-4"},Le={class:"title font-bold"},De={class:"field-block mb-4"},ze={class:"title font-bold"},Fe={class:"field-block mb-4"},Oe={class:"title font-bold"},Ne={class:"field-block mb-3"},Pe={class:"field-row"},je={class:"title font-bold"},qe={class:"hint mt-0 mb-0"},Ge={class:"field-block mb-2"},He={class:"field-row"},Xe={class:"title font-bold"},Ye={class:"hint mt-0 mb-0"},Je={class:"flex flex-col items-center justify-center px-5 pb-5"};function Ke(e,o,v,h,y,_){const c=n("el-input"),d=n("font-awesome-icon"),$=n("el-button"),g=n("el-upload"),C=n("recorder"),w=n("el-radio-button"),V=n("el-radio-group"),E=n("el-switch");return r(),l("div",$e,[t("div",ge,[t("div",_e,[t("h2",be,[m(s(e.$t("fish.name.voiceTitle"))+" ",1),o[9]||(o[9]=t("span",{class:"required"},"*",-1))]),i(c,{modelValue:e.form.title,"onUpdate:modelValue":o[0]||(o[0]=u=>e.form.title=u),placeholder:e.$t("fish.placeholder.voiceTitle"),maxlength:"60"},null,8,["modelValue","placeholder"])]),t("div",ye,[t("div",we,[t("h2",ke,[m(s(e.$t("fish.name.referenceAudio"))+" ",1),o[10]||(o[10]=t("span",{class:"required"},"*",-1))]),!e.form.voicesUrl&&!e.recording?(r(),l("span",Ue,s(e.$t("fish.description.audioRequired")),1)):f("",!0)]),t("p",Re,s(e.$t("fish.description.uploadAudio")),1),!e.form.voicesUrl&&!e.recording?(r(),l("div",Ce,[i(g,{"file-list":e.fileList,"onUpdate:fileList":o[1]||(o[1]=u=>e.fileList=u),name:"file",limit:1,class:"upload-wrapper",action:e.uploadUrl,accept:".mp3,.wav,.m4a,.ogg,.webm,audio/*","show-file-list":!1,"on-exceed":e.onExceed,"on-error":e.onUploadError,"on-success":e.onUploadSuccess,"before-upload":e.onBeforeUpload,headers:e.uploadHeaders},{default:a(()=>[i($,{type:"primary",plain:"",round:"",loading:e.uploading},{default:a(()=>[i(d,{icon:"fa-solid fa-upload",class:"icon mr-1"}),m(" "+s(e.$t("fish.button.uploadAudio")),1)]),_:1},8,["loading"])]),_:1},8,["file-list","action","on-exceed","on-error","on-success","before-upload","headers"]),i($,{type:"primary",round:"",disabled:!e.supportsRecorder,onClick:e.onStartRecord},{default:a(()=>[i(d,{icon:"fa-solid fa-microphone",class:"icon mr-1"}),m(" "+s(e.$t("fish.button.recordAudio")),1)]),_:1},8,["disabled","onClick"])])):f("",!0),!e.supportsRecorder&&!e.form.voicesUrl&&!e.recording?(r(),l("p",Se,s(e.$t("fish.message.recorderUnsupported")),1)):f("",!0),e.recording?(r(),b(C,{key:2,class:"mt-2",onDone:e.onRecorded,onCancel:o[2]||(o[2]=u=>e.recording=!1),"onUpdate:script":e.onScriptChange},null,8,["onDone","onUpdate:script"])):f("",!0),e.form.voicesUrl&&!e.recording?(r(),l("div",Ve,[t("audio",{src:e.form.voicesUrl,controls:"",preload:"metadata",class:"w-full"},null,8,Ee),t("div",Ie,[i($,{link:"",size:"small",onClick:e.clearAudio},{default:a(()=>[i(d,{icon:"fa-solid fa-rotate-left",class:"mr-1"}),m(" "+s(e.$t("fish.button.replaceAudio")),1)]),_:1},8,["onClick"])])])):f("",!0)]),t("div",Me,[t("h2",Te,s(e.$t("fish.name.audioTexts")),1),t("p",Ae,s(e.$t("fish.description.audioTexts")),1),i(c,{modelValue:e.form.texts,"onUpdate:modelValue":o[3]||(o[3]=u=>e.form.texts=u),type:"textarea",rows:2,placeholder:e.$t("fish.placeholder.audioTexts"),maxlength:"500",onInput:e.onTextsInput},null,8,["modelValue","placeholder","onInput"])]),t("div",Be,[t("h2",Le,s(e.$t("fish.name.voiceDescription")),1),i(c,{modelValue:e.form.description,"onUpdate:modelValue":o[4]||(o[4]=u=>e.form.description=u),type:"textarea",rows:2,placeholder:e.$t("fish.placeholder.voiceDescription"),maxlength:"500"},null,8,["modelValue","placeholder"])]),t("div",De,[t("h2",ze,s(e.$t("fish.name.visibility")),1),i(V,{modelValue:e.form.visibility,"onUpdate:modelValue":o[5]||(o[5]=u=>e.form.visibility=u),size:"small"},{default:a(()=>[i(w,{label:"private",value:"private"},{default:a(()=>[m(s(e.$t("fish.value.private")),1)]),_:1}),i(w,{label:"unlist",value:"unlist"},{default:a(()=>[m(s(e.$t("fish.value.unlist")),1)]),_:1}),i(w,{label:"public",value:"public"},{default:a(()=>[m(s(e.$t("fish.value.public")),1)]),_:1})]),_:1},8,["modelValue"])]),t("div",Fe,[t("h2",Oe,s(e.$t("fish.name.trainMode")),1),i(V,{modelValue:e.form.trainMode,"onUpdate:modelValue":o[6]||(o[6]=u=>e.form.trainMode=u),size:"small"},{default:a(()=>[i(w,{label:"fast",value:"fast"},{default:a(()=>[m(s(e.$t("fish.value.trainModeFast")),1)]),_:1}),i(w,{label:"precise",value:"precise"},{default:a(()=>[m(s(e.$t("fish.value.trainModePrecise")),1)]),_:1})]),_:1},8,["modelValue"])]),t("div",Ne,[t("div",Pe,[t("h2",je,s(e.$t("fish.name.enhanceAudio")),1),i(E,{modelValue:e.form.enhanceAudio,"onUpdate:modelValue":o[7]||(o[7]=u=>e.form.enhanceAudio=u)},null,8,["modelValue"])]),t("p",qe,s(e.$t("fish.description.enhanceAudio")),1)]),t("div",Ge,[t("div",He,[t("h2",Xe,s(e.$t("fish.name.generateSample")),1),i(E,{modelValue:e.form.generateSample,"onUpdate:modelValue":o[8]||(o[8]=u=>e.form.generateSample=u)},null,8,["modelValue"])]),t("p",Ye,s(e.$t("fish.description.generateSample")),1)])]),t("div",Je,[i($,{type:"primary",class:"btn w-full",round:"",disabled:!e.canCreate||e.creating,loading:e.creating,onClick:e.onCreate},{default:a(()=>[i(d,{icon:"fa-solid fa-magic",class:"mr-2"}),m(" "+s(e.$t("fish.button.createModel")),1)]),_:1},8,["disabled","loading","onClick"])])])}const Ze=k(ve,[["render",Ke],["__scopeId","data-v-d8fc0e55"]]),Qe=U({name:"FishVoiceCard",components:{ElAlert:K,ElButton:S,ElImage:J,CopyToClipboard:Y,FontAwesomeIcon:R},props:{modelValue:{type:Object,required:!0}},computed:{sampleAudioUrl(){const e=this.modelValue?.samples;if(e?.length)return e[0]?.audio},voiceId(){const e=this.modelValue;return(e?.id||e?._id||e?.reference_id||"").toString()},coverSrc(){const e=this.modelValue?.cover_image;return e&&typeof e=="string"?e:void 0},createdAtLabel(){const e=this.modelValue?.created_at;if(e==null||e==="")return null;const o=typeof e=="number"?e:parseFloat(String(e));return!Number.isFinite(o)||o<=0?null:this.$dayjs.format(""+new Date(o*1e3))}},methods:{onUseVoice(){const e=this.voiceId;e&&(this.$store.commit("fish/setConfig",{...this.$store.state.fish?.config,reference_id:e}),this.$router.push({name:B}))}}}),We={class:"card"},xe={class:"left"},eo={class:"main"},oo={class:"header"},to={class:"title"},so={key:0,class:"datetime"},io={key:0,class:"description"},ro={key:1,class:"sample mt-2"},ao=["src"],no={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-2"},lo={key:1,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},co={class:"operations mt-2"};function mo(e,o,v,h,y,_){const c=n("el-image"),d=n("font-awesome-icon"),$=n("copy-to-clipboard"),g=n("el-alert"),C=n("el-button");return r(),l("div",We,[t("div",xe,[e.coverSrc?(r(),b(c,{key:0,src:e.coverSrc,class:"cover",fit:"cover"},{error:a(()=>[i(c,{src:"https://cdn.acedata.cloud/e40fccc727.png",class:"cover fallback",fit:"cover"})]),placeholder:a(()=>[...o[0]||(o[0]=[t("div",{class:"cover placeholder"},null,-1)])]),_:1},8,["src"])):(r(),b(c,{key:1,src:"https://cdn.acedata.cloud/e40fccc727.png",class:"cover fallback",fit:"cover"}))]),t("div",eo,[t("div",oo,[t("span",to,s(e.modelValue?.title||e.$t("fish.name.untitledVoice")),1),e.createdAtLabel?(r(),l("span",so,s(e.createdAtLabel),1)):f("",!0)]),e.modelValue?.description?(r(),l("p",io,s(e.modelValue?.description),1)):f("",!0),e.sampleAudioUrl?(r(),l("div",ro,[t("audio",{src:e.sampleAudioUrl,controls:"",preload:"metadata",class:"w-full"},null,8,ao)])):f("",!0),i(g,{closable:!1,class:"mt-2 success"},{default:a(()=>[e.voiceId?(r(),l("p",no,[i(d,{icon:"fa-solid fa-microphone",class:"mr-1"}),m(" "+s(e.$t("fish.name.referenceId"))+": "+s(e.voiceId)+" ",1),i($,{content:e.voiceId},null,8,["content"])])):f("",!0),e.modelValue?.visibility?(r(),l("p",lo,[i(d,{icon:"fa-solid fa-eye",class:"mr-1"}),m(" "+s(e.$t("fish.name.visibility"))+": "+s(e.modelValue?.visibility),1)])):f("",!0)]),_:1}),t("div",co,[i(C,{type:"primary",size:"small",plain:"",disabled:!e.voiceId,onClick:O(e.onUseVoice,["stop"])},{default:a(()=>[i(d,{icon:"fa-solid fa-volume-high",class:"mr-1"}),m(" "+s(e.$t("fish.button.useVoice")),1)]),_:1},8,["disabled","onClick"])])])])}const uo=k(Qe,[["render",mo],["__scopeId","data-v-629e2d04"]]),po=U({name:"FishModelListPanel",components:{VoiceCard:uo,BotPlaceholder:Z,FontAwesomeIcon:R},props:{loading:{type:Boolean,default:!1}},computed:{voices(){return this.$store.state.fish?.voices}}}),fo={class:"model-list-panel flex flex-col h-full"},ho={class:"header"},vo={class:"title"},$o={key:0,class:"count"},go={class:"body flex-1 min-h-0"},_o={key:0,class:"h-full"},bo={key:1,class:"w-full h-full flex flex-col items-center justify-center text-center px-6"},yo={class:"empty-title"},wo={class:"empty-hint"},ko={key:2,class:"w-full h-full overflow-y-auto pr-1"};function Uo(e,o,v,h,y,_){const c=n("bot-placeholder"),d=n("font-awesome-icon"),$=n("voice-card");return r(),l("div",fo,[t("header",ho,[t("h2",vo,s(e.$t("fish.title.myVoices")),1),e.voices?.length?(r(),l("span",$o,s(e.voices?.length),1)):f("",!0)]),t("div",go,[e.voices===void 0?(r(),l("div",_o,[i(c)])):e.voices.length===0?(r(),l("div",bo,[i(d,{icon:"fa-solid fa-microphone-lines",class:"empty-icon"}),t("p",yo,s(e.$t("fish.title.noVoicesYet")),1),t("p",wo,s(e.$t("fish.description.noVoicesYet")),1)])):(r(),l("div",ko,[(r(!0),l(N,null,P(e.voices,g=>(r(),b($,{key:g.id,"model-value":g},null,8,["model-value"]))),128))]))])])}const Ro=k(po,[["render",Uo],["__scopeId","data-v-4aab2294"]]),Co=U({name:"FishModelIndex",components:{ModelConfigPanel:Ze,Layout:A,ModelListPanel:Ro,TabSwitcher:Q},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){const o=this.credential?.token;if(!o){console.error("no token specified");return}this.loading=!0,p.info(this.$t("fish.message.creatingModel"));try{await L.createModel(e,{token:o}),p.success(this.$t("fish.message.createModelSuccess")),await this.onGetVoices()}catch(v){const h=v?.response?.data;h?.error?.code===W?p.error(this.$t("fish.message.usedUp")):p.error(h?.error?.message||this.$t("fish.message.createModelFailed"))}finally{this.loading=!1}}}}),So={class:"flex flex-col h-full"},Vo={class:"flex-1 min-h-0"};function Eo(e,o,v,h,y,_){const c=n("tab-switcher"),d=n("model-config-panel"),$=n("model-list-panel"),g=n("layout");return r(),b(g,null,{config:a(()=>[t("div",So,[i(c),t("div",Vo,[i(d,{onCreate:e.onCreate},null,8,["onCreate"])])])]),result:a(()=>[i($,{loading:e.loading},null,8,["loading"])]),_:1})}const ht=k(Co,[["render",Eo]]);export{ht as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.avatar[data-v-b0beddd3]{width:35px;height:35px;max-width:initial;max-height:initial;border-radius:50%;-o-object-fit:cover;object-fit:cover;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.avatar[data-v-b0beddd3]:hover{box-shadow:0 0 0 2px var(--el-color-primary-light-5)}.github-link[data-v-4ba8d533]{display:inline-flex;align-items:center;color:var(--el-text-color-regular);text-decoration:none;transition:color .3s}.github-link .icon[data-v-4ba8d533]{font-size:18px}.github-link[data-v-4ba8d533]:hover{color:var(--el-color-primary)}.hint[data-v-a058f162]{font-size:12px;color:var(--el-text-color-secondary);line-height:1.5;margin:4px 0 0}.current-key[data-v-a058f162]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 0;font-size:12px;color:var(--el-text-color-secondary)}.current-key code[data-v-a058f162]{color:var(--el-text-color-primary)}.w-full[data-v-a058f162]{width:100%}.provider-option[data-v-a058f162]{display:flex;flex-direction:column;line-height:1.3;gap:2px}.provider-name[data-v-a058f162]{font-size:14px;color:var(--el-text-color-primary)}.provider-desc[data-v-a058f162]{font-size:12px;color:var(--el-text-color-secondary)}.test-result[data-v-a058f162]{margin:4px 0 0;padding:12px 14px;border-radius:6px;border:1px solid transparent;font-size:13px;line-height:1.5}.test-result.ok[data-v-a058f162]{background:var(--el-color-success-light-9, #f0f9eb);border-color:var(--el-color-success-light-7, #b3e19d);color:var(--el-color-success-dark-2, #5daf34)}.test-result.fail[data-v-a058f162]{background:var(--el-color-danger-light-9, #fef0f0);border-color:var(--el-color-danger-light-7, #fab6b6);color:var(--el-color-danger-dark-2, #b94343)}.test-result-title[data-v-a058f162]{margin:0 0 6px;font-weight:600}.test-result-detail[data-v-a058f162]{display:grid;grid-template-columns:minmax(72px,max-content) 1fr;-moz-column-gap:12px;column-gap:12px;row-gap:4px;margin:0}.test-result-detail dt[data-v-a058f162]{color:var(--el-text-color-regular);font-weight:500}.test-result-detail dd[data-v-a058f162]{margin:0;word-break:break-all;color:var(--el-text-color-primary)}.test-result-detail code[data-v-a058f162]{font-size:12px;background:#0000000a;padding:1px 6px;border-radius:4px}.byok-provider-select-popper .el-select-dropdown__item{height:auto;line-height:1.4;padding-top:8px;padding-bottom:8px}.byok[data-v-4e5854a0]{display:flex;flex-direction:column;gap:12px}.byok-intro-tip[data-v-4e5854a0]{font-size:12px;color:var(--el-text-color-secondary);line-height:1.6;margin:0}.byok-actions[data-v-4e5854a0]{display:flex;justify-content:flex-end}.byok-table[data-v-4e5854a0]{width:100%}.byok-table[data-v-4e5854a0] .cell{word-break:break-word}.edit-dialog .edit-body{width:100%;display:flex;justify-content:center}.vue-advanced-cropper{text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;max-height:100%;max-width:100%;direction:ltr}.vue-advanced-cropper__stretcher{pointer-events:none;position:relative;max-width:100%;max-height:100%}.vue-advanced-cropper__image{-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute;transform-origin:center;max-width:none!important}.vue-advanced-cropper__background,.vue-advanced-cropper__foreground{opacity:1;background:#000;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%}.vue-advanced-cropper__foreground{opacity:.5}.vue-advanced-cropper__boundaries{opacity:1;transform:translate(-50%,-50%);position:absolute;left:50%;top:50%}.vue-advanced-cropper__cropper-wrapper{width:100%;height:100%}.vue-advanced-cropper__image-wrapper{overflow:hidden;position:absolute;width:100%;height:100%}.vue-advanced-cropper__stencil-wrapper{position:absolute}.vue-simple-handler{display:block;background:#fff;height:10px;width:10px}.vue-handler-wrapper{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px}.vue-handler-wrapper__draggable{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.vue-handler-wrapper--west-north{cursor:nw-resize}.vue-handler-wrapper--north{cursor:n-resize}.vue-handler-wrapper--east-north{cursor:ne-resize}.vue-handler-wrapper--east{cursor:e-resize}.vue-handler-wrapper--east-south{cursor:se-resize}.vue-handler-wrapper--south{cursor:s-resize}.vue-handler-wrapper--west-south{cursor:sw-resize}.vue-handler-wrapper--west{cursor:w-resize}.vue-handler-wrapper--disabled{cursor:auto}.vue-line-wrapper{background:none;position:absolute;display:flex;align-items:center;justify-content:center}.vue-line-wrapper--north,.vue-line-wrapper--south{height:12px;width:100%;left:0;transform:translateY(-50%)}.vue-line-wrapper--north{top:0;cursor:n-resize}.vue-line-wrapper--south{top:100%;cursor:s-resize}.vue-line-wrapper--east,.vue-line-wrapper--west{width:12px;height:100%;transform:translate(-50%);top:0}.vue-line-wrapper--east{left:100%;cursor:e-resize}.vue-line-wrapper--west{left:0;cursor:w-resize}.vue-line-wrapper--disabled{cursor:auto}.vue-bounding-box{position:relative;height:100%;width:100%}.vue-bounding-box__handler{position:absolute}.vue-bounding-box__handler--west-north{left:0;top:0}.vue-bounding-box__handler--north{left:50%;top:0}.vue-bounding-box__handler--east-north{left:100%;top:0}.vue-bounding-box__handler--east{left:100%;top:50%}.vue-bounding-box__handler--east-south{left:100%;top:100%}.vue-bounding-box__handler--south{left:50%;top:100%}.vue-bounding-box__handler--west-south{left:0;top:100%}.vue-bounding-box__handler--west{left:0;top:50%}.vue-draggable-area{position:relative}.vue-preview-result{overflow:hidden;box-sizing:border-box;position:absolute;height:100%;width:100%}.vue-preview-result__wrapper{position:absolute}.vue-preview-result__image{pointer-events:none;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform-origin:center;max-width:none!important}.vue-rectangle-stencil{position:absolute;height:100%;width:100%;box-sizing:border-box}.vue-rectangle-stencil__preview{position:absolute;width:100%;height:100%}.vue-rectangle-stencil--movable{cursor:move}.vue-circle-stencil{position:absolute;height:100%;width:100%;box-sizing:content-box;cursor:move}.vue-circle-stencil__preview{border-radius:50%;position:absolute;width:100%;height:100%}.vue-circle-stencil--movable{cursor:move}.vue-preview{overflow:hidden;box-sizing:border-box;position:relative}.vue-preview--fill{width:100%;height:100%;position:absolute}.vue-preview__wrapper{position:absolute;height:100%;width:100%}.vue-preview__image{pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform-origin:center;max-width:none!important}.vue-simple-line{background:none;transition:border .5s;border-color:#ffffff4d;border-width:0;border-style:solid}.vue-simple-line--south,.vue-simple-line--north{height:0;width:100%}.vue-simple-line--east,.vue-simple-line--west{height:100%;width:0}.vue-simple-line--east{border-right-width:1px}.vue-simple-line--west{border-left-width:1px}.vue-simple-line--south{border-bottom-width:1px}.vue-simple-line--north{border-top-width:1px}.vue-simple-line--hover{opacity:1;border-color:#fff}.cropper-shell[data-v-457c9f79]{display:flex;flex-direction:column;gap:12px}.cropper-shell .cropper[data-v-457c9f79]{width:100%;height:360px;background-color:#fafafa;background-image:linear-gradient(45deg,#d8d8d8 25%,transparent 25%),linear-gradient(-45deg,#d8d8d8 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d8d8d8 75%),linear-gradient(-45deg,transparent 75%,#d8d8d8 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,8px 0;border-radius:8px;overflow:hidden}.cropper-shell .toolbar[data-v-457c9f79]{display:flex;justify-content:center}.cropper-shell .toolbar[data-v-457c9f79] .el-button{min-width:56px;height:44px;padding:0 18px}.cropper-shell .toolbar[data-v-457c9f79] .el-button .el-icon{font-size:22px}.dropzone[data-v-457c9f79]{height:360px;border:2px dashed var(--el-border-color);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:border-color .2s ease,background .2s ease}.dropzone[data-v-457c9f79]:hover{border-color:var(--el-color-primary);background:var(--el-fill-color-light)}.dropzone .dropzone-icon[data-v-457c9f79]{font-size:36px;color:var(--el-text-color-secondary)}.dropzone .dropzone-text[data-v-457c9f79]{margin:0;font-size:14px;color:var(--el-text-color-primary)}.dropzone .dropzone-hint[data-v-457c9f79]{margin:0;font-size:12px;color:var(--el-text-color-secondary)}.edit[data-v-a74791d4]{cursor:pointer;margin-left:5px;position:relative;top:2px}.edit .icon[data-v-a74791d4]{font-size:14px}.user-chip[data-v-380498e3]{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:13px;line-height:1.4;color:var(--el-text-color-regular)}.user-chip.is-empty[data-v-380498e3]{color:var(--el-text-color-secondary)}.user-chip.is-missing[data-v-380498e3]{color:var(--el-text-color-secondary);font-style:italic}.user-chip .user-chip__avatar[data-v-380498e3]{flex-shrink:0}.user-chip .user-chip__name[data-v-380498e3]{font-weight:500;white-space:nowrap}.user-chip .user-chip__icon[data-v-380498e3]{font-size:14px;color:var(--el-text-color-secondary);flex-shrink:0}.user-chip .user-chip__contact[data-v-380498e3]{color:var(--el-text-color-secondary);font-size:12px;font-family:var(--el-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);white-space:nowrap}.user-chip .user-chip__id[data-v-380498e3]{font-family:var(--el-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:12px}.user-picker__option[data-v-9477c0da]{display:flex;align-items:center;gap:10px;padding:4px 0}.user-picker__option--empty[data-v-9477c0da]{color:var(--el-text-color-secondary);font-size:13px;cursor:default}.user-picker__option--excluded[data-v-9477c0da]{cursor:not-allowed;opacity:.6}.user-picker__empty-icon[data-v-9477c0da]{font-size:14px;color:var(--el-color-warning);flex-shrink:0}.user-picker__empty-text[data-v-9477c0da]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-picker__excluded-tag[data-v-9477c0da]{flex-shrink:0;margin-inline-start:6px;padding:2px 6px;font-size:11px;border-radius:4px;background:var(--el-fill-color-light);color:var(--el-text-color-secondary);line-height:1.4}.user-picker__avatar[data-v-9477c0da]{flex-shrink:0}.user-picker__option-text[data-v-9477c0da]{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.user-picker__option-name[data-v-9477c0da]{display:flex;align-items:center;gap:6px;font-weight:500;font-size:14px;color:var(--el-text-color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-picker__option-contact[data-v-9477c0da]{font-size:12px;font-family:var(--el-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);color:var(--el-text-color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-picker__popper .el-autocomplete-suggestion__list{max-height:320px}.user-picker__popper .el-autocomplete-suggestion li{height:auto;line-height:1.4;padding:6px 12px}.edit[data-v-8e61041c]{cursor:pointer;margin-left:5px;position:relative;top:2px}.edit .icon[data-v-8e61041c]{font-size:14px}.edit-body[data-v-8e61041c]{display:flex;flex-direction:column;gap:8px;width:100%}.empty[data-v-8e61041c]{display:flex;align-items:center;justify-content:center;min-height:36px;padding:8px;border:1px dashed var(--el-border-color);border-radius:6px;background:var(--el-fill-color-light)}.empty .empty-text[data-v-8e61041c]{color:var(--el-text-color-secondary);font-size:13px}.chip-list[data-v-8e61041c]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.chip-item[data-v-8e61041c]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border:1px solid var(--el-border-color-lighter);border-radius:6px;background:var(--el-fill-color-blank)}.chip-item .chip-remove[data-v-8e61041c]{cursor:pointer;color:var(--el-text-color-secondary);font-size:14px}.chip-item .chip-remove[data-v-8e61041c]:hover{color:var(--el-color-danger)}.divider[data-v-8e61041c]{margin:4px 0}.tip[data-v-8e61041c]{margin:0;font-size:12px;color:var(--el-text-color-secondary)}.error[data-v-8e61041c]{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;color:var(--el-color-danger)}.error .error-icon[data-v-8e61041c]{font-size:14px}.dialog-footer[data-v-8e61041c]{display:flex;justify-content:center;gap:12px;width:100%}.auto-translate-toggle[data-v-35987dae]{width:26px;height:26px;padding:0;margin-left:6px}.auto-translate-toggle .icon-wrap[data-v-35987dae]{position:relative;display:inline-flex;align-items:center;justify-content:center;font-size:13px}.auto-translate-toggle.is-off[data-v-35987dae]{color:var(--el-text-color-secondary)}.auto-translate-toggle .dot[data-v-35987dae]{position:absolute;top:-2px;right:-3px;width:6px;height:6px;border-radius:50%;background:var(--el-color-success);box-shadow:0 0 0 1px var(--el-color-white)}.setting-notice[data-v-82101c68]{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:12px;line-height:1.5;border-radius:8px;background:var(--el-color-info-light-9);border:1px solid var(--el-color-info-light-7);color:var(--el-text-color-regular)}.setting-notice .icon[data-v-82101c68]{flex-shrink:0;font-size:13px;color:var(--el-color-info)}.setting-notice .text[data-v-82101c68]{flex:1;word-break:break-word}.setting-notice.admin[data-v-82101c68]{background:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-7)}.setting-notice.admin .icon[data-v-82101c68]{color:var(--el-color-primary)}.setting-notice.official[data-v-82101c68]{background:var(--el-color-success-light-9);border-color:var(--el-color-success-light-7)}.setting-notice.official .icon[data-v-82101c68]{color:var(--el-color-success)}.settings-media[data-v-93b52d3a]{max-width:120px;border-radius:8px;background-color:var(--el-fill-color-light)}.settings-actions[data-v-93b52d3a]{display:inline-flex;align-items:center;gap:4px}.favicon[data-v-93b52d3a]{max-width:64px}.admins-list[data-v-93b52d3a]{display:flex;flex-direction:column;align-items:flex-end;gap:4px;max-width:100%}.admins-chip[data-v-93b52d3a]{max-width:100%}.primary-color-content[data-v-93b52d3a]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.primary-color-content .primary-color-value[data-v-93b52d3a]{font-family:var(--el-font-family-monospace, "SFMono-Regular", Menlo, Consolas, monospace);font-size:13px;color:var(--el-text-color-regular);text-transform:uppercase}@media(max-width:640px){.admins-list[data-v-93b52d3a]{align-items:flex-start}}.edit{cursor:pointer;margin-left:5px;position:relative;top:2px}.edit .icon{font-size:14px}.tip{color:var(--el-text-color-secondary);font-size:12px}.edit-dialog .el-dialog__header{display:flex;justify-content:center;position:relative;padding-right:48px}.edit-dialog .el-dialog__title{width:100%;text-align:center;font-weight:600}.edit-dialog .el-dialog__headerbtn{position:absolute;right:16px;top:50%;transform:translateY(-50%)}.edit-dialog .el-dialog__body{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.edit-dialog .edit-body{width:100%;display:flex;flex-direction:column;align-items:center}.edit-dialog .tags{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;width:100%}.edit-dialog .el-input{max-width:320px}.edit-dialog .dialog-footer{display:flex;justify-content:center;gap:12px;width:100%}.settings-actions[data-v-591c4e4a]{display:inline-flex;align-items:center;gap:4px}.edit[data-v-0a406628]{cursor:pointer;margin-left:5px;position:relative;top:2px}.edit .icon[data-v-0a406628]{font-size:14px}.edit-body[data-v-0a406628]{display:flex;flex-direction:column;gap:12px;width:100%}.tip[data-v-0a406628]{margin:0;font-size:12px;color:var(--el-text-color-secondary)}.preview[data-v-0a406628]{display:flex;align-items:center;gap:8px;min-height:32px;padding:8px 10px;border:1px dashed var(--el-border-color);border-radius:6px;background:var(--el-fill-color-light)}.dialog-footer[data-v-0a406628]{display:flex;justify-content:center;gap:12px;width:100%}.settings-nested[data-v-9966a834]{display:flex;flex-direction:column;align-items:flex-end;gap:12px;width:100%}.settings-subitem[data-v-9966a834]{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.settings-sub-label[data-v-9966a834]{font-weight:600;color:var(--el-text-color-primary)}.settings-media[data-v-9966a834]{max-width:120px;border-radius:8px;background-color:var(--el-fill-color-light)}@media(max-width:640px){.settings-nested[data-v-9966a834],.settings-subitem[data-v-9966a834]{align-items:flex-start}}.subsite-settings[data-v-cd256aad]{display:flex;flex-direction:column;gap:12px}.subsite-settings .header[data-v-cd256aad]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.subsite-settings .header .settings-title[data-v-cd256aad]{font-weight:600;font-size:14px;margin:0 0 4px}.subsite-settings .header .settings-tip[data-v-cd256aad]{font-size:12px;color:var(--el-text-color-secondary);margin:0}.subsite-settings .list-card[data-v-cd256aad]{border:1px solid var(--el-border-color-lighter)}.subsite-settings .origin-link[data-v-cd256aad]{color:var(--el-color-primary);text-decoration:none;word-break:break-all}.subsite-settings .origin-link[data-v-cd256aad]:hover{text-decoration:underline}.subsite-settings .domain-list[data-v-cd256aad]{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.subsite-settings .domain-list .origin-link.primary[data-v-cd256aad]{font-weight:500}.subsite-settings .domain-list .custom-domain[data-v-cd256aad]{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:1.4}.subsite-settings .domain-list .custom-domain .hostname[data-v-cd256aad]{word-break:break-all}.subsite-settings .domain-list .custom-domain.muted[data-v-cd256aad]{color:var(--el-text-color-secondary)}.subsite-settings .domain-list .custom-domain.origin-link[data-v-cd256aad]{font-weight:400}.subsite-settings .row-title[data-v-cd256aad]{margin-top:4px;font-size:12px;color:var(--el-text-color-secondary);line-height:1.4}.subsite-settings .row-actions[data-v-cd256aad]{display:inline-flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.subsite-settings .subsite-table[data-v-cd256aad] .el-button+.el-button{margin-left:0}.subsite-settings .form .hint[data-v-cd256aad]{display:block;color:var(--el-text-color-secondary);font-size:12px;margin-top:4px}.open-dialog[data-v-cd256aad] .el-dialog{max-width:calc(100vw - 32px)}.open-dialog[data-v-cd256aad] .open-hint{margin:0 0 16px;font-size:13px;line-height:1.5;color:var(--el-text-color-regular)}.open-dialog[data-v-cd256aad] .open-actions{display:flex;flex-direction:column;gap:10px}.open-dialog[data-v-cd256aad] .open-actions .el-button{width:100%;margin-left:0}.open-dialog[data-v-cd256aad] .open-actions .el-button+.el-button{margin-left:0}.custom-domain-settings[data-v-7f4322af]{display:flex;flex-direction:column;gap:12px}.custom-domain-settings .header .settings-title[data-v-7f4322af]{font-weight:600;font-size:14px;margin:0 0 4px}.custom-domain-settings .header .settings-tip[data-v-7f4322af]{font-size:12px;color:var(--el-text-color-secondary);line-height:1.6;margin:0}.custom-domain-settings .domains-body[data-v-7f4322af]{padding:4px 0 0}.custom-domain-settings[data-v-7f4322af] .el-empty{padding:8px 0 16px}.custom-domain-settings[data-v-7f4322af] .el-empty .el-empty__description{margin-top:8px;font-size:13px;color:var(--el-text-color-secondary)}.custom-domain-settings .domain-row[data-v-7f4322af]{border:1px solid var(--el-border-color-lighter);border-radius:12px;padding:16px 18px;margin-bottom:14px;background:var(--el-fill-color-blank);transition:border-color .15s ease}.custom-domain-settings .domain-row[data-v-7f4322af]:hover{border-color:var(--el-border-color)}.custom-domain-settings .domain-row .domain-row-head[data-v-7f4322af]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.custom-domain-settings .domain-row .domain-row-head .hostname[data-v-7f4322af]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;flex:1 1 auto;word-break:break-all;font-size:14px}.custom-domain-settings .domain-row .domain-row-head .status-tag[data-v-7f4322af]{flex:0 0 auto}.custom-domain-settings .domain-row .domain-row-head .row-actions[data-v-7f4322af]{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.custom-domain-settings .domain-row .status-reason[data-v-7f4322af]{margin-top:10px;font-size:12px;color:var(--el-color-danger)}.custom-domain-settings .domain-row .dns-instructions[data-v-7f4322af]{margin-top:14px;padding-top:14px;border-top:1px dashed var(--el-border-color-lighter)}.custom-domain-settings .domain-row .dns-instructions .instructions[data-v-7f4322af]{margin:0 0 10px;color:var(--el-text-color-regular);font-size:13px;line-height:1.6}.custom-domain-settings .domain-row .dns-instructions .dns-record[data-v-7f4322af]{width:100%;border-collapse:collapse;font-size:12px}.custom-domain-settings .domain-row .dns-instructions .dns-record th[data-v-7f4322af]{text-align:left;width:110px;color:var(--el-text-color-secondary);font-weight:400;padding:6px 10px 6px 0;vertical-align:top}.custom-domain-settings .domain-row .dns-instructions .dns-record td[data-v-7f4322af]{padding:6px 0}.custom-domain-settings .domain-row .dns-instructions .dns-record td code[data-v-7f4322af]{background:var(--el-fill-color-lighter);padding:3px 8px;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.custom-domain-settings .domain-row .dns-instructions .dns-record td code.break[data-v-7f4322af]{word-break:break-all}.custom-domain-settings .domain-row .dns-instructions .record-name-hint[data-v-7f4322af]{margin:10px 0 0;font-size:12px;line-height:1.55;color:var(--el-text-color-secondary)}.custom-domain-settings .bind-title[data-v-7f4322af]{font-size:14px;margin:4px 0 14px;color:var(--el-text-color-primary);font-weight:600}.custom-domain-settings .form .form-tip[data-v-7f4322af]{display:block;margin-top:6px;font-size:12px;color:var(--el-text-color-secondary);line-height:1.5}.custom-domain-settings[data-v-7f4322af] .el-divider{margin:20px 0}[data-v-509835d2] .settings-item .settings-label{flex:1 1 0;min-width:0}.auth-providers-content[data-v-509835d2]{align-items:stretch;flex:0 0 auto}.auth-providers-list[data-v-509835d2]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;min-width:220px}.auth-providers-row[data-v-509835d2]{display:flex;align-items:center;justify-content:space-between;padding:6px 0}.auth-providers-row+.auth-providers-row[data-v-509835d2]{border-top:1px solid var(--el-border-color-lighter)}.auth-providers-row__label[data-v-509835d2]{font-size:14px;color:var(--el-text-color-primary)}.auth-default-provider-select[data-v-509835d2]{min-width:240px}.about-link[data-v-18bb2d15]{display:inline-flex;align-items:center;gap:6px;color:var(--el-text-color-regular);text-decoration:none;transition:color .3s;font-size:14px}.about-link .icon[data-v-18bb2d15]{font-size:18px}.about-link[data-v-18bb2d15]:hover{color:var(--el-color-primary)}[data-v-055ce4a5] .settings-list{display:flex;flex-direction:column;gap:18px}[data-v-055ce4a5] .settings-menu .el-menu-item{white-space:normal;height:auto;line-height:1.4;padding-top:10px;padding-bottom:10px}[data-v-055ce4a5] .settings-menu .el-menu-item .el-menu-item__content{display:flex;align-items:flex-start;gap:8px;word-break:break-word}[data-v-055ce4a5] .settings-menu .el-menu-item .svg-inline--fa{margin-top:2px}[data-v-055ce4a5] .settings-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--el-border-color-lighter) 40%,transparent)}[data-v-055ce4a5] .settings-item:last-child{border-bottom:none;padding-bottom:0}[data-v-055ce4a5] .settings-label{display:flex;flex-direction:column;gap:4px;color:var(--el-text-color-primary)}[data-v-055ce4a5] .settings-title{font-weight:600;font-size:14px}[data-v-055ce4a5] .settings-tip{font-size:12px;color:var(--el-text-color-secondary);line-height:1.5;max-width:440px}[data-v-055ce4a5] .settings-content{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:200px;text-align:right}[data-v-055ce4a5] .settings-value{color:var(--el-text-color-regular);word-break:break-word}@media(max-width:640px){[data-v-055ce4a5] .settings-item{flex-direction:column;align-items:flex-start}[data-v-055ce4a5] .settings-content{align-items:flex-start;text-align:left;width:100%}}[data-v-055ce4a5] .settings-dialog.is-mobile .el-dialog__body{padding:0 8px 16px}[data-v-055ce4a5] .settings-menu.is-mobile{border-bottom:none;padding:4px 0;height:auto;white-space:nowrap}[data-v-055ce4a5] .settings-menu.is-mobile .el-menu-item{height:36px;line-height:36px;border-bottom:none!important;border-radius:6px;margin:0 4px;padding:0 10px!important}[data-v-055ce4a5] .settings-menu.is-mobile .el-menu-item.active,[data-v-055ce4a5] .settings-menu.is-mobile .el-menu-item.is-active{background:var(--el-color-primary-light-9);color:var(--el-color-primary)}.navigator[data-v-b94ad8cf]{display:flex;align-items:center;position:relative;background-color:var(--app-nav-bg);border-right:1px solid var(--app-border-subtle)}.navigator .top .avatar[data-v-b94ad8cf]{display:block;width:28px;height:28px;border-radius:50%;cursor:pointer;flex-shrink:0}.navigator .category-header[data-v-b94ad8cf]{display:none}.navigator[direction=row][data-v-b94ad8cf]{flex-direction:row;overflow-x:scroll;border-right:none;border-top:1px solid var(--app-border-subtle)}.navigator[direction=row] .brand[data-v-b94ad8cf]{display:none}.navigator[direction=row] .top[data-v-b94ad8cf]{padding-left:10px;display:flex;flex-direction:row;align-items:center;gap:10px;justify-content:space-evenly}.navigator[direction=row] .top .links[data-v-b94ad8cf]{display:flex;flex-direction:row;align-items:center;gap:10px}.navigator[direction=row] .top .links .link[data-v-b94ad8cf]{text-align:center}.navigator[direction=row] .top .links .link .description[data-v-b94ad8cf]{font-size:10px;margin-top:3px}.navigator[direction=row] .top .links .link.active[data-v-b94ad8cf]{color:var(--el-color-primary)}.navigator[direction=row] .bottom[data-v-b94ad8cf]{padding:0 10px;display:flex;flex:1;justify-content:flex-end}.navigator[direction=column][data-v-b94ad8cf]{flex-direction:column;width:60px}.navigator[direction=column] .brand[data-v-b94ad8cf]{display:flex;justify-content:center;align-items:center;padding:10px 0;width:100%}.navigator[direction=column] .top[data-v-b94ad8cf]{flex:1;display:flex;flex-direction:column;padding-top:0;width:100%;min-height:0;overflow:hidden}.navigator[direction=column] .top .links[data-v-b94ad8cf]{flex:1;min-height:0;display:flex;flex-direction:column;gap:15px;align-items:center;overflow-y:auto;overflow-x:hidden;padding-bottom:10px}.navigator[direction=column] .top .links[data-v-b94ad8cf]::-webkit-scrollbar{width:4px}.navigator[direction=column] .top .links[data-v-b94ad8cf]::-webkit-scrollbar-track{background:transparent}.navigator[direction=column] .top .links[data-v-b94ad8cf]::-webkit-scrollbar-thumb{background:var(--el-fill-color);border-radius:4px}.navigator[direction=column] .top .link[data-v-b94ad8cf]{display:flex;align-items:center;padding:0;margin:0;justify-content:center;cursor:pointer;background:none!important;color:var(--el-text-color-primary)}.navigator[direction=column] .top .link .avatar[data-v-b94ad8cf]{width:35px;height:35px;border-radius:50%;margin:auto;cursor:pointer;flex-shrink:0}.navigator[direction=column] .top .link .link-label[data-v-b94ad8cf]{display:none}.navigator[direction=column] .top .link.active[data-v-b94ad8cf]:before{display:none}.navigator[direction=column] .top .more-button[data-v-b94ad8cf]{display:flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:50%;background:var(--el-fill-color-light);cursor:pointer;margin:auto;box-shadow:var(--app-shadow-xs);transition:border-radius .2s,background-color .2s,box-shadow .2s}.navigator[direction=column] .top .more-button[data-v-b94ad8cf]:hover{border-radius:35%;background:var(--el-fill-color);box-shadow:var(--app-shadow-sm)}.navigator[direction=column] .top .more-button.active[data-v-b94ad8cf]{box-shadow:0 0 0 2px var(--el-color-primary)}.navigator[direction=column] .top .more-button .folder-preview[data-v-b94ad8cf]{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:1px;width:22px;height:22px}.navigator[direction=column] .top .more-button .folder-preview .folder-icon[data-v-b94ad8cf]{width:10px;height:10px;border-radius:50%}.navigator[direction=column] .bottom[data-v-b94ad8cf]{height:50px;display:flex;flex-direction:column;width:100%;justify-content:flex-end;align-items:center;padding-bottom:10px}html.dark .navigator[data-v-b94ad8cf]{border-right-color:var(--app-glass-border)}.navigator-overflow-popover{padding:6px!important;border-radius:12px!important;-webkit-backdrop-filter:blur(var(--app-glass-blur));backdrop-filter:blur(var(--app-glass-blur))}.navigator-overflow-popover .overflow-menu{max-height:400px;overflow-y:auto}.navigator-overflow-popover .overflow-menu .overflow-item{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;cursor:pointer;transition:background-color .15s}.navigator-overflow-popover .overflow-menu .overflow-item:hover{background:var(--el-fill-color-light)}.navigator-overflow-popover .overflow-menu .overflow-item.active{background:var(--el-color-primary-light-9);color:var(--el-color-primary)}.navigator-overflow-popover .overflow-menu .overflow-item .overflow-avatar{width:24px;height:24px;border-radius:50%;flex-shrink:0}.navigator-overflow-popover .overflow-menu .overflow-item .overflow-name{font-size:13px;color:var(--el-text-color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|
|
1
|
+
.avatar[data-v-b0beddd3]{width:35px;height:35px;max-width:initial;max-height:initial;border-radius:50%;-o-object-fit:cover;object-fit:cover;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.avatar[data-v-b0beddd3]:hover{box-shadow:0 0 0 2px var(--el-color-primary-light-5)}.github-link[data-v-4ba8d533]{display:inline-flex;align-items:center;color:var(--el-text-color-regular);text-decoration:none;transition:color .3s}.github-link .icon[data-v-4ba8d533]{font-size:18px}.github-link[data-v-4ba8d533]:hover{color:var(--el-color-primary)}.hint[data-v-a058f162]{font-size:12px;color:var(--el-text-color-secondary);line-height:1.5;margin:4px 0 0}.current-key[data-v-a058f162]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 0;font-size:12px;color:var(--el-text-color-secondary)}.current-key code[data-v-a058f162]{color:var(--el-text-color-primary)}.w-full[data-v-a058f162]{width:100%}.provider-option[data-v-a058f162]{display:flex;flex-direction:column;line-height:1.3;gap:2px}.provider-name[data-v-a058f162]{font-size:14px;color:var(--el-text-color-primary)}.provider-desc[data-v-a058f162]{font-size:12px;color:var(--el-text-color-secondary)}.test-result[data-v-a058f162]{margin:4px 0 0;padding:12px 14px;border-radius:6px;border:1px solid transparent;font-size:13px;line-height:1.5}.test-result.ok[data-v-a058f162]{background:var(--el-color-success-light-9, #f0f9eb);border-color:var(--el-color-success-light-7, #b3e19d);color:var(--el-color-success-dark-2, #5daf34)}.test-result.fail[data-v-a058f162]{background:var(--el-color-danger-light-9, #fef0f0);border-color:var(--el-color-danger-light-7, #fab6b6);color:var(--el-color-danger-dark-2, #b94343)}.test-result-title[data-v-a058f162]{margin:0 0 6px;font-weight:600}.test-result-detail[data-v-a058f162]{display:grid;grid-template-columns:minmax(72px,max-content) 1fr;-moz-column-gap:12px;column-gap:12px;row-gap:4px;margin:0}.test-result-detail dt[data-v-a058f162]{color:var(--el-text-color-regular);font-weight:500}.test-result-detail dd[data-v-a058f162]{margin:0;word-break:break-all;color:var(--el-text-color-primary)}.test-result-detail code[data-v-a058f162]{font-size:12px;background:#0000000a;padding:1px 6px;border-radius:4px}.byok-provider-select-popper .el-select-dropdown__item{height:auto;line-height:1.4;padding-top:8px;padding-bottom:8px}.byok[data-v-4e5854a0]{display:flex;flex-direction:column;gap:12px}.byok-intro-tip[data-v-4e5854a0]{font-size:12px;color:var(--el-text-color-secondary);line-height:1.6;margin:0}.byok-actions[data-v-4e5854a0]{display:flex;justify-content:flex-end}.byok-table[data-v-4e5854a0]{width:100%}.byok-table[data-v-4e5854a0] .cell{word-break:break-word}.edit-dialog .edit-body{width:100%;display:flex;justify-content:center}.vue-advanced-cropper{text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;max-height:100%;max-width:100%;direction:ltr}.vue-advanced-cropper__stretcher{pointer-events:none;position:relative;max-width:100%;max-height:100%}.vue-advanced-cropper__image{-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute;transform-origin:center;max-width:none!important}.vue-advanced-cropper__background,.vue-advanced-cropper__foreground{opacity:1;background:#000;transform:translate(-50%,-50%);position:absolute;top:50%;left:50%}.vue-advanced-cropper__foreground{opacity:.5}.vue-advanced-cropper__boundaries{opacity:1;transform:translate(-50%,-50%);position:absolute;left:50%;top:50%}.vue-advanced-cropper__cropper-wrapper{width:100%;height:100%}.vue-advanced-cropper__image-wrapper{overflow:hidden;position:absolute;width:100%;height:100%}.vue-advanced-cropper__stencil-wrapper{position:absolute}.vue-simple-handler{display:block;background:#fff;height:10px;width:10px}.vue-handler-wrapper{position:absolute;transform:translate(-50%,-50%);width:30px;height:30px}.vue-handler-wrapper__draggable{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.vue-handler-wrapper--west-north{cursor:nw-resize}.vue-handler-wrapper--north{cursor:n-resize}.vue-handler-wrapper--east-north{cursor:ne-resize}.vue-handler-wrapper--east{cursor:e-resize}.vue-handler-wrapper--east-south{cursor:se-resize}.vue-handler-wrapper--south{cursor:s-resize}.vue-handler-wrapper--west-south{cursor:sw-resize}.vue-handler-wrapper--west{cursor:w-resize}.vue-handler-wrapper--disabled{cursor:auto}.vue-line-wrapper{background:none;position:absolute;display:flex;align-items:center;justify-content:center}.vue-line-wrapper--north,.vue-line-wrapper--south{height:12px;width:100%;left:0;transform:translateY(-50%)}.vue-line-wrapper--north{top:0;cursor:n-resize}.vue-line-wrapper--south{top:100%;cursor:s-resize}.vue-line-wrapper--east,.vue-line-wrapper--west{width:12px;height:100%;transform:translate(-50%);top:0}.vue-line-wrapper--east{left:100%;cursor:e-resize}.vue-line-wrapper--west{left:0;cursor:w-resize}.vue-line-wrapper--disabled{cursor:auto}.vue-bounding-box{position:relative;height:100%;width:100%}.vue-bounding-box__handler{position:absolute}.vue-bounding-box__handler--west-north{left:0;top:0}.vue-bounding-box__handler--north{left:50%;top:0}.vue-bounding-box__handler--east-north{left:100%;top:0}.vue-bounding-box__handler--east{left:100%;top:50%}.vue-bounding-box__handler--east-south{left:100%;top:100%}.vue-bounding-box__handler--south{left:50%;top:100%}.vue-bounding-box__handler--west-south{left:0;top:100%}.vue-bounding-box__handler--west{left:0;top:50%}.vue-draggable-area{position:relative}.vue-preview-result{overflow:hidden;box-sizing:border-box;position:absolute;height:100%;width:100%}.vue-preview-result__wrapper{position:absolute}.vue-preview-result__image{pointer-events:none;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform-origin:center;max-width:none!important}.vue-rectangle-stencil{position:absolute;height:100%;width:100%;box-sizing:border-box}.vue-rectangle-stencil__preview{position:absolute;width:100%;height:100%}.vue-rectangle-stencil--movable{cursor:move}.vue-circle-stencil{position:absolute;height:100%;width:100%;box-sizing:content-box;cursor:move}.vue-circle-stencil__preview{border-radius:50%;position:absolute;width:100%;height:100%}.vue-circle-stencil--movable{cursor:move}.vue-preview{overflow:hidden;box-sizing:border-box;position:relative}.vue-preview--fill{width:100%;height:100%;position:absolute}.vue-preview__wrapper{position:absolute;height:100%;width:100%}.vue-preview__image{pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform-origin:center;max-width:none!important}.vue-simple-line{background:none;transition:border .5s;border-color:#ffffff4d;border-width:0;border-style:solid}.vue-simple-line--south,.vue-simple-line--north{height:0;width:100%}.vue-simple-line--east,.vue-simple-line--west{height:100%;width:0}.vue-simple-line--east{border-right-width:1px}.vue-simple-line--west{border-left-width:1px}.vue-simple-line--south{border-bottom-width:1px}.vue-simple-line--north{border-top-width:1px}.vue-simple-line--hover{opacity:1;border-color:#fff}.cropper-shell[data-v-457c9f79]{display:flex;flex-direction:column;gap:12px}.cropper-shell .cropper[data-v-457c9f79]{width:100%;height:360px;background-color:#fafafa;background-image:linear-gradient(45deg,#d8d8d8 25%,transparent 25%),linear-gradient(-45deg,#d8d8d8 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d8d8d8 75%),linear-gradient(-45deg,transparent 75%,#d8d8d8 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,8px 0;border-radius:8px;overflow:hidden}.cropper-shell .toolbar[data-v-457c9f79]{display:flex;justify-content:center}.cropper-shell .toolbar[data-v-457c9f79] .el-button{min-width:56px;height:44px;padding:0 18px}.cropper-shell .toolbar[data-v-457c9f79] .el-button .el-icon{font-size:22px}.dropzone[data-v-457c9f79]{height:360px;border:2px dashed var(--el-border-color);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:border-color .2s ease,background .2s ease}.dropzone[data-v-457c9f79]:hover{border-color:var(--el-color-primary);background:var(--el-fill-color-light)}.dropzone .dropzone-icon[data-v-457c9f79]{font-size:36px;color:var(--el-text-color-secondary)}.dropzone .dropzone-text[data-v-457c9f79]{margin:0;font-size:14px;color:var(--el-text-color-primary)}.dropzone .dropzone-hint[data-v-457c9f79]{margin:0;font-size:12px;color:var(--el-text-color-secondary)}.edit[data-v-a74791d4]{cursor:pointer;margin-left:5px;position:relative;top:2px}.edit .icon[data-v-a74791d4]{font-size:14px}.user-chip[data-v-380498e3]{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:13px;line-height:1.4;color:var(--el-text-color-regular)}.user-chip.is-empty[data-v-380498e3]{color:var(--el-text-color-secondary)}.user-chip.is-missing[data-v-380498e3]{color:var(--el-text-color-secondary);font-style:italic}.user-chip .user-chip__avatar[data-v-380498e3]{flex-shrink:0}.user-chip .user-chip__name[data-v-380498e3]{font-weight:500;white-space:nowrap}.user-chip .user-chip__icon[data-v-380498e3]{font-size:14px;color:var(--el-text-color-secondary);flex-shrink:0}.user-chip .user-chip__contact[data-v-380498e3]{color:var(--el-text-color-secondary);font-size:12px;font-family:var(--el-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);white-space:nowrap}.user-chip .user-chip__id[data-v-380498e3]{font-family:var(--el-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:12px}.user-picker__option[data-v-9477c0da]{display:flex;align-items:center;gap:10px;padding:4px 0}.user-picker__option--empty[data-v-9477c0da]{color:var(--el-text-color-secondary);font-size:13px;cursor:default}.user-picker__option--excluded[data-v-9477c0da]{cursor:not-allowed;opacity:.6}.user-picker__empty-icon[data-v-9477c0da]{font-size:14px;color:var(--el-color-warning);flex-shrink:0}.user-picker__empty-text[data-v-9477c0da]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-picker__excluded-tag[data-v-9477c0da]{flex-shrink:0;margin-inline-start:6px;padding:2px 6px;font-size:11px;border-radius:4px;background:var(--el-fill-color-light);color:var(--el-text-color-secondary);line-height:1.4}.user-picker__avatar[data-v-9477c0da]{flex-shrink:0}.user-picker__option-text[data-v-9477c0da]{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.user-picker__option-name[data-v-9477c0da]{display:flex;align-items:center;gap:6px;font-weight:500;font-size:14px;color:var(--el-text-color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-picker__option-contact[data-v-9477c0da]{font-size:12px;font-family:var(--el-font-family-mono, ui-monospace, SFMono-Regular, Menlo, monospace);color:var(--el-text-color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-picker__popper .el-autocomplete-suggestion__list{max-height:320px}.user-picker__popper .el-autocomplete-suggestion li{height:auto;line-height:1.4;padding:6px 12px}.edit[data-v-8e61041c]{cursor:pointer;margin-left:5px;position:relative;top:2px}.edit .icon[data-v-8e61041c]{font-size:14px}.edit-body[data-v-8e61041c]{display:flex;flex-direction:column;gap:8px;width:100%}.empty[data-v-8e61041c]{display:flex;align-items:center;justify-content:center;min-height:36px;padding:8px;border:1px dashed var(--el-border-color);border-radius:6px;background:var(--el-fill-color-light)}.empty .empty-text[data-v-8e61041c]{color:var(--el-text-color-secondary);font-size:13px}.chip-list[data-v-8e61041c]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.chip-item[data-v-8e61041c]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border:1px solid var(--el-border-color-lighter);border-radius:6px;background:var(--el-fill-color-blank)}.chip-item .chip-remove[data-v-8e61041c]{cursor:pointer;color:var(--el-text-color-secondary);font-size:14px}.chip-item .chip-remove[data-v-8e61041c]:hover{color:var(--el-color-danger)}.divider[data-v-8e61041c]{margin:4px 0}.tip[data-v-8e61041c]{margin:0;font-size:12px;color:var(--el-text-color-secondary)}.error[data-v-8e61041c]{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;color:var(--el-color-danger)}.error .error-icon[data-v-8e61041c]{font-size:14px}.dialog-footer[data-v-8e61041c]{display:flex;justify-content:center;gap:12px;width:100%}.auto-translate-toggle[data-v-35987dae]{width:26px;height:26px;padding:0;margin-left:6px}.auto-translate-toggle .icon-wrap[data-v-35987dae]{position:relative;display:inline-flex;align-items:center;justify-content:center;font-size:13px}.auto-translate-toggle.is-off[data-v-35987dae]{color:var(--el-text-color-secondary)}.auto-translate-toggle .dot[data-v-35987dae]{position:absolute;top:-2px;right:-3px;width:6px;height:6px;border-radius:50%;background:var(--el-color-success);box-shadow:0 0 0 1px var(--el-color-white)}.setting-notice[data-v-82101c68]{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:12px;line-height:1.5;border-radius:8px;background:var(--el-color-info-light-9);border:1px solid var(--el-color-info-light-7);color:var(--el-text-color-regular)}.setting-notice .icon[data-v-82101c68]{flex-shrink:0;font-size:13px;color:var(--el-color-info)}.setting-notice .text[data-v-82101c68]{flex:1;word-break:break-word}.setting-notice.admin[data-v-82101c68]{background:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-7)}.setting-notice.admin .icon[data-v-82101c68]{color:var(--el-color-primary)}.setting-notice.official[data-v-82101c68]{background:var(--el-color-success-light-9);border-color:var(--el-color-success-light-7)}.setting-notice.official .icon[data-v-82101c68]{color:var(--el-color-success)}.settings-media[data-v-93b52d3a]{max-width:120px;border-radius:8px;background-color:var(--el-fill-color-light)}.settings-actions[data-v-93b52d3a]{display:inline-flex;align-items:center;gap:4px}.favicon[data-v-93b52d3a]{max-width:64px}.admins-list[data-v-93b52d3a]{display:flex;flex-direction:column;align-items:flex-end;gap:4px;max-width:100%}.admins-chip[data-v-93b52d3a]{max-width:100%}.primary-color-content[data-v-93b52d3a]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.primary-color-content .primary-color-value[data-v-93b52d3a]{font-family:var(--el-font-family-monospace, "SFMono-Regular", Menlo, Consolas, monospace);font-size:13px;color:var(--el-text-color-regular);text-transform:uppercase}@media(max-width:640px){.admins-list[data-v-93b52d3a]{align-items:flex-start}}.edit{cursor:pointer;margin-left:5px;position:relative;top:2px}.edit .icon{font-size:14px}.tip{color:var(--el-text-color-secondary);font-size:12px}.edit-dialog .el-dialog__header{display:flex;justify-content:center;position:relative;padding-right:48px}.edit-dialog .el-dialog__title{width:100%;text-align:center;font-weight:600}.edit-dialog .el-dialog__headerbtn{position:absolute;right:16px;top:50%;transform:translateY(-50%)}.edit-dialog .el-dialog__body{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.edit-dialog .edit-body{width:100%;display:flex;flex-direction:column;align-items:center}.edit-dialog .tags{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;width:100%}.edit-dialog .el-input{max-width:320px}.edit-dialog .dialog-footer{display:flex;justify-content:center;gap:12px;width:100%}.settings-actions[data-v-591c4e4a]{display:inline-flex;align-items:center;gap:4px}.edit[data-v-0a406628]{cursor:pointer;margin-left:5px;position:relative;top:2px}.edit .icon[data-v-0a406628]{font-size:14px}.edit-body[data-v-0a406628]{display:flex;flex-direction:column;gap:12px;width:100%}.tip[data-v-0a406628]{margin:0;font-size:12px;color:var(--el-text-color-secondary)}.preview[data-v-0a406628]{display:flex;align-items:center;gap:8px;min-height:32px;padding:8px 10px;border:1px dashed var(--el-border-color);border-radius:6px;background:var(--el-fill-color-light)}.dialog-footer[data-v-0a406628]{display:flex;justify-content:center;gap:12px;width:100%}.settings-nested[data-v-9966a834]{display:flex;flex-direction:column;align-items:flex-end;gap:12px;width:100%}.settings-subitem[data-v-9966a834]{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.settings-sub-label[data-v-9966a834]{font-weight:600;color:var(--el-text-color-primary)}.settings-media[data-v-9966a834]{max-width:120px;border-radius:8px;background-color:var(--el-fill-color-light)}@media(max-width:640px){.settings-nested[data-v-9966a834],.settings-subitem[data-v-9966a834]{align-items:flex-start}}.subsite-settings[data-v-bf34cc89]{display:flex;flex-direction:column;gap:12px}.subsite-settings .header[data-v-bf34cc89]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.subsite-settings .header .settings-title[data-v-bf34cc89]{font-weight:600;font-size:14px;margin:0 0 4px}.subsite-settings .header .settings-tip[data-v-bf34cc89]{font-size:12px;color:var(--el-text-color-secondary);margin:0}.subsite-settings .list-card[data-v-bf34cc89]{border:1px solid var(--el-border-color-lighter)}.subsite-settings .origin-link[data-v-bf34cc89]{color:var(--el-color-primary);text-decoration:none;word-break:break-all}.subsite-settings .origin-link[data-v-bf34cc89]:hover{text-decoration:underline}.subsite-settings .domain-list[data-v-bf34cc89]{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.subsite-settings .domain-list .origin-link.primary[data-v-bf34cc89]{font-weight:500}.subsite-settings .domain-list .custom-domain[data-v-bf34cc89]{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:1.4}.subsite-settings .domain-list .custom-domain .hostname[data-v-bf34cc89]{word-break:break-all}.subsite-settings .domain-list .custom-domain.muted[data-v-bf34cc89]{color:var(--el-text-color-secondary)}.subsite-settings .domain-list .custom-domain.origin-link[data-v-bf34cc89]{font-weight:400}.subsite-settings .row-title[data-v-bf34cc89]{margin-top:4px;font-size:12px;color:var(--el-text-color-secondary);line-height:1.4}.subsite-settings .row-actions[data-v-bf34cc89]{display:inline-flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.subsite-settings .subsite-table[data-v-bf34cc89] .el-button+.el-button{margin-left:0}.subsite-settings .form .hint[data-v-bf34cc89]{display:block;color:var(--el-text-color-secondary);font-size:12px;margin-top:4px}.open-dialog[data-v-bf34cc89] .el-dialog{max-width:calc(100vw - 32px)}.open-dialog[data-v-bf34cc89] .open-hint{margin:0 0 16px;font-size:13px;line-height:1.5;color:var(--el-text-color-regular)}.open-dialog[data-v-bf34cc89] .open-actions{display:flex;flex-direction:column;align-items:center;gap:14px}.open-dialog[data-v-bf34cc89] .open-actions .el-button{min-width:220px;max-width:100%;margin-left:0}.open-dialog[data-v-bf34cc89] .open-actions .el-button+.el-button{margin-left:0}.custom-domain-settings[data-v-7f4322af]{display:flex;flex-direction:column;gap:12px}.custom-domain-settings .header .settings-title[data-v-7f4322af]{font-weight:600;font-size:14px;margin:0 0 4px}.custom-domain-settings .header .settings-tip[data-v-7f4322af]{font-size:12px;color:var(--el-text-color-secondary);line-height:1.6;margin:0}.custom-domain-settings .domains-body[data-v-7f4322af]{padding:4px 0 0}.custom-domain-settings[data-v-7f4322af] .el-empty{padding:8px 0 16px}.custom-domain-settings[data-v-7f4322af] .el-empty .el-empty__description{margin-top:8px;font-size:13px;color:var(--el-text-color-secondary)}.custom-domain-settings .domain-row[data-v-7f4322af]{border:1px solid var(--el-border-color-lighter);border-radius:12px;padding:16px 18px;margin-bottom:14px;background:var(--el-fill-color-blank);transition:border-color .15s ease}.custom-domain-settings .domain-row[data-v-7f4322af]:hover{border-color:var(--el-border-color)}.custom-domain-settings .domain-row .domain-row-head[data-v-7f4322af]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.custom-domain-settings .domain-row .domain-row-head .hostname[data-v-7f4322af]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;flex:1 1 auto;word-break:break-all;font-size:14px}.custom-domain-settings .domain-row .domain-row-head .status-tag[data-v-7f4322af]{flex:0 0 auto}.custom-domain-settings .domain-row .domain-row-head .row-actions[data-v-7f4322af]{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.custom-domain-settings .domain-row .status-reason[data-v-7f4322af]{margin-top:10px;font-size:12px;color:var(--el-color-danger)}.custom-domain-settings .domain-row .dns-instructions[data-v-7f4322af]{margin-top:14px;padding-top:14px;border-top:1px dashed var(--el-border-color-lighter)}.custom-domain-settings .domain-row .dns-instructions .instructions[data-v-7f4322af]{margin:0 0 10px;color:var(--el-text-color-regular);font-size:13px;line-height:1.6}.custom-domain-settings .domain-row .dns-instructions .dns-record[data-v-7f4322af]{width:100%;border-collapse:collapse;font-size:12px}.custom-domain-settings .domain-row .dns-instructions .dns-record th[data-v-7f4322af]{text-align:left;width:110px;color:var(--el-text-color-secondary);font-weight:400;padding:6px 10px 6px 0;vertical-align:top}.custom-domain-settings .domain-row .dns-instructions .dns-record td[data-v-7f4322af]{padding:6px 0}.custom-domain-settings .domain-row .dns-instructions .dns-record td code[data-v-7f4322af]{background:var(--el-fill-color-lighter);padding:3px 8px;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.custom-domain-settings .domain-row .dns-instructions .dns-record td code.break[data-v-7f4322af]{word-break:break-all}.custom-domain-settings .domain-row .dns-instructions .record-name-hint[data-v-7f4322af]{margin:10px 0 0;font-size:12px;line-height:1.55;color:var(--el-text-color-secondary)}.custom-domain-settings .bind-title[data-v-7f4322af]{font-size:14px;margin:4px 0 14px;color:var(--el-text-color-primary);font-weight:600}.custom-domain-settings .form .form-tip[data-v-7f4322af]{display:block;margin-top:6px;font-size:12px;color:var(--el-text-color-secondary);line-height:1.5}.custom-domain-settings[data-v-7f4322af] .el-divider{margin:20px 0}[data-v-509835d2] .settings-item .settings-label{flex:1 1 0;min-width:0}.auth-providers-content[data-v-509835d2]{align-items:stretch;flex:0 0 auto}.auth-providers-list[data-v-509835d2]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;min-width:220px}.auth-providers-row[data-v-509835d2]{display:flex;align-items:center;justify-content:space-between;padding:6px 0}.auth-providers-row+.auth-providers-row[data-v-509835d2]{border-top:1px solid var(--el-border-color-lighter)}.auth-providers-row__label[data-v-509835d2]{font-size:14px;color:var(--el-text-color-primary)}.auth-default-provider-select[data-v-509835d2]{min-width:240px}.about-link[data-v-18bb2d15]{display:inline-flex;align-items:center;gap:6px;color:var(--el-text-color-regular);text-decoration:none;transition:color .3s;font-size:14px}.about-link .icon[data-v-18bb2d15]{font-size:18px}.about-link[data-v-18bb2d15]:hover{color:var(--el-color-primary)}[data-v-055ce4a5] .settings-list{display:flex;flex-direction:column;gap:18px}[data-v-055ce4a5] .settings-menu .el-menu-item{white-space:normal;height:auto;line-height:1.4;padding-top:10px;padding-bottom:10px}[data-v-055ce4a5] .settings-menu .el-menu-item .el-menu-item__content{display:flex;align-items:flex-start;gap:8px;word-break:break-word}[data-v-055ce4a5] .settings-menu .el-menu-item .svg-inline--fa{margin-top:2px}[data-v-055ce4a5] .settings-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--el-border-color-lighter) 40%,transparent)}[data-v-055ce4a5] .settings-item:last-child{border-bottom:none;padding-bottom:0}[data-v-055ce4a5] .settings-label{display:flex;flex-direction:column;gap:4px;color:var(--el-text-color-primary)}[data-v-055ce4a5] .settings-title{font-weight:600;font-size:14px}[data-v-055ce4a5] .settings-tip{font-size:12px;color:var(--el-text-color-secondary);line-height:1.5;max-width:440px}[data-v-055ce4a5] .settings-content{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:200px;text-align:right}[data-v-055ce4a5] .settings-value{color:var(--el-text-color-regular);word-break:break-word}@media(max-width:640px){[data-v-055ce4a5] .settings-item{flex-direction:column;align-items:flex-start}[data-v-055ce4a5] .settings-content{align-items:flex-start;text-align:left;width:100%}}[data-v-055ce4a5] .settings-dialog.is-mobile .el-dialog__body{padding:0 8px 16px}[data-v-055ce4a5] .settings-menu.is-mobile{border-bottom:none;padding:4px 0;height:auto;white-space:nowrap}[data-v-055ce4a5] .settings-menu.is-mobile .el-menu-item{height:36px;line-height:36px;border-bottom:none!important;border-radius:6px;margin:0 4px;padding:0 10px!important}[data-v-055ce4a5] .settings-menu.is-mobile .el-menu-item.active,[data-v-055ce4a5] .settings-menu.is-mobile .el-menu-item.is-active{background:var(--el-color-primary-light-9);color:var(--el-color-primary)}.navigator[data-v-b94ad8cf]{display:flex;align-items:center;position:relative;background-color:var(--app-nav-bg);border-right:1px solid var(--app-border-subtle)}.navigator .top .avatar[data-v-b94ad8cf]{display:block;width:28px;height:28px;border-radius:50%;cursor:pointer;flex-shrink:0}.navigator .category-header[data-v-b94ad8cf]{display:none}.navigator[direction=row][data-v-b94ad8cf]{flex-direction:row;overflow-x:scroll;border-right:none;border-top:1px solid var(--app-border-subtle)}.navigator[direction=row] .brand[data-v-b94ad8cf]{display:none}.navigator[direction=row] .top[data-v-b94ad8cf]{padding-left:10px;display:flex;flex-direction:row;align-items:center;gap:10px;justify-content:space-evenly}.navigator[direction=row] .top .links[data-v-b94ad8cf]{display:flex;flex-direction:row;align-items:center;gap:10px}.navigator[direction=row] .top .links .link[data-v-b94ad8cf]{text-align:center}.navigator[direction=row] .top .links .link .description[data-v-b94ad8cf]{font-size:10px;margin-top:3px}.navigator[direction=row] .top .links .link.active[data-v-b94ad8cf]{color:var(--el-color-primary)}.navigator[direction=row] .bottom[data-v-b94ad8cf]{padding:0 10px;display:flex;flex:1;justify-content:flex-end}.navigator[direction=column][data-v-b94ad8cf]{flex-direction:column;width:60px}.navigator[direction=column] .brand[data-v-b94ad8cf]{display:flex;justify-content:center;align-items:center;padding:10px 0;width:100%}.navigator[direction=column] .top[data-v-b94ad8cf]{flex:1;display:flex;flex-direction:column;padding-top:0;width:100%;min-height:0;overflow:hidden}.navigator[direction=column] .top .links[data-v-b94ad8cf]{flex:1;min-height:0;display:flex;flex-direction:column;gap:15px;align-items:center;overflow-y:auto;overflow-x:hidden;padding-bottom:10px}.navigator[direction=column] .top .links[data-v-b94ad8cf]::-webkit-scrollbar{width:4px}.navigator[direction=column] .top .links[data-v-b94ad8cf]::-webkit-scrollbar-track{background:transparent}.navigator[direction=column] .top .links[data-v-b94ad8cf]::-webkit-scrollbar-thumb{background:var(--el-fill-color);border-radius:4px}.navigator[direction=column] .top .link[data-v-b94ad8cf]{display:flex;align-items:center;padding:0;margin:0;justify-content:center;cursor:pointer;background:none!important;color:var(--el-text-color-primary)}.navigator[direction=column] .top .link .avatar[data-v-b94ad8cf]{width:35px;height:35px;border-radius:50%;margin:auto;cursor:pointer;flex-shrink:0}.navigator[direction=column] .top .link .link-label[data-v-b94ad8cf]{display:none}.navigator[direction=column] .top .link.active[data-v-b94ad8cf]:before{display:none}.navigator[direction=column] .top .more-button[data-v-b94ad8cf]{display:flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:50%;background:var(--el-fill-color-light);cursor:pointer;margin:auto;box-shadow:var(--app-shadow-xs);transition:border-radius .2s,background-color .2s,box-shadow .2s}.navigator[direction=column] .top .more-button[data-v-b94ad8cf]:hover{border-radius:35%;background:var(--el-fill-color);box-shadow:var(--app-shadow-sm)}.navigator[direction=column] .top .more-button.active[data-v-b94ad8cf]{box-shadow:0 0 0 2px var(--el-color-primary)}.navigator[direction=column] .top .more-button .folder-preview[data-v-b94ad8cf]{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:1px;width:22px;height:22px}.navigator[direction=column] .top .more-button .folder-preview .folder-icon[data-v-b94ad8cf]{width:10px;height:10px;border-radius:50%}.navigator[direction=column] .bottom[data-v-b94ad8cf]{height:50px;display:flex;flex-direction:column;width:100%;justify-content:flex-end;align-items:center;padding-bottom:10px}html.dark .navigator[data-v-b94ad8cf]{border-right-color:var(--app-glass-border)}.navigator-overflow-popover{padding:6px!important;border-radius:12px!important;-webkit-backdrop-filter:blur(var(--app-glass-blur));backdrop-filter:blur(var(--app-glass-blur))}.navigator-overflow-popover .overflow-menu{max-height:400px;overflow-y:auto}.navigator-overflow-popover .overflow-menu .overflow-item{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;cursor:pointer;transition:background-color .15s}.navigator-overflow-popover .overflow-menu .overflow-item:hover{background:var(--el-fill-color-light)}.navigator-overflow-popover .overflow-menu .overflow-item.active{background:var(--el-color-primary-light-9);color:var(--el-color-primary)}.navigator-overflow-popover .overflow-menu .overflow-item .overflow-avatar{width:24px;height:24px;border-radius:50%;flex-shrink:0}.navigator-overflow-popover .overflow-menu .overflow-item .overflow-name{font-size:13px;color:var(--el-text-color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|