@acedatacloud/nexior 3.282.1 → 3.282.3
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-D-K69eIL.js → ApiCodeButton-C81oNLDb.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-H9Myryc8.js → AskUserQuestionCard-CsVeZN2a.js} +1 -1
- package/dist/assets/{Auth-BzKyjsAj.js → Auth-Co4dZpdS.js} +1 -1
- package/dist/assets/{Bare-DO4C77ug.js → Bare-BcSAeksm.js} +1 -1
- package/dist/assets/{BotPlaceholder-roxzRu0Z.js → BotPlaceholder-DqTNUuMW.js} +1 -1
- package/dist/assets/{BottomFooter-DtD-omMU.js → BottomFooter-UH6iZi1G.js} +1 -1
- package/dist/assets/{Callback-D1k-Z2nX.js → Callback-Dog8JUkm.js} +1 -1
- package/dist/assets/{CodeSnippet-BbsNOPjj.js → CodeSnippet-DJV0sXKs.js} +1 -1
- package/dist/assets/{Console-BY8HieZU.js → Console-D1nMxkUw.js} +1 -1
- package/dist/assets/{Consumption-BHkxqyjC.js → Consumption-jSslJY9r.js} +1 -1
- package/dist/assets/{Conversation-CnjupltY.js → Conversation-W9M2KyNh.js} +2 -2
- package/dist/assets/{CopyToClipboard-eKTdFjdI.js → CopyToClipboard-pTPXheSy.js} +1 -1
- package/dist/assets/{Detail-9XRSfapg.js → Detail-D9_bY0qS.js} +2 -2
- package/dist/assets/{Extra-DACTlszV.js → Extra-W4XcO_2w.js} +1 -1
- package/dist/assets/{FilePreview-BnX43s5h.js → FilePreview-DAG238-6.js} +1 -1
- package/dist/assets/{Hailuo-DrWQywwK.js → Hailuo-CwoOHATV.js} +1 -1
- package/dist/assets/{History-DVGJpcnn.js → History-DOfrqFUT.js} +1 -1
- package/dist/assets/{ImagePreview-BA5Oih4U.js → ImagePreview-CyVFvGZY.js} +1 -1
- package/dist/assets/{ImageWrapper-2lGJsea4.js → ImageWrapper-Cflgi_5s.js} +1 -1
- package/dist/assets/{Index-C9UWQ9cG.js → Index-BBxnWajQ.js} +1 -1
- package/dist/assets/{Index-BP5epjGW.js → Index-BGeL8uQM.js} +1 -1
- package/dist/assets/{Index-CTATBVmz.js → Index-BWR94Tdv.js} +1 -1
- package/dist/assets/{Index-Bcn0B2ON.js → Index-BWhemR8K.js} +1 -1
- package/dist/assets/{Index-CSb_R5MB.js → Index-B_9xgSyO.js} +1 -1
- package/dist/assets/{Index-C_FymMGY.js → Index-Bq19tqx1.js} +1 -1
- package/dist/assets/{Index-DHvi-esl.js → Index-BuRV5uEj.js} +1 -1
- package/dist/assets/{Index-QMjoDD9m.js → Index-BwaufWof.js} +1 -1
- package/dist/assets/{Index-BLGVgHX42.js → Index-C2c_gxFm2.js} +1 -1
- package/dist/assets/{Index-Mf9WFEXy.js → Index-CEDe9n0c.js} +1 -1
- package/dist/assets/{Index-CIDsn2Gi.js → Index-CTl_acbP.js} +1 -1
- package/dist/assets/{Index-Dm5Y5ptq.js → Index-CjqPHs2e.js} +1 -1
- package/dist/assets/{Index-CkidIy1n.js → Index-Cz2lKu-B.js} +1 -1
- package/dist/assets/{Index-CeD2Fd0q.js → Index-DSIFfxXn.js} +1 -1
- package/dist/assets/{Index-wcYtvpJg.js → Index-DU-P8yNo.js} +1 -1
- package/dist/assets/{Index-Bo6Xu1dZ.js → Index-DXMXjzeK.js} +1 -1
- package/dist/assets/{Index-CEcCz2Hv.js → Index-DZDymXaD.js} +1 -1
- package/dist/assets/{Index-Ebk99XRb2.js → Index-D_tE_wbe2.js} +1 -1
- package/dist/assets/{Index-54IxkhYY.js → Index-Dbo1farb.js} +1 -1
- package/dist/assets/{Index-D0lVZziv.js → Index-Dh2lBr31.js} +1 -1
- package/dist/assets/{Index-B1HcUI0E.js → Index-Ds3xN8JN.js} +1 -1
- package/dist/assets/{Index-C18igqVy.js → Index-Dz04aUpf.js} +1 -1
- package/dist/assets/{Index-DelKBs11.js → Index-HewBZnTA.js} +1 -1
- package/dist/assets/{Index-BJwbngA-.js → Index-d4L6hWnC.js} +1 -1
- package/dist/assets/{Index-BgJa4sah.js → Index-iXqgdqmd.js} +1 -1
- package/dist/assets/{Index-C91KuLgP.js → Index-lmeKfOnG.js} +1 -1
- package/dist/assets/{Index-CxFFlyvC.js → Index-ugFity0e.js} +1 -1
- package/dist/assets/{InfoIcon-C1_Fexmj.js → InfoIcon-CJ2Hd-Wz.js} +1 -1
- package/dist/assets/{Invitees-zasruDcq.js → Invitees-jDi6-ygy.js} +1 -1
- package/dist/assets/{List-BDApZF1A.js → List-2ZKHDLZL.js} +1 -1
- package/dist/assets/{List-DV4jiaEd.js → List-CD9Naxep.js} +1 -1
- package/dist/assets/{List-DvlbRgNQ.js → List-D9aY4BLs.js} +1 -1
- package/dist/assets/{Main-BPP31eRN.js → Main-BHVNoP06.js} +1 -1
- package/dist/assets/{Model-DOFTDTEg.js → Model-GRJ_1eK6.js} +1 -1
- package/dist/assets/{Navigator-CEJ1DFOe.js → Navigator-BWZCrd8Z.js} +2 -2
- package/dist/assets/{Navigator-CmuOrmO_.css → Navigator-WfGVEqCI.css} +1 -1
- package/dist/assets/{NoTasks-BXelu2ty.js → NoTasks-D_hjTbi3.js} +1 -1
- package/dist/assets/{NotFound-Biw_J3_M.js → NotFound-Ctk9PLSx.js} +1 -1
- package/dist/assets/{Pagination-Cm96s13T.js → Pagination-CKn7a5mL.js} +1 -1
- package/dist/assets/{Pay-BP1BydLc.js → Pay-BgOxN0rE.js} +1 -1
- package/dist/assets/{Player-CtDMSwoa.js → Player-Ctq08vEx.js} +1 -1
- package/dist/assets/{PromptTextarea-Df-lfBWh.js → PromptTextarea-BuotQzV6.js} +1 -1
- package/dist/assets/{RealtimeCall-B1r3HvMe.js → RealtimeCall-D3Wa4a9W.js} +1 -1
- package/dist/assets/{Seedance-DE4mHwZC.js → Seedance-BOjvrQm9.js} +1 -1
- package/dist/assets/{Status-B5KiDaGg.js → Status-CWtDoHZf.js} +1 -1
- package/dist/assets/{Subscribe-CcX0DrLU.js → Subscribe-BU48CoGf.js} +1 -1
- package/dist/assets/{TabSwitcher-C8FIBk_k.js → TabSwitcher-BG0fXStf.js} +1 -1
- package/dist/assets/{Tts-BWtapcYV.js → Tts-COQhAbUn.js} +1 -1
- package/dist/assets/{VideoPlayer-DY4b64dd.js → VideoPlayer-B0OJ4e_1.js} +1 -1
- package/dist/assets/{avatar-dVXHWXWO.js → avatar-DruTehQ_.js} +1 -1
- package/dist/assets/{basic-jTq9y04R.js → basic-Ybl9D2cC.js} +1 -1
- package/dist/assets/{chat-B4ewI1Q8.js → chat-JsRm4K3q.js} +1 -1
- package/dist/assets/codingBridge-DOD66jcu.js +2 -0
- package/dist/assets/{codingBridgeNotify-DdGnUNfk.js → codingBridgeNotify-CHgg7t3o.js} +2 -2
- package/dist/assets/{collapse-1Vu_SBYv.js → collapse-DWc7hO_E.js} +1 -1
- package/dist/assets/common-0KbocLkK.js +1 -0
- package/dist/assets/common-B-7FJryd.js +1 -0
- package/dist/assets/common-B9abwvdL.js +1 -0
- package/dist/assets/common-BCVkV1vO.js +1 -0
- package/dist/assets/common-BVGVhaIQ.js +1 -0
- package/dist/assets/common-BVXYgxsm.js +1 -0
- package/dist/assets/common-CR2Ajdde.js +1 -0
- package/dist/assets/common-CRunUs4o.js +1 -0
- package/dist/assets/common-CYCUCtu6.js +1 -0
- package/dist/assets/common-CiWFQMos.js +1 -0
- package/dist/assets/common-CiYFqnZG.js +1 -0
- package/dist/assets/common-Cz9ttqkw.js +1 -0
- package/dist/assets/common-D9JnsbSA.js +1 -0
- package/dist/assets/common-DHfYNnUx.js +1 -0
- package/dist/assets/common-DSmKdJcG.js +1 -0
- package/dist/assets/common-DU0MXA3V.js +1 -0
- package/dist/assets/common-WMI7f6sH.js +1 -0
- package/dist/assets/common-_mic21iU.js +1 -0
- package/dist/assets/{constants-DTRWQYMM.js → constants-D3R0fBj4.js} +1 -1
- package/dist/assets/{createTaskActions-ibnBaK-u.js → createTaskActions-af3ZG7I1.js} +1 -1
- package/dist/assets/{date-picker-DiqE64YT.js → date-picker-6XokL7Fw.js} +1 -1
- package/dist/assets/{dropdown-QfHqpWM2.js → dropdown-C_oYmJGQ.js} +1 -1
- package/dist/assets/{esm-DdXGvFrt.js → esm-B2A3T4Ay.js} +1 -1
- package/dist/assets/{esm-Bx0I3-R8.js → esm-BmfvjbCR.js} +2 -2
- package/dist/assets/{esm-D_ifWYEA.js → esm-C3M5r-fv.js} +3 -3
- package/dist/assets/esm-CnTRoxq5.js +1 -0
- package/dist/assets/{esm-D3hUjBHm.js → esm-D8TUPjVe.js} +1 -1
- package/dist/assets/{esm-BaW7TbuF.js → esm-Dc6x90f1.js} +1 -1
- package/dist/assets/{esm-CiPKy041.js → esm-Dt2Uak2a.js} +2 -2
- package/dist/assets/{fish-DpDt-PfK.js → fish-DvwpcxDf.js} +1 -1
- package/dist/assets/{flux-CvOO7fKO.js → flux-ZOBAto7Z.js} +1 -1
- package/dist/assets/{grokvideo-h22zMBSu.js → grokvideo-DvPUIRFC.js} +1 -1
- package/dist/assets/{hailuo-YtyabxT9.js → hailuo-Dxxf9xkk.js} +1 -1
- package/dist/assets/{headshots-ClUa1cpM.js → headshots-Dj4ubPCp.js} +1 -1
- package/dist/assets/{image-bFeO6X5w.js → image-efKl_QMw.js} +1 -1
- package/dist/assets/index-B13Ic3iV.js +570 -0
- package/dist/assets/{index-C_TXvNsQ.css → index-B8H7clao.css} +1 -1
- package/dist/assets/{index.browser.esm-CpGxE_22.js → index.browser.esm-B-Osyhdv.js} +1 -1
- package/dist/assets/{index.es-CJsLzvD3.js → index.es-D6RSGiUA.js} +1 -1
- package/dist/assets/{input-number-CqawWQa1.js → input-number-brKVOYuP.js} +1 -1
- package/dist/assets/{kling-Dg1cUJL9.js → kling-DAT54C8Y.js} +1 -1
- package/dist/assets/{luma-CTQTEHIN.js → luma-DG2fV-ge.js} +1 -1
- package/dist/assets/{maestro-NTUJ8BkI.js → maestro-CgGI57Wv.js} +1 -1
- package/dist/assets/{midjourney-DdE8N8de.js → midjourney-GEMFYIQJ.js} +1 -1
- package/dist/assets/{nanobanana-Bnkj-AUW.js → nanobanana-CF3WFfz3.js} +1 -1
- package/dist/assets/{openaiimage-BJAI72Lk.js → openaiimage-CVDhk3IQ.js} +1 -1
- package/dist/assets/{pagination-DKagG6cm.js → pagination-BrBNkIKZ.js} +1 -1
- package/dist/assets/{pika-BWh194Am.js → pika-Hm7ElgBN.js} +1 -1
- package/dist/assets/{pixverse-DPumDsmJ.js → pixverse-lk5ASdW4.js} +1 -1
- package/dist/assets/{popover-DKe-71r3.js → popover-BjP2LnOy.js} +1 -1
- package/dist/assets/{producer-DQ6nk-7h.js → producer-CQhWCWd1.js} +1 -1
- package/dist/assets/{qrart-BxxHwcIy.js → qrart-DVOWTozq.js} +1 -1
- package/dist/assets/{realtime-HrUmGduU.js → realtime-B6lZc6Tz.js} +1 -1
- package/dist/assets/{row-BQEjx7hn.js → row-B11pIluY.js} +1 -1
- package/dist/assets/{seedance-BEpjRKBi.js → seedance-CvJK4Ld7.js} +1 -1
- package/dist/assets/{seedream-DWPmFUOj.js → seedream-Cd3C3QtJ.js} +1 -1
- package/dist/assets/{select-5Ok4_i74.js → select-Cqvr860Y.js} +1 -1
- package/dist/assets/{serp-C3iptujs.js → serp-C2yn4XtY.js} +1 -1
- package/dist/assets/site-BBa9zoNj.js +1 -0
- package/dist/assets/site-BEgJg43C.js +1 -0
- package/dist/assets/site-BT8FxE7a.js +1 -0
- package/dist/assets/site-C9pbtMwO.js +1 -0
- package/dist/assets/site-CEuoba1p.js +1 -0
- package/dist/assets/site-C_qSudxr.js +1 -0
- package/dist/assets/site-CdhV-M3A.js +1 -0
- package/dist/assets/site-Ci63CToz.js +1 -0
- package/dist/assets/site-CraYVptJ.js +1 -0
- package/dist/assets/site-CtWb4HaW.js +1 -0
- package/dist/assets/site-D4M3VjAL.js +1 -0
- package/dist/assets/site-D9poamrd.js +1 -0
- package/dist/assets/site-DbDhtmPA.js +1 -0
- package/dist/assets/site-DySKCTZK.js +1 -0
- package/dist/assets/site-LfWRteXA.js +1 -0
- package/dist/assets/site-cXu9yirq.js +1 -0
- package/dist/assets/site-mY1SaZya.js +1 -0
- package/dist/assets/site-y9Pn9GwU.js +1 -0
- package/dist/assets/{slider-D9sQIlB0.js → slider-CJlaY45b.js} +1 -1
- package/dist/assets/{solana-wallets-BiZ4H-3l.js → solana-wallets-CdKKknpt.js} +2 -2
- package/dist/assets/{solana-wallets-vue-DvJdL8Tk.js → solana-wallets-vue-BV8Ltbjm.js} +1 -1
- package/dist/assets/{sora-Bn2l9YZh.js → sora-DxUMYcbW.js} +1 -1
- package/dist/assets/{suno-rpyH1MbL.js → suno-Q6yvguNw.js} +1 -1
- package/dist/assets/{switch-D_zAw7IS.js → switch-DwPKEqP2.js} +1 -1
- package/dist/assets/{tabs-48ULWV4Z.js → tabs-BnpAwbA9.js} +1 -1
- package/dist/assets/{upload-DC43DwL5.js → upload-BMG4lwYO.js} +1 -1
- package/dist/assets/{veo-BuccwQ2S.js → veo-C9ZvI9mm.js} +1 -1
- package/dist/assets/{wan-Df4I6h8-.js → wan-DzRwaBGu.js} +1 -1
- package/dist/assets/{web-D6sVTQ5E.js → web-Bl7GyLx-.js} +1 -1
- package/dist/assets/{web-DIaSbkGY.js → web-CW4kCYqn.js} +1 -1
- package/dist/assets/{web-CJfiS49S.js → web-DD-xA0Og.js} +1 -1
- package/dist/assets/{web-DLkga110.js → web-DKPZBqDl.js} +1 -1
- package/dist/assets/{web-BNV2QQQU.js → web-Dr40Ppn4.js} +1 -1
- package/dist/assets/{webextrator-DGEIa-aB.js → webextrator-GRssFXeR.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/codingBridge-kTyK-NUc.js +0 -2
- package/dist/assets/common-1CuT9DHa.js +0 -1
- package/dist/assets/common-BQVwY-YM.js +0 -1
- package/dist/assets/common-CTeueWho.js +0 -1
- package/dist/assets/common-CZjPkTcj.js +0 -1
- package/dist/assets/common-CeNuqIei.js +0 -1
- package/dist/assets/common-CvBTo846.js +0 -1
- package/dist/assets/common-CyAxkbxb.js +0 -1
- package/dist/assets/common-CzefiocQ.js +0 -1
- package/dist/assets/common-D-u00Cma.js +0 -1
- package/dist/assets/common-D_gOZcZZ.js +0 -1
- package/dist/assets/common-DbN5e0oj.js +0 -1
- package/dist/assets/common-DfMBD6kt.js +0 -1
- package/dist/assets/common-Dj5C47QU.js +0 -1
- package/dist/assets/common-DznAcRen.js +0 -1
- package/dist/assets/common-IG-oRHJ3.js +0 -1
- package/dist/assets/common-_ScUaf-e.js +0 -1
- package/dist/assets/common-svlQjAEm.js +0 -1
- package/dist/assets/common-zrNxLv-O.js +0 -1
- package/dist/assets/esm-D8pGvUyn.js +0 -1
- package/dist/assets/index-Bp4RkP1b.js +0 -570
- package/dist/assets/site-B2UvgMAh.js +0 -1
- package/dist/assets/site-B4ebfrUA.js +0 -1
- package/dist/assets/site-B8LtkZC2.js +0 -1
- package/dist/assets/site-BBBZ-7zf.js +0 -1
- package/dist/assets/site-BD3lvXn1.js +0 -1
- package/dist/assets/site-BUjzW3R-.js +0 -1
- package/dist/assets/site-BzEngQB0.js +0 -1
- package/dist/assets/site-CNIyLh-7.js +0 -1
- package/dist/assets/site-CP5sNdgd.js +0 -1
- package/dist/assets/site-CfCPy3kG.js +0 -1
- package/dist/assets/site-D1dgST9F.js +0 -1
- package/dist/assets/site-DJ9p_tWS.js +0 -1
- package/dist/assets/site-D_x1vkdK.js +0 -1
- package/dist/assets/site-Da14FIMn.js +0 -1
- package/dist/assets/site-Dh-fMFir.js +0 -1
- package/dist/assets/site-R_TiDbjD.js +0 -1
- package/dist/assets/site-XFVVXu4b.js +0 -1
- package/dist/assets/site-tbEkpZ2h.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,Bt as t,D as n,E as r,F as i,G as a,H as o,I as s,J as c,Lt as l,N as u,O as d,Ot as f,Pt as p,Q as m,R as h,S as g,V as _,Vt as v,Wt as y,Z as b,bt as x,ct as S,dt as C,et as w,lt as T,u as E,ut as D,v as O,vt as k,wt as A,z as j}from"./vendor-chart-BJCvKk8-.js";import{r as M}from"./button-BydTr5nV.js";import{a as N,c as P,i as F,t as ee}from"./install-CmiepWqE.js";import{c as I,d as L,n as R,r as z,u as B}from"./runtime-B1Eal4u3.js";import{At as V,Ct as H,R as U,_ as te,h as ne,m as W,nt as re,ot as ie,rt as G,st as K,wt as q,zt as ae}from"./use-deprecated-B-NFNg3W.js";import{t as oe}from"./tooltip-BxeH2Vts.js";import{c as J}from"./teleport-BEkn5-id.js";import{t as Y}from"./aria-CQaCu-Fx.js";import{n as X}from"./vnode-BKrYEsqE.js";import{t as Z}from"./click-outside-yWFifzOE.js";import{t as se}from"./collapse-transition-C9jp2nDh.js";import{E as ce,Kr as le}from"./index-Bp4RkP1b.js";var ue=class{constructor(e,t){this.parent=e,this.domNode=t,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll(`li`),this.addListeners()}gotoSubIndex(e){e===this.subMenuItems.length?e=0:e<0&&(e=this.subMenuItems.length-1),this.subMenuItems[e].focus(),this.subIndex=e}addListeners(){let e=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,t=>{t.addEventListener(`keydown`,t=>{let n=!1;switch(t.code){case Y.down:this.gotoSubIndex(this.subIndex+1),n=!0;break;case Y.up:this.gotoSubIndex(this.subIndex-1),n=!0;break;case Y.tab:J(e,`mouseleave`);break;case Y.enter:case Y.numpadEnter:case Y.space:n=!0,t.currentTarget.click();break}return n&&(t.preventDefault(),t.stopPropagation()),!1})})}},de=class{constructor(e,t){this.domNode=e,this.submenu=null,this.submenu=null,this.init(t)}init(e){this.domNode.setAttribute(`tabindex`,`0`);let t=this.domNode.querySelector(`.${e}-menu`);t&&(this.submenu=new ue(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener(`keydown`,e=>{let t=!1;switch(e.code){case Y.down:J(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(0),t=!0;break;case Y.up:J(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),t=!0;break;case Y.tab:J(e.currentTarget,`mouseleave`);break;case Y.enter:case Y.numpadEnter:case Y.space:t=!0,e.currentTarget.click();break}t&&e.preventDefault()})}},fe=class{constructor(e,t){this.domNode=e,this.init(t)}init(e){let t=this.domNode.childNodes;Array.from(t).forEach(t=>{t.nodeType===1&&new de(t,e)})}},pe=N(i({...i({name:`ElMenuCollapseTransition`}),setup(e){let t=P(`menu`),n={onBeforeEnter:e=>e.style.opacity=`0.2`,onEnter(e,n){G(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=`1`,n()},onAfterEnter(e){K(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=``},onBeforeLeave(e){e.dataset||={},ie(e,t.m(`collapse`))?(K(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),G(e,t.m(`collapse`))):(G(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),K(e,t.m(`collapse`))),e.style.width=`${e.scrollWidth}px`,e.style.overflow=`hidden`},onLeave(e){G(e,`horizontal-collapse-transition`),e.style.width=`${e.dataset.scrollWidth}px`}};return(e,t)=>(b(),d(E,_({mode:`out-in`},f(n)),{default:D(()=>[w(e.$slots,`default`)]),_:3},16))}}),[[`__file`,`menu-collapse-transition.vue`]]);function me(e,t){let n=r(()=>{let n=e.parent,r=[t.value];for(;n.type.name!==`ElMenu`;)n.props.index&&r.unshift(n.props.index),n=n.parent;return r});return{parentMenu:r(()=>{let t=e.parent;for(;t&&![`ElMenu`,`ElSubMenu`].includes(t.type.name);)t=t.parent;return t}),indexPath:n}}function he(e){return r(()=>{let t=e.backgroundColor;return t?new M(t).shade(20).toString():``})}var ge=(e,t)=>{let n=P(`menu`);return r(()=>n.cssVarBlock({"text-color":e.textColor||``,"hover-text-color":e.textColor||``,"bg-color":e.backgroundColor||``,"hover-bg-color":he(e).value||``,"active-color":e.activeTextColor||``,level:`${t}`}))},_e=`rootMenu`,Q=`subMenu:`,ve=R({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:W},expandOpenIcon:{type:W},collapseCloseIcon:{type:W},collapseOpenIcon:{type:W}}),ye=`ElSubMenu`,be=i({name:ye,props:ve,setup(e,{slots:n,expose:i}){let o=s(),{indexPath:l,parentMenu:u}=me(o,r(()=>e.index)),d=P(`menu`),f=P(`sub-menu`),p=j(_e);p||q(ye,`can not inject root menu`);let _=j(`${Q}${u.value.uid}`);_||q(ye,`can not inject sub menu`);let v=x({}),y=x({}),b,w=x(!1),T=x(),E=x(),D=r(()=>R.value===`horizontal`&&M.value?`bottom-start`:`right-start`),A=r(()=>R.value===`horizontal`&&M.value||R.value===`vertical`&&!p.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?I.value?e.expandOpenIcon:e.expandCloseIcon:ne:e.collapseCloseIcon&&e.collapseOpenIcon?I.value?e.collapseOpenIcon:e.collapseCloseIcon:te),M=r(()=>_.level===0),N=r(()=>{let t=e.teleported;return B(t)?M.value:t}),F=r(()=>p.props.collapse?`${d.namespace.value}-zoom-in-left`:`${d.namespace.value}-zoom-in-top`),ee=r(()=>R.value===`horizontal`&&M.value?[`bottom-start`,`bottom-end`,`top-start`,`top-end`,`right-start`,`left-start`]:[`right-start`,`right`,`right-end`,`left-start`,`bottom-start`,`bottom-end`,`top-start`,`top-end`]),I=r(()=>p.openedMenus.includes(e.index)),L=r(()=>[...Object.values(v.value),...Object.values(y.value)].some(({active:e})=>e)),R=r(()=>p.props.mode),z=r(()=>p.props.persistent),V=k({index:e.index,indexPath:l,active:L}),H=ge(p.props,_.level+1),U=r(()=>e.popperOffset??p.props.popperOffset),W=r(()=>e.popperClass??p.props.popperClass),ie=r(()=>e.showTimeout??p.props.showTimeout),G=r(()=>e.hideTimeout??p.props.hideTimeout),K=()=>(E.value?.popperRef?.popperInstanceRef)?.destroy(),J=e=>{e||K()},Y=()=>{p.props.menuTrigger===`hover`&&p.props.mode===`horizontal`||p.props.collapse&&p.props.mode===`vertical`||e.disabled||p.handleSubMenuClick({index:e.index,indexPath:l.value,active:L.value})},X=(t,n=ie.value)=>{var r;if(t.type!==`focus`){if(p.props.menuTrigger===`click`&&p.props.mode===`horizontal`||!p.props.collapse&&p.props.mode===`vertical`||e.disabled){_.mouseInChild.value=!0;return}_.mouseInChild.value=!0,b?.(),{stop:b}=ae(()=>{p.openMenu(e.index,l.value)},n),N.value&&((r=u.value.vnode.el)==null||r.dispatchEvent(new MouseEvent(`mouseenter`)))}},Z=(t=!1)=>{var n;if(p.props.menuTrigger===`click`&&p.props.mode===`horizontal`||!p.props.collapse&&p.props.mode===`vertical`){_.mouseInChild.value=!1;return}b?.(),_.mouseInChild.value=!1,{stop:b}=ae(()=>!w.value&&p.closeMenu(e.index,l.value),G.value),N.value&&t&&((n=_.handleMouseleave)==null||n.call(_,!0))};return S(()=>p.props.collapse,e=>J(!!e)),m(`${Q}${o.uid}`,{addSubMenu:e=>{y.value[e.index]=e},removeSubMenu:e=>{delete y.value[e.index]},handleMouseleave:Z,mouseInChild:w,level:_.level+1}),i({opened:I}),c(()=>{p.addSubMenu(V),_.addSubMenu(V)}),a(()=>{_.removeSubMenu(V),p.removeSubMenu(V)}),()=>{let r=[n.title?.call(n),h(re,{class:f.e(`icon-arrow`),style:{transform:I.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&p.props.collapse?`none`:`rotateZ(180deg)`:`none`}},{default:()=>t(A.value)?h(o.appContext.components[A.value]):h(A.value)})],i=p.isMenuPopup?h(oe,{ref:E,visible:I.value,effect:`light`,pure:!0,offset:U.value,showArrow:!1,persistent:z.value,popperClass:W.value,placement:D.value,teleported:N.value,fallbackPlacements:ee.value,transition:F.value,gpuAcceleration:!1},{content:()=>h(`div`,{class:[d.m(R.value),d.m(`popup-container`),W.value],onMouseenter:e=>X(e,100),onMouseleave:()=>Z(!0),onFocus:e=>X(e,100)},[h(`ul`,{class:[d.b(),d.m(`popup`),d.m(`popup-${D.value}`)],style:H.value},[n.default?.call(n)])]),default:()=>h(`div`,{class:f.e(`title`),onClick:Y},r)}):h(g,{},[h(`div`,{class:f.e(`title`),ref:T,onClick:Y},r),h(se,{},{default:()=>C(h(`ul`,{role:`menu`,class:[d.b(),d.m(`inline`)],style:H.value},[n.default?.call(n)]),[[O,I.value]])})]);return h(`li`,{class:[f.b(),f.is(`active`,L.value),f.is(`opened`,I.value),f.is(`disabled`,e.disabled)],role:`menuitem`,ariaHaspopup:!0,ariaExpanded:I.value,onMouseenter:X,onMouseleave:()=>Z(),onFocus:X},[i])}}}),xe=R({mode:{type:String,values:[`horizontal`,`vertical`],default:`vertical`},defaultActive:{type:String,default:``},defaultOpeneds:{type:z(Array),default:()=>le([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:[`hover`,`click`],default:`hover`},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:W,default:()=>U},popperEffect:{type:z(String),default:`dark`},popperClass:String,showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),Se=e=>p(e)&&e.every(e=>t(e)),Ce=i({name:`ElMenu`,props:xe,emits:{close:(e,n)=>t(e)&&Se(n),open:(e,n)=>t(e)&&Se(n),select:(e,n,r,i)=>t(e)&&Se(n)&&l(r)&&(B(i)||i instanceof Promise)},setup(e,{emit:t,slots:n,expose:i}){let a=s(),l=a.appContext.config.globalProperties.$router,u=x(),d=P(`menu`),f=P(`sub-menu`),p=x(-1),g=x(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),_=x(e.defaultActive),v=x({}),y=x({}),b=r(()=>e.mode===`horizontal`||e.mode===`vertical`&&e.collapse),w=()=>{let t=_.value&&v.value[_.value];!t||e.mode===`horizontal`||e.collapse||t.indexPath.forEach(e=>{let t=y.value[e];t&&E(e,t.indexPath)})},E=(n,r)=>{g.value.includes(n)||(e.uniqueOpened&&(g.value=g.value.filter(e=>r.includes(e))),g.value.push(n),t(`open`,n,r))},D=e=>{let t=g.value.indexOf(e);t!==-1&&g.value.splice(t,1)},O=(e,n)=>{D(e),t(`close`,e,n)},A=({index:e,indexPath:t})=>{g.value.includes(e)?O(e,t):E(e,t)},j=n=>{(e.mode===`horizontal`||e.collapse)&&(g.value=[]);let{index:r,indexPath:i}=n;if(!(L(r)||L(i)))if(e.router&&l){let e=n.route||r,a=l.push(e).then(e=>(e||(_.value=r),e));t(`select`,r,i,{index:r,indexPath:i,route:e},a)}else _.value=r,t(`select`,r,i,{index:r,indexPath:i})},M=t=>{let n=v.value;_.value=(n[t]||_.value&&n[_.value]||n[e.defaultActive])?.index??t},N=e=>{let t=getComputedStyle(e),n=Number.parseInt(t.marginLeft,10),r=Number.parseInt(t.marginRight,10);return e.offsetWidth+n+r||0},F=()=>{if(!u.value)return-1;let e=Array.from(u.value?.childNodes??[]).filter(e=>e.nodeName!==`#text`||e.nodeValue),t=getComputedStyle(u.value),n=Number.parseInt(t.paddingLeft,10),r=Number.parseInt(t.paddingRight,10),i=u.value.clientWidth-n-r,a=0,o=0;return e.forEach((e,t)=>{e.nodeName!==`#comment`&&(a+=N(e),a<=i-64&&(o=t+1))}),o===e.length?-1:o},ee=e=>y.value[e].indexPath,I=(e,t=33.34)=>{let n;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e()},t)}},R=!0,z=()=>{if(p.value===F())return;let e=()=>{p.value=-1,o(()=>{p.value=F()})};R?e():I(e)(),R=!1};S(()=>e.defaultActive,e=>{v.value[e]||(_.value=``),M(e)}),S(()=>e.collapse,e=>{e&&(g.value=[])}),S(v.value,w);let B;T(()=>{e.mode===`horizontal`&&e.ellipsis?B=V(u,z).stop:B?.()});let H=x(!1);{let t=e=>{y.value[e.index]=e},n=e=>{delete y.value[e.index]};m(_e,k({props:e,openedMenus:g,items:v,subMenus:y,activeIndex:_,isMenuPopup:b,addMenuItem:e=>{v.value[e.index]=e},removeMenuItem:e=>{delete v.value[e.index]},addSubMenu:t,removeSubMenu:n,openMenu:E,closeMenu:O,handleMenuItemClick:j,handleSubMenuClick:A})),m(`${Q}${a.uid}`,{addSubMenu:t,removeSubMenu:n,mouseInChild:H,level:0})}c(()=>{e.mode===`horizontal`&&new fe(a.vnode.el,d.namespace.value)}),i({open:e=>{let{indexPath:t}=y.value[e];t.forEach(e=>E(e,t))},close:D,updateActiveIndex:M,handleResize:z});let U=ge(e,0);return()=>{let r=n.default?.call(n)??[],i=[];if(e.mode===`horizontal`&&u.value){let t=X(r),n=p.value===-1?t:t.slice(0,p.value),a=p.value===-1?[]:t.slice(p.value);a?.length&&e.ellipsis&&(r=n,i.push(h(be,{index:`sub-menu-more`,class:f.e(`hide-arrow`),popperOffset:e.popperOffset},{title:()=>h(re,{class:f.e(`icon-more`)},{default:()=>h(e.ellipsisIcon)}),default:()=>a})))}let a=e.closeOnClickOutside?[[Z,()=>{g.value.length&&(H.value||(g.value.forEach(e=>t(`close`,e,ee(e))),g.value=[]))}]]:[],o=C(h(`ul`,{key:String(e.collapse),role:`menubar`,ref:u,style:U.value,class:{[d.b()]:!0,[d.m(e.mode)]:!0,[d.m(`collapse`)]:e.collapse}},[...r,...i]),a);return e.collapseTransition&&e.mode===`vertical`?h(pe,()=>o):o}}}),we=R({index:{type:z([String,null]),default:null},route:{type:z([String,Object])},disabled:Boolean}),Te={click:e=>t(e.index)&&p(e.indexPath)},$=`ElMenuItem`,Ee=N(i({...i({name:$}),props:we,emits:Te,setup(t,{expose:i,emit:o}){let l=t;I(l.index)&&H($,`Missing required prop: "index"`);let u=s(),p=j(_e),m=P(`menu`),h=P(`menu-item`);p||q($,`can not inject root menu`);let{parentMenu:_,indexPath:y}=me(u,A(l,`index`)),x=j(`${Q}${_.value.uid}`);x||q($,`can not inject sub menu`);let S=r(()=>l.index===p.activeIndex),C=k({index:l.index,indexPath:y,active:S}),T=()=>{l.disabled||(p.handleMenuItemClick({index:l.index,indexPath:y.value,route:l.route}),o(`click`,C))};return c(()=>{x.addSubMenu(C),p.addMenuItem(C)}),a(()=>{x.removeSubMenu(C),p.removeMenuItem(C)}),i({parentMenu:_,rootMenu:p,active:S,nsMenu:m,nsMenuItem:h,handleClick:T}),(t,r)=>(b(),e(`li`,{class:v([f(h).b(),f(h).is(`active`,f(S)),f(h).is(`disabled`,t.disabled)]),role:`menuitem`,tabindex:`-1`,onClick:T},[f(_).type.name===`ElMenu`&&f(p).props.collapse&&t.$slots.title?(b(),d(f(oe),{key:0,effect:f(p).props.popperEffect,placement:`right`,"fallback-placements":[`left`],persistent:f(p).props.persistent},{content:D(()=>[w(t.$slots,`title`)]),default:D(()=>[n(`div`,{class:v(f(m).be(`tooltip`,`trigger`))},[w(t.$slots,`default`)],2)]),_:3},8,[`effect`,`persistent`])):(b(),e(g,{key:1},[w(t.$slots,`default`),w(t.$slots,`title`)],64))],2))}}),[[`__file`,`menu-item.vue`]]),De={title:String},Oe=N(i({...i({name:`ElMenuItemGroup`}),props:De,setup(t){let r=P(`menu-item-group`);return(t,i)=>(b(),e(`li`,{class:v(f(r).b())},[n(`div`,{class:v(f(r).e(`title`))},[t.$slots.title?w(t.$slots,`title`,{key:1}):(b(),e(g,{key:0},[u(y(t.title),1)],64))],2),n(`ul`,null,[w(t.$slots,`default`)])],2))}}),[[`__file`,`menu-item-group.vue`]]),ke=ee(Ce,{MenuItem:Ee,MenuItemGroup:Oe,SubMenu:be}),Ae=F(Ee);F(Oe);var je=F(be),Me=i({props:{collapsed:{type:Boolean,default:!1}},emits:[`click`],computed:{siteTitle(){return this.$store.state.site?.title||`AceData`},url(){let e=this.$store.state.site,t=`https://platform.acedata.cloud/favicon.ico`;return this.collapsed?e?.favicon||e?.logo||t:e?.logo||e?.favicon||t}}}),Ne=[`aria-label`],Pe=[`src`,`alt`];function Fe(t,r,i,a,o,s){return b(),e(`button`,{type:`button`,class:`brand-logo`,"aria-label":t.siteTitle,onClick:r[0]||=e=>t.$emit(`click`)},[n(`img`,{src:t.url,class:`brand-logo__image`,alt:t.siteTitle},null,8,Pe)],8,Ne)}var Ie=ce(Me,[[`render`,Fe],[`__scopeId`,`data-v-fefbbe27`]]),Le=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAMAAAAKE/YAAAAAMFBMVEX///+3t7f4+Pi8vLzAwMDExMTS0tLIyMjk5OTz8/PY2NjOzs7u7u7d3d3p6enh4eFVKkJDAAAIfUlEQVR4nNVd15akOAylyRRQ9f9/O02BZJtgBQszfR/2zPahsJCvguVUFJYop35ux66pq6r6+fn9T910bTv3U2najBXK9zw2PxE07fz+n0Qf+raOyetL3g9PS7vgzRUYULfvZyXuR5nAgLF/SuK3UuJN7gf0PbyErDiieuU1zKmLyFJ3Y9u+vmh//V9dXT/b5VN3f+HbFq82nGivHH6999Vv8rC7P+NFzfBlF56xvl/sEy1Xbc8mZ9m3R7bcrO0jl+vXJH7J0YY78UvYKNuDjpWNTQd9tzd5ks9ePUm92u877WMlp4dhR+Y2OYkYdh3XmKclc9iATVwoXyFLZouXIobuBpEXlK+QcYbK7gOF2NpMaN2Vmfdr71LGirAbW5N3lr4F1rckC0GQbQw6cqrM1XACvzOr5EjT+2q+L24Vk6/sRGL7no6t5un9eQE+7JG4r+wk3+e9iGfXwzyeZHLjzDGFt0fEBB564ymOeRwzCg8dHaZ9kx8NZGZ8+UyOv0bSW3o9q5Tac5+0luajjGfqpsT2krIuTeaKZGQf4UUIKpx6xFbo2nGD9HSlpJZAGfSQILVjV02Z4CQsJhD2UdbcJ/dwyRfpNvozwaLo4q/0nMhLIrMThJSZZ4EhiJd6Ugti43SvzCTlPKnZmUNZMV+u4cYKwp85XlfcTBi/s6Z+MZ2LxADhGZzUDU9m5zjIr0woQhLxasAHWS7E9TgZU/Z1EBEIjbzxQYYxOudOxu73qTBcUGEaIzqD1hi96W6JTgzRoDSI/UhmITP7yUPFSYqaagD1R4wJkP8VnT8nTwVQqnauN06QjvtCvYt2IL3Zm/Uk9jjDz0RmMLggwx3SOuIUSniGpJv3bAJo1SAFr9mKH8aI+LqkI0RFtoIh9/L76Cc8GLCDoxxSjyAHgxxFYSEzJ18Ggly4YHQHnCQ2LRoCGINXQirim0JYUJpDatf/p24PP4mVwSblSg6MEhDGuzNVg6J5o8nEvAPAGZiAfk5MDRXNqxcmx/AVHPMprx8G1TEHwOzqTByseTgoDRxYDT6akSh9YSMzr6aLidOeTGCj3EqDkdC8GU9Q9c6voYlyJzxy0sOxOnRs8C3sQpSR92DOO4EDCXkAzoA935bPTy8AIgTBCIIyvyZsExF/uM2Byfk9A7VafuksfdyygFmJcc35NZ7tT5xUYMNwJYcI/FouGP7xOyT1YBOh+aVcsCHHBWCHZHLTxOfxF6ZA8HP82P7ASv4BJj5PMNMO/g3+H9ghqrtnGm4hIJLAd7byVxg5asGCA+AH2N2meYHvKPxZmQRIGtyMaOMweC/ZXJJJdJE0CF27Bm0oK8kWLKSWHxeILB8s7xN8gmxFi0VIFAkNqd5KiI3S7JBqJ7Ssycb70vAL2LAofMiE9hkBrQvX4OTXNLS4eGpwA8KlaxaGKHOy4OWWcSVoXSZz9ohYYLaxpB8bv4V2aFGeFiYOvqTb74V2mHkQ8IXjBKhMuKrMJIoLOQlmVGIiIlyPmXdguwJ6d8J/CZ1H0m4iB1Gr4D569HjCZalPaNoxeWtd5jKf4TRkpy30syh3KbLXPVZsWdIIQUK6dO8Jl+dkbUB6GfRranwIWx3hUzeVi5fRmggtDA6b/dWO3ELkLiF4QldqoXOPxhe8QOjt57LUpXhguGUhtEUFUtq9EBzUQluQWrphIV1oA1JLm0R6VFqh0z21eH30XmjFdofbF14dgC5PG1zS0w9pjuYFF2UYL9KHiXJGYhhXJkwLEk1RvrEMZVWmpgvSVC1XtEtNlYOAL1JYrdESOg3lcGtFQsVGs+Nu++msHdiu0BNEQQ5vYKssIWxQx3JNc1AqnbTFmg3qSoKmYz0mb//S7QDU1k5Vdu+VSnUFyA3aBES1ca9zkqb4PPVQUUVG74OVRfUNSqencXh+UR1sUnfqgy6+qLrVn75QThRt0I26VG0FU4dbRNfE1ULpqVVBIZBTN/kJ0PBDxY6QEbpp5v27JFCxI5xm1k3oIxT+Q+Wowgl93dIJhHzqVrW5erd0QrdIxUE8wFXxcL9IBXSlSRcLuSnq3NR+OZBq4ZWD1FXr8sn9wivVEjcPwtVuKtd6XOKmWUzoQeY/dCczHBcTKpZtnr2QB104gN70ukm+QNaHzBJV7DhbIAt/040ERMMXnbUDAwOtgvZVsUo0KaCi9Omib/SCqleKhE7KSsNIIt7IkFXoi40MSBrNO28X+ooHOKxWqPpuoVHRh7FDo3+pyHsorOZyG5R0w5kPUZmJffYFIrLhTLi1DzFJT0X+aWaZ3JGtfcJNlCvesTOuIpAcLBrdRIms5g4s+jFlM0PFPYY6ul1VtDG4PJzwqQHnGGpKKlA1fVKN0VqxX31Tx1DjOTBXaRFvs3vaWdkniPIEF3hdGgEmxpev0VpeHNf8ZuiROMBhet0hMch9qkogR2wXbeSojHI22jd5ifp1cLbY9dHB8NWhJCbOgkYzBxpFzxH3wu74F++ro8ckWsM7a5l7/IuzVnAxJX1MojGQ3shHslKCPPimY+b+jYfmU0qONPIOj5rzK9lDi33OyQttVpEaglXXMFoabQVmqny3QxaBW4opM3o4CtwDJazWGZtAUMi12ONkAtGMrNGS/1QI5yb+CxciLmc8EwoDKEokefK6CBKPRf47Mj/MEIujvv+MzA/6kKQLCR7y18q5Y8AjiWryrR1T9uwp/RqJ3YUdGWBxYUeR2RzN7gThn6ifCrtLaA7X/dwG4xtusvg+24uVihzKtr/Cqrh7OFPdcVlYcXItmyHS7x67ROwyxxTceAHegqsLHVOQ4WLH00sdE5DhUsev2IbaznR95gKrCnDGi0oXDOmTRrmvhP3i712+u+LvXXO84u9dKL2Cf3V33X7+i6u7N/y5S9IdvOvoF0G/19GP9tfR/wPQ21eEI8clLwAAAABJRU5ErkJggg==`;export{je as a,Ae as i,Ie as n,ke as r,Le as t};
|
|
1
|
+
import{A as e,Bt as t,D as n,E as r,F as i,G as a,H as o,I as s,J as c,Lt as l,N as u,O as d,Ot as f,Pt as p,Q as m,R as h,S as g,V as _,Vt as v,Wt as y,Z as b,bt as x,ct as S,dt as C,et as w,lt as T,u as E,ut as D,v as O,vt as k,wt as A,z as j}from"./vendor-chart-BJCvKk8-.js";import{r as M}from"./button-BydTr5nV.js";import{a as N,c as P,i as F,t as ee}from"./install-CmiepWqE.js";import{c as I,d as L,n as R,r as z,u as B}from"./runtime-B1Eal4u3.js";import{At as V,Ct as H,R as U,_ as te,h as ne,m as W,nt as re,ot as ie,rt as G,st as K,wt as q,zt as ae}from"./use-deprecated-B-NFNg3W.js";import{t as oe}from"./tooltip-BxeH2Vts.js";import{c as J}from"./teleport-BEkn5-id.js";import{t as Y}from"./aria-CQaCu-Fx.js";import{n as X}from"./vnode-BKrYEsqE.js";import{t as Z}from"./click-outside-yWFifzOE.js";import{t as se}from"./collapse-transition-C9jp2nDh.js";import{E as ce,Kr as le}from"./index-B13Ic3iV.js";var ue=class{constructor(e,t){this.parent=e,this.domNode=t,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll(`li`),this.addListeners()}gotoSubIndex(e){e===this.subMenuItems.length?e=0:e<0&&(e=this.subMenuItems.length-1),this.subMenuItems[e].focus(),this.subIndex=e}addListeners(){let e=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,t=>{t.addEventListener(`keydown`,t=>{let n=!1;switch(t.code){case Y.down:this.gotoSubIndex(this.subIndex+1),n=!0;break;case Y.up:this.gotoSubIndex(this.subIndex-1),n=!0;break;case Y.tab:J(e,`mouseleave`);break;case Y.enter:case Y.numpadEnter:case Y.space:n=!0,t.currentTarget.click();break}return n&&(t.preventDefault(),t.stopPropagation()),!1})})}},de=class{constructor(e,t){this.domNode=e,this.submenu=null,this.submenu=null,this.init(t)}init(e){this.domNode.setAttribute(`tabindex`,`0`);let t=this.domNode.querySelector(`.${e}-menu`);t&&(this.submenu=new ue(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener(`keydown`,e=>{let t=!1;switch(e.code){case Y.down:J(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(0),t=!0;break;case Y.up:J(e.currentTarget,`mouseenter`),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),t=!0;break;case Y.tab:J(e.currentTarget,`mouseleave`);break;case Y.enter:case Y.numpadEnter:case Y.space:t=!0,e.currentTarget.click();break}t&&e.preventDefault()})}},fe=class{constructor(e,t){this.domNode=e,this.init(t)}init(e){let t=this.domNode.childNodes;Array.from(t).forEach(t=>{t.nodeType===1&&new de(t,e)})}},pe=N(i({...i({name:`ElMenuCollapseTransition`}),setup(e){let t=P(`menu`),n={onBeforeEnter:e=>e.style.opacity=`0.2`,onEnter(e,n){G(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=`1`,n()},onAfterEnter(e){K(e,`${t.namespace.value}-opacity-transition`),e.style.opacity=``},onBeforeLeave(e){e.dataset||={},ie(e,t.m(`collapse`))?(K(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),G(e,t.m(`collapse`))):(G(e,t.m(`collapse`)),e.dataset.oldOverflow=e.style.overflow,e.dataset.scrollWidth=e.clientWidth.toString(),K(e,t.m(`collapse`))),e.style.width=`${e.scrollWidth}px`,e.style.overflow=`hidden`},onLeave(e){G(e,`horizontal-collapse-transition`),e.style.width=`${e.dataset.scrollWidth}px`}};return(e,t)=>(b(),d(E,_({mode:`out-in`},f(n)),{default:D(()=>[w(e.$slots,`default`)]),_:3},16))}}),[[`__file`,`menu-collapse-transition.vue`]]);function me(e,t){let n=r(()=>{let n=e.parent,r=[t.value];for(;n.type.name!==`ElMenu`;)n.props.index&&r.unshift(n.props.index),n=n.parent;return r});return{parentMenu:r(()=>{let t=e.parent;for(;t&&![`ElMenu`,`ElSubMenu`].includes(t.type.name);)t=t.parent;return t}),indexPath:n}}function he(e){return r(()=>{let t=e.backgroundColor;return t?new M(t).shade(20).toString():``})}var ge=(e,t)=>{let n=P(`menu`);return r(()=>n.cssVarBlock({"text-color":e.textColor||``,"hover-text-color":e.textColor||``,"bg-color":e.backgroundColor||``,"hover-bg-color":he(e).value||``,"active-color":e.activeTextColor||``,level:`${t}`}))},_e=`rootMenu`,Q=`subMenu:`,ve=R({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:W},expandOpenIcon:{type:W},collapseCloseIcon:{type:W},collapseOpenIcon:{type:W}}),ye=`ElSubMenu`,be=i({name:ye,props:ve,setup(e,{slots:n,expose:i}){let o=s(),{indexPath:l,parentMenu:u}=me(o,r(()=>e.index)),d=P(`menu`),f=P(`sub-menu`),p=j(_e);p||q(ye,`can not inject root menu`);let _=j(`${Q}${u.value.uid}`);_||q(ye,`can not inject sub menu`);let v=x({}),y=x({}),b,w=x(!1),T=x(),E=x(),D=r(()=>R.value===`horizontal`&&M.value?`bottom-start`:`right-start`),A=r(()=>R.value===`horizontal`&&M.value||R.value===`vertical`&&!p.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?I.value?e.expandOpenIcon:e.expandCloseIcon:ne:e.collapseCloseIcon&&e.collapseOpenIcon?I.value?e.collapseOpenIcon:e.collapseCloseIcon:te),M=r(()=>_.level===0),N=r(()=>{let t=e.teleported;return B(t)?M.value:t}),F=r(()=>p.props.collapse?`${d.namespace.value}-zoom-in-left`:`${d.namespace.value}-zoom-in-top`),ee=r(()=>R.value===`horizontal`&&M.value?[`bottom-start`,`bottom-end`,`top-start`,`top-end`,`right-start`,`left-start`]:[`right-start`,`right`,`right-end`,`left-start`,`bottom-start`,`bottom-end`,`top-start`,`top-end`]),I=r(()=>p.openedMenus.includes(e.index)),L=r(()=>[...Object.values(v.value),...Object.values(y.value)].some(({active:e})=>e)),R=r(()=>p.props.mode),z=r(()=>p.props.persistent),V=k({index:e.index,indexPath:l,active:L}),H=ge(p.props,_.level+1),U=r(()=>e.popperOffset??p.props.popperOffset),W=r(()=>e.popperClass??p.props.popperClass),ie=r(()=>e.showTimeout??p.props.showTimeout),G=r(()=>e.hideTimeout??p.props.hideTimeout),K=()=>(E.value?.popperRef?.popperInstanceRef)?.destroy(),J=e=>{e||K()},Y=()=>{p.props.menuTrigger===`hover`&&p.props.mode===`horizontal`||p.props.collapse&&p.props.mode===`vertical`||e.disabled||p.handleSubMenuClick({index:e.index,indexPath:l.value,active:L.value})},X=(t,n=ie.value)=>{var r;if(t.type!==`focus`){if(p.props.menuTrigger===`click`&&p.props.mode===`horizontal`||!p.props.collapse&&p.props.mode===`vertical`||e.disabled){_.mouseInChild.value=!0;return}_.mouseInChild.value=!0,b?.(),{stop:b}=ae(()=>{p.openMenu(e.index,l.value)},n),N.value&&((r=u.value.vnode.el)==null||r.dispatchEvent(new MouseEvent(`mouseenter`)))}},Z=(t=!1)=>{var n;if(p.props.menuTrigger===`click`&&p.props.mode===`horizontal`||!p.props.collapse&&p.props.mode===`vertical`){_.mouseInChild.value=!1;return}b?.(),_.mouseInChild.value=!1,{stop:b}=ae(()=>!w.value&&p.closeMenu(e.index,l.value),G.value),N.value&&t&&((n=_.handleMouseleave)==null||n.call(_,!0))};return S(()=>p.props.collapse,e=>J(!!e)),m(`${Q}${o.uid}`,{addSubMenu:e=>{y.value[e.index]=e},removeSubMenu:e=>{delete y.value[e.index]},handleMouseleave:Z,mouseInChild:w,level:_.level+1}),i({opened:I}),c(()=>{p.addSubMenu(V),_.addSubMenu(V)}),a(()=>{_.removeSubMenu(V),p.removeSubMenu(V)}),()=>{let r=[n.title?.call(n),h(re,{class:f.e(`icon-arrow`),style:{transform:I.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&p.props.collapse?`none`:`rotateZ(180deg)`:`none`}},{default:()=>t(A.value)?h(o.appContext.components[A.value]):h(A.value)})],i=p.isMenuPopup?h(oe,{ref:E,visible:I.value,effect:`light`,pure:!0,offset:U.value,showArrow:!1,persistent:z.value,popperClass:W.value,placement:D.value,teleported:N.value,fallbackPlacements:ee.value,transition:F.value,gpuAcceleration:!1},{content:()=>h(`div`,{class:[d.m(R.value),d.m(`popup-container`),W.value],onMouseenter:e=>X(e,100),onMouseleave:()=>Z(!0),onFocus:e=>X(e,100)},[h(`ul`,{class:[d.b(),d.m(`popup`),d.m(`popup-${D.value}`)],style:H.value},[n.default?.call(n)])]),default:()=>h(`div`,{class:f.e(`title`),onClick:Y},r)}):h(g,{},[h(`div`,{class:f.e(`title`),ref:T,onClick:Y},r),h(se,{},{default:()=>C(h(`ul`,{role:`menu`,class:[d.b(),d.m(`inline`)],style:H.value},[n.default?.call(n)]),[[O,I.value]])})]);return h(`li`,{class:[f.b(),f.is(`active`,L.value),f.is(`opened`,I.value),f.is(`disabled`,e.disabled)],role:`menuitem`,ariaHaspopup:!0,ariaExpanded:I.value,onMouseenter:X,onMouseleave:()=>Z(),onFocus:X},[i])}}}),xe=R({mode:{type:String,values:[`horizontal`,`vertical`],default:`vertical`},defaultActive:{type:String,default:``},defaultOpeneds:{type:z(Array),default:()=>le([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:[`hover`,`click`],default:`hover`},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:W,default:()=>U},popperEffect:{type:z(String),default:`dark`},popperClass:String,showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),Se=e=>p(e)&&e.every(e=>t(e)),Ce=i({name:`ElMenu`,props:xe,emits:{close:(e,n)=>t(e)&&Se(n),open:(e,n)=>t(e)&&Se(n),select:(e,n,r,i)=>t(e)&&Se(n)&&l(r)&&(B(i)||i instanceof Promise)},setup(e,{emit:t,slots:n,expose:i}){let a=s(),l=a.appContext.config.globalProperties.$router,u=x(),d=P(`menu`),f=P(`sub-menu`),p=x(-1),g=x(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),_=x(e.defaultActive),v=x({}),y=x({}),b=r(()=>e.mode===`horizontal`||e.mode===`vertical`&&e.collapse),w=()=>{let t=_.value&&v.value[_.value];!t||e.mode===`horizontal`||e.collapse||t.indexPath.forEach(e=>{let t=y.value[e];t&&E(e,t.indexPath)})},E=(n,r)=>{g.value.includes(n)||(e.uniqueOpened&&(g.value=g.value.filter(e=>r.includes(e))),g.value.push(n),t(`open`,n,r))},D=e=>{let t=g.value.indexOf(e);t!==-1&&g.value.splice(t,1)},O=(e,n)=>{D(e),t(`close`,e,n)},A=({index:e,indexPath:t})=>{g.value.includes(e)?O(e,t):E(e,t)},j=n=>{(e.mode===`horizontal`||e.collapse)&&(g.value=[]);let{index:r,indexPath:i}=n;if(!(L(r)||L(i)))if(e.router&&l){let e=n.route||r,a=l.push(e).then(e=>(e||(_.value=r),e));t(`select`,r,i,{index:r,indexPath:i,route:e},a)}else _.value=r,t(`select`,r,i,{index:r,indexPath:i})},M=t=>{let n=v.value;_.value=(n[t]||_.value&&n[_.value]||n[e.defaultActive])?.index??t},N=e=>{let t=getComputedStyle(e),n=Number.parseInt(t.marginLeft,10),r=Number.parseInt(t.marginRight,10);return e.offsetWidth+n+r||0},F=()=>{if(!u.value)return-1;let e=Array.from(u.value?.childNodes??[]).filter(e=>e.nodeName!==`#text`||e.nodeValue),t=getComputedStyle(u.value),n=Number.parseInt(t.paddingLeft,10),r=Number.parseInt(t.paddingRight,10),i=u.value.clientWidth-n-r,a=0,o=0;return e.forEach((e,t)=>{e.nodeName!==`#comment`&&(a+=N(e),a<=i-64&&(o=t+1))}),o===e.length?-1:o},ee=e=>y.value[e].indexPath,I=(e,t=33.34)=>{let n;return()=>{n&&clearTimeout(n),n=setTimeout(()=>{e()},t)}},R=!0,z=()=>{if(p.value===F())return;let e=()=>{p.value=-1,o(()=>{p.value=F()})};R?e():I(e)(),R=!1};S(()=>e.defaultActive,e=>{v.value[e]||(_.value=``),M(e)}),S(()=>e.collapse,e=>{e&&(g.value=[])}),S(v.value,w);let B;T(()=>{e.mode===`horizontal`&&e.ellipsis?B=V(u,z).stop:B?.()});let H=x(!1);{let t=e=>{y.value[e.index]=e},n=e=>{delete y.value[e.index]};m(_e,k({props:e,openedMenus:g,items:v,subMenus:y,activeIndex:_,isMenuPopup:b,addMenuItem:e=>{v.value[e.index]=e},removeMenuItem:e=>{delete v.value[e.index]},addSubMenu:t,removeSubMenu:n,openMenu:E,closeMenu:O,handleMenuItemClick:j,handleSubMenuClick:A})),m(`${Q}${a.uid}`,{addSubMenu:t,removeSubMenu:n,mouseInChild:H,level:0})}c(()=>{e.mode===`horizontal`&&new fe(a.vnode.el,d.namespace.value)}),i({open:e=>{let{indexPath:t}=y.value[e];t.forEach(e=>E(e,t))},close:D,updateActiveIndex:M,handleResize:z});let U=ge(e,0);return()=>{let r=n.default?.call(n)??[],i=[];if(e.mode===`horizontal`&&u.value){let t=X(r),n=p.value===-1?t:t.slice(0,p.value),a=p.value===-1?[]:t.slice(p.value);a?.length&&e.ellipsis&&(r=n,i.push(h(be,{index:`sub-menu-more`,class:f.e(`hide-arrow`),popperOffset:e.popperOffset},{title:()=>h(re,{class:f.e(`icon-more`)},{default:()=>h(e.ellipsisIcon)}),default:()=>a})))}let a=e.closeOnClickOutside?[[Z,()=>{g.value.length&&(H.value||(g.value.forEach(e=>t(`close`,e,ee(e))),g.value=[]))}]]:[],o=C(h(`ul`,{key:String(e.collapse),role:`menubar`,ref:u,style:U.value,class:{[d.b()]:!0,[d.m(e.mode)]:!0,[d.m(`collapse`)]:e.collapse}},[...r,...i]),a);return e.collapseTransition&&e.mode===`vertical`?h(pe,()=>o):o}}}),we=R({index:{type:z([String,null]),default:null},route:{type:z([String,Object])},disabled:Boolean}),Te={click:e=>t(e.index)&&p(e.indexPath)},$=`ElMenuItem`,Ee=N(i({...i({name:$}),props:we,emits:Te,setup(t,{expose:i,emit:o}){let l=t;I(l.index)&&H($,`Missing required prop: "index"`);let u=s(),p=j(_e),m=P(`menu`),h=P(`menu-item`);p||q($,`can not inject root menu`);let{parentMenu:_,indexPath:y}=me(u,A(l,`index`)),x=j(`${Q}${_.value.uid}`);x||q($,`can not inject sub menu`);let S=r(()=>l.index===p.activeIndex),C=k({index:l.index,indexPath:y,active:S}),T=()=>{l.disabled||(p.handleMenuItemClick({index:l.index,indexPath:y.value,route:l.route}),o(`click`,C))};return c(()=>{x.addSubMenu(C),p.addMenuItem(C)}),a(()=>{x.removeSubMenu(C),p.removeMenuItem(C)}),i({parentMenu:_,rootMenu:p,active:S,nsMenu:m,nsMenuItem:h,handleClick:T}),(t,r)=>(b(),e(`li`,{class:v([f(h).b(),f(h).is(`active`,f(S)),f(h).is(`disabled`,t.disabled)]),role:`menuitem`,tabindex:`-1`,onClick:T},[f(_).type.name===`ElMenu`&&f(p).props.collapse&&t.$slots.title?(b(),d(f(oe),{key:0,effect:f(p).props.popperEffect,placement:`right`,"fallback-placements":[`left`],persistent:f(p).props.persistent},{content:D(()=>[w(t.$slots,`title`)]),default:D(()=>[n(`div`,{class:v(f(m).be(`tooltip`,`trigger`))},[w(t.$slots,`default`)],2)]),_:3},8,[`effect`,`persistent`])):(b(),e(g,{key:1},[w(t.$slots,`default`),w(t.$slots,`title`)],64))],2))}}),[[`__file`,`menu-item.vue`]]),De={title:String},Oe=N(i({...i({name:`ElMenuItemGroup`}),props:De,setup(t){let r=P(`menu-item-group`);return(t,i)=>(b(),e(`li`,{class:v(f(r).b())},[n(`div`,{class:v(f(r).e(`title`))},[t.$slots.title?w(t.$slots,`title`,{key:1}):(b(),e(g,{key:0},[u(y(t.title),1)],64))],2),n(`ul`,null,[w(t.$slots,`default`)])],2))}}),[[`__file`,`menu-item-group.vue`]]),ke=ee(Ce,{MenuItem:Ee,MenuItemGroup:Oe,SubMenu:be}),Ae=F(Ee);F(Oe);var je=F(be),Me=i({props:{collapsed:{type:Boolean,default:!1}},emits:[`click`],computed:{siteTitle(){return this.$store.state.site?.title||`AceData`},url(){let e=this.$store.state.site,t=`https://platform.acedata.cloud/favicon.ico`;return this.collapsed?e?.favicon||e?.logo||t:e?.logo||e?.favicon||t}}}),Ne=[`aria-label`],Pe=[`src`,`alt`];function Fe(t,r,i,a,o,s){return b(),e(`button`,{type:`button`,class:`brand-logo`,"aria-label":t.siteTitle,onClick:r[0]||=e=>t.$emit(`click`)},[n(`img`,{src:t.url,class:`brand-logo__image`,alt:t.siteTitle},null,8,Pe)],8,Ne)}var Ie=ce(Me,[[`render`,Fe],[`__scopeId`,`data-v-fefbbe27`]]),Le=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAC0CAMAAAAKE/YAAAAAMFBMVEX///+3t7f4+Pi8vLzAwMDExMTS0tLIyMjk5OTz8/PY2NjOzs7u7u7d3d3p6enh4eFVKkJDAAAIfUlEQVR4nNVd15akOAylyRRQ9f9/O02BZJtgBQszfR/2zPahsJCvguVUFJYop35ux66pq6r6+fn9T910bTv3U2najBXK9zw2PxE07fz+n0Qf+raOyetL3g9PS7vgzRUYULfvZyXuR5nAgLF/SuK3UuJN7gf0PbyErDiieuU1zKmLyFJ3Y9u+vmh//V9dXT/b5VN3f+HbFq82nGivHH6999Vv8rC7P+NFzfBlF56xvl/sEy1Xbc8mZ9m3R7bcrO0jl+vXJH7J0YY78UvYKNuDjpWNTQd9tzd5ks9ePUm92u877WMlp4dhR+Y2OYkYdh3XmKclc9iATVwoXyFLZouXIobuBpEXlK+QcYbK7gOF2NpMaN2Vmfdr71LGirAbW5N3lr4F1rckC0GQbQw6cqrM1XACvzOr5EjT+2q+L24Vk6/sRGL7no6t5un9eQE+7JG4r+wk3+e9iGfXwzyeZHLjzDGFt0fEBB564ymOeRwzCg8dHaZ9kx8NZGZ8+UyOv0bSW3o9q5Tac5+0luajjGfqpsT2krIuTeaKZGQf4UUIKpx6xFbo2nGD9HSlpJZAGfSQILVjV02Z4CQsJhD2UdbcJ/dwyRfpNvozwaLo4q/0nMhLIrMThJSZZ4EhiJd6Ugti43SvzCTlPKnZmUNZMV+u4cYKwp85XlfcTBi/s6Z+MZ2LxADhGZzUDU9m5zjIr0woQhLxasAHWS7E9TgZU/Z1EBEIjbzxQYYxOudOxu73qTBcUGEaIzqD1hi96W6JTgzRoDSI/UhmITP7yUPFSYqaagD1R4wJkP8VnT8nTwVQqnauN06QjvtCvYt2IL3Zm/Uk9jjDz0RmMLggwx3SOuIUSniGpJv3bAJo1SAFr9mKH8aI+LqkI0RFtoIh9/L76Cc8GLCDoxxSjyAHgxxFYSEzJ18Ggly4YHQHnCQ2LRoCGINXQirim0JYUJpDatf/p24PP4mVwSblSg6MEhDGuzNVg6J5o8nEvAPAGZiAfk5MDRXNqxcmx/AVHPMprx8G1TEHwOzqTByseTgoDRxYDT6akSh9YSMzr6aLidOeTGCj3EqDkdC8GU9Q9c6voYlyJzxy0sOxOnRs8C3sQpSR92DOO4EDCXkAzoA935bPTy8AIgTBCIIyvyZsExF/uM2Byfk9A7VafuksfdyygFmJcc35NZ7tT5xUYMNwJYcI/FouGP7xOyT1YBOh+aVcsCHHBWCHZHLTxOfxF6ZA8HP82P7ASv4BJj5PMNMO/g3+H9ghqrtnGm4hIJLAd7byVxg5asGCA+AH2N2meYHvKPxZmQRIGtyMaOMweC/ZXJJJdJE0CF27Bm0oK8kWLKSWHxeILB8s7xN8gmxFi0VIFAkNqd5KiI3S7JBqJ7Ssycb70vAL2LAofMiE9hkBrQvX4OTXNLS4eGpwA8KlaxaGKHOy4OWWcSVoXSZz9ohYYLaxpB8bv4V2aFGeFiYOvqTb74V2mHkQ8IXjBKhMuKrMJIoLOQlmVGIiIlyPmXdguwJ6d8J/CZ1H0m4iB1Gr4D569HjCZalPaNoxeWtd5jKf4TRkpy30syh3KbLXPVZsWdIIQUK6dO8Jl+dkbUB6GfRranwIWx3hUzeVi5fRmggtDA6b/dWO3ELkLiF4QldqoXOPxhe8QOjt57LUpXhguGUhtEUFUtq9EBzUQluQWrphIV1oA1JLm0R6VFqh0z21eH30XmjFdofbF14dgC5PG1zS0w9pjuYFF2UYL9KHiXJGYhhXJkwLEk1RvrEMZVWmpgvSVC1XtEtNlYOAL1JYrdESOg3lcGtFQsVGs+Nu++msHdiu0BNEQQ5vYKssIWxQx3JNc1AqnbTFmg3qSoKmYz0mb//S7QDU1k5Vdu+VSnUFyA3aBES1ca9zkqb4PPVQUUVG74OVRfUNSqencXh+UR1sUnfqgy6+qLrVn75QThRt0I26VG0FU4dbRNfE1ULpqVVBIZBTN/kJ0PBDxY6QEbpp5v27JFCxI5xm1k3oIxT+Q+Wowgl93dIJhHzqVrW5erd0QrdIxUE8wFXxcL9IBXSlSRcLuSnq3NR+OZBq4ZWD1FXr8sn9wivVEjcPwtVuKtd6XOKmWUzoQeY/dCczHBcTKpZtnr2QB104gN70ukm+QNaHzBJV7DhbIAt/040ERMMXnbUDAwOtgvZVsUo0KaCi9Omib/SCqleKhE7KSsNIIt7IkFXoi40MSBrNO28X+ooHOKxWqPpuoVHRh7FDo3+pyHsorOZyG5R0w5kPUZmJffYFIrLhTLi1DzFJT0X+aWaZ3JGtfcJNlCvesTOuIpAcLBrdRIms5g4s+jFlM0PFPYY6ul1VtDG4PJzwqQHnGGpKKlA1fVKN0VqxX31Tx1DjOTBXaRFvs3vaWdkniPIEF3hdGgEmxpev0VpeHNf8ZuiROMBhet0hMch9qkogR2wXbeSojHI22jd5ifp1cLbY9dHB8NWhJCbOgkYzBxpFzxH3wu74F++ro8ckWsM7a5l7/IuzVnAxJX1MojGQ3shHslKCPPimY+b+jYfmU0qONPIOj5rzK9lDi33OyQttVpEaglXXMFoabQVmqny3QxaBW4opM3o4CtwDJazWGZtAUMi12ONkAtGMrNGS/1QI5yb+CxciLmc8EwoDKEokefK6CBKPRf47Mj/MEIujvv+MzA/6kKQLCR7y18q5Y8AjiWryrR1T9uwp/RqJ3YUdGWBxYUeR2RzN7gThn6ifCrtLaA7X/dwG4xtusvg+24uVihzKtr/Cqrh7OFPdcVlYcXItmyHS7x67ROwyxxTceAHegqsLHVOQ4WLH00sdE5DhUsev2IbaznR95gKrCnDGi0oXDOmTRrmvhP3i712+u+LvXXO84u9dKL2Cf3V33X7+i6u7N/y5S9IdvOvoF0G/19GP9tfR/wPQ21eEI8clLwAAAABJRU5ErkJggg==`;export{je as a,Ae as i,Ie as n,ke as r,Le as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e,t}from"./rolldown-runtime--c01j_DQ.js";import{kt as n}from"./index-
|
|
1
|
+
import{o as e,t}from"./rolldown-runtime--c01j_DQ.js";import{kt as n}from"./index-B13Ic3iV.js";import{i as r,l as i,n as a,o,t as s}from"./lit-Czpkz5lw.js";import{a as c,i as l,n as u,o as d,r as f,t as p}from"./wui-text-IdpNh4yv.js";import{$ as m,G as h,H as g,J as _,K as v,Q as ee,U as y,W as b,X as x,Y as S,Z as C,a as w,et as te,g as T,i as ne,n as E,p as re,r as D,s as O,u as ie,v as ae}from"./ConstantsUtil-CiJQ7E9o.js";import{n as oe,t as se}from"./ConnectorUtil-BNHqGaBo.js";var ce=i`
|
|
2
2
|
:host {
|
|
3
3
|
position: relative;
|
|
4
4
|
background-color: var(--wui-color-gray-glass-002);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{hi as e}from"./constants-D3R0fBj4.js";import{Mn as t,Pn as n,Sn as r,dr as i,wr as a,xn as o}from"./index-B13Ic3iV.js";var s={namespaced:!0,state:i,mutations:{setModel:(e,t)=>{e.model=t},setModelGroup:(e,t)=>{e.modelGroup=t},setService:(e,t)=>{e.service=t},setCredential:(e,t)=>{e.credential=t},setConversations:(e,t)=>{e.conversations=t},setApplication:(e,t)=>{e.application=t},setApplications:(e,t)=>{e.applications=t},setPendingDraft:(e,t)=>{e.pendingDraft=t||``},resetAll:e=>{Object.assign(e,i())}},actions:{resetAll:({commit:e})=>{e(`resetAll`)},createCredential:async({commit:e,state:t})=>{let n=t.application;if(console.debug(`prepare to create credential for application for chat`,n),!n){console.error(`Application not found`);return}console.debug(`creating create credential for application for chat`,n);let{data:r}=await o.create({application_id:n?.id,host:window.location.origin});return console.debug(`created credential success`,r),e(`setCredential`,r),console.debug(`end createCredential`),r},setModel:async({commit:e},t)=>{e(`setModel`,t)},setModelGroup:async({commit:e},t)=>{e(`setModelGroup`,t)},getService:async({commit:t,state:n})=>{n.status.getService=a.Request;try{let{data:i}=await r.get(e);return n.status.getService=a.Success,t(`setService`,i),i}catch{n.status.getService=a.Error,t(`setService`,void 0)}},setService:async({commit:e},t)=>{console.debug(`set service for chat`,t),e(`setService`,t)},setCredential:async({commit:e},t)=>{console.debug(`set credential`,t),e(`setCredential`,t)},setApplication:async({commit:e,dispatch:t,rootState:n},r)=>{if(console.debug(`set application`,r),e(`setApplication`,r),console.debug(`application is set`),!r){console.debug(`application is null, return`);return}let i=n?.user?.id,a=r?.role===`grantee`,o=r?.credentials?.find(e=>e?.host===window.location.origin);!o&&a&&(o=r?.credentials?.find(e=>e?.user_id===i)),o?(console.debug(`credential exists, set credential`,o),e(`setCredential`,o)):a?(console.warn(`no credential available for granted application`,r),e(`setCredential`,void 0)):(console.debug(`credential not exists, start to create credential for application`,r),await t(`createCredential`))},setApplications:async({commit:e},t)=>{console.debug(`set applications for chat`,t),e(`setApplications`,t)},getApplications:async({commit:t,state:r})=>{console.debug(`start to get applications for chat`),r.status.getApplications=a.Request;try{let{data:i}=await n.getAll({user_id:`me`,service_id:e,affiliation:[`owner`,`granted`]});return console.debug(`get applications success for chat`,i),r.status.getApplications=a.Success,t(`setApplications`,i.items),console.debug(`set applications for chat`,i.items),i.items}catch(e){console.error(`get applications failed for chat`,e),r.status.getApplications=a.Error,t(`setApplications`,void 0),t(`setApplication`,void 0)}},setConversation:async({commit:e,state:t},n)=>{console.debug(`set conversation`,n);let r=t.conversations||[],i=r?.findIndex(e=>e.id===n.id);i>-1?r[i]=n:r?.unshift(n),e(`setConversations`,r),console.debug(`set conversation success`,r)},setConversations:async({commit:e},t)=>{console.debug(`set conversations`,t),e(`setConversations`,t)},getConversations:async({commit:e,state:n,rootState:r})=>{n.status.getConversations=a.Request;let i=n.credential?.token,o=n.modelGroup?.name;if(!i||!o)return n.status.getConversations=a.Error,e(`setConversations`,[]),[];try{let{data:s}=await t.getConversations({userId:r.user?.id,modelGroup:o},{token:i});return console.debug(`get conversations success`,s?.items?.length,`group=`,o),n.status.getConversations=a.Success,e(`setConversations`,s.items),s.items}catch{return n.status.getConversations=a.Error,e(`setConversations`,[]),[]}},getConversation:async({commit:e,state:n},r)=>{let i=n.credential?.token;if(!(!i||!r))try{let{data:a}=await t.getConversation(r,{token:i}),o=n.conversations||[],s=o.findIndex(e=>e.id===r),c=s>-1?{...o[s],...a}:a;if(s>-1){let t=[...o];t[s]=c,e(`setConversations`,t)}return c}catch(e){console.error(`getConversation failed`,r,e);return}}}};export{s as chat,s as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{A as e,Ai as t,B as n,C as r,D as i,E as a,F as o,H as s,I as c,L as l,M as u,N as d,O as f,P as p,R as m,S as h,T as g,V as _,_ as ee,a as v,b as y,c as b,d as x,f as S,g as te,h as ne,i as re,j as ie,k as ae,l as oe,m as se,n as C,o as w,p as T,r as E,s as D,t as O,u as k,v as A,w as j,x as M,y as N,z as P}from"./constants-D3R0fBj4.js";import{Ar as F,Mr as I,Vn as L,qt as R,wr as z}from"./index-B13Ic3iV.js";import{a as B,i as V,n as H,o as U,r as W}from"./codingBridgeNotify-CHgg7t3o.js";var G=()=>typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID().replace(/-/g,``):`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,K=()=>{try{return typeof localStorage<`u`&&localStorage.getItem(`cbDebug`)===`1`}catch{return!1}},q=(e,t)=>{if(!K())return;let n=t?.payload??{};console.debug(`[codingBridge]`,e,{type:t?.type,id:t?.id,node_id:t?.node_id??t?.from_node,action:n?.action,event:n?.event,session_id:n?.session_id,trace_id:n?.trace_id})},ce=class{ws;token;handlers;reconnectDelay=s;reconnectTimer;closedByUser=!1;constructor(e,t){this.token=e,this.handlers=t}get isOpen(){return this.ws?.readyState===WebSocket.OPEN}connect(){this.closedByUser=!1,this.open()}open(){if(this.ws&&(this.ws.readyState===WebSocket.OPEN||this.ws.readyState===WebSocket.CONNECTING))return;let e=`${t}?token=${encodeURIComponent(this.token)}`,n;try{n=new WebSocket(e)}catch(e){console.warn(`[codingBridge] failed to open socket`,e),this.scheduleReconnect();return}this.ws=n,n.onopen=()=>{this.reconnectDelay=s,this.handlers.onOpen?.()},n.onmessage=e=>this.onMessage(e),n.onclose=()=>{this.handlers.onClose?.(),this.closedByUser||this.scheduleReconnect()},n.onerror=()=>{n.close()}}onMessage(e){let t;try{t=JSON.parse(e.data)}catch{return}let r=t?.payload??{};switch(q(`recv`,t),t?.type){case n:this.handlers.onEvent?.(r,t?.from_node);break;case m:this.handlers.onNodesSnapshot?.(r.nodes??[]);break;case P:this.handlers.onNodeStatus?.(r.node_id,r.status);break;case te:this.handlers.onRelayError?.(r.code??`error`,r.message??``);break;default:break}}scheduleReconnect(){if(this.closedByUser||this.reconnectTimer)return;let e=this.reconnectDelay;this.reconnectTimer=setTimeout(()=>{this.reconnectTimer=void 0,this.open()},e),this.reconnectDelay=Math.min(this.reconnectDelay*2,_)}sendEnvelope(e,t){if(!this.isOpen)return;let n={v:2,id:G(),ts:Date.now(),type:e,...t};q(`send`,n),this.ws?.send(JSON.stringify(n))}sendToNode(e,t){this.sendEnvelope(ne,{node_id:e,payload:t})}listNodes(){this.sendEnvelope(T,{})}resume(e){this.sendEnvelope(se,{payload:{resume_from:e}})}close(){if(this.closedByUser=!0,this.reconnectTimer&&=(clearTimeout(this.reconnectTimer),void 0),this.ws){this.ws.onclose=null,this.ws.onerror=null,this.ws.onmessage=null,this.ws.onopen=null;try{this.ws.close()}catch{}this.ws=void 0}}},J,Y=()=>typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID().replace(/-/g,``):`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,X=(e,t,n)=>({id:Y(),session_id:e,kind:t,ts:Date.now(),...n}),Z=e=>{try{let t=JSON.parse(e);if(t&&typeof t==`object`)return t}catch{}return{answers:{}}},le=e=>{let t=Z(e).answers??{};return Object.entries(t).map(([e,t])=>`${e} → ${Array.isArray(t)?t.join(`, `):t}`).join(`
|
|
2
|
+
`)},ue=(e,t)=>{H({title:`Approval needed`,body:`Claude wants to use ${t.tool||`a tool`}. Tap to review.`,data:t},t=>{t.node_id&&e(`selectNode`,t.node_id)})},Q=(t,n,s,m,_)=>{let v=m?.event,b=m?.session_id,x=m?.trace_id,S=m?.seq;if(typeof S==`number`&&b){let e=s.lastSeq[b];if(e!==void 0&&S<=e)return;t(`setLastSeq`,{session_id:b,seq:S})}switch(b&&x&&t(`updateSession`,{session_id:b,trace_id:x}),v){case ie:t(`upsertSession`,{session_id:b,node_id:_,status:`running`,cwd:m.cwd,model:m.model,...m.effort===void 0?{}:{effort:m.effort},...m.permission_mode===void 0?{}:{permission_mode:m.permission_mode},trace_id:x});break;case i:{let e=m.sdk_session_id;b&&e&&e!==b&&t(`renameSession`,{from:b,to:e});break}case p:{let e=m.id;e&&s.events[b]?.find(t=>t.kind===`text`&&t.stream_id===e)?t(`appendDelta`,{session_id:b,stream_id:e,text:m.text??``}):t(`appendEvent`,X(b,`text`,{text:m.text??``,stream_id:e,streaming:!0,trace_id:x}));break}case d:{let e=m.id;e&&s.events[b]?.find(t=>t.kind===`text`&&t.stream_id===e)?t(`finalizeStream`,{session_id:b,stream_id:e,text:m.text}):t(`appendEvent`,X(b,`text`,{text:m.text,trace_id:x}));break}case o:t(`appendEvent`,X(b,`thinking`,{text:m.text,trace_id:x}));break;case l:t(`appendEvent`,X(b,`tool_use`,{tool:m.tool,tool_use_id:m.tool_use_id,input:m.input,trace_id:x}));break;case c:t(`appendEvent`,X(b,`tool_result`,{tool_use_id:m.tool_use_id,content:m.content,is_error:m.is_error,trace_id:x}));break;case h:t(`addPermission`,{request_id:m.request_id,session_id:b,node_id:_,tool:m.tool,input:m.input,title:m.title,display_name:m.display_name,description:m.description}),ue(n,{node_id:_,session_id:b,request_id:m.request_id,tool:m.display_name||m.title||m.tool});break;case M:for(let e of m.requests??[])t(`addPermission`,{request_id:e.request_id,session_id:e.session_id,node_id:_,tool:e.tool,input:e.input,title:e.title,display_name:e.display_name,description:e.description});break;case r:t(`removePermission`,m.request_id);break;case ae:t(`finalizeAllStreams`,{session_id:b}),t(`appendEvent`,X(b,`result`,{subtype:m.subtype,is_error:m.is_error,text:m.result,cost_usd:m.cost_usd,cut_uuid:m.cut_uuid,sdk_session_id:m.sdk_session_id,trace_id:x})),t(`updateSession`,{session_id:b,status:`idle`,cost_usd:m.cost_usd});break;case f:t(`appendEvent`,X(b,`notice`,{text:m.text,subtype:m.code,command:m.command,level:m.level}));break;case a:t(`finalizeAllStreams`,{session_id:b}),t(`appendEvent`,X(b,`error`,{text:m.message,trace_id:x})),t(`updateSession`,{session_id:b,status:`error`}),t(`updateStatus`,{key:`getHistoryDetail`,value:z.Success});break;case g:t(`finalizeAllStreams`,{session_id:b}),t(`updateSession`,{session_id:b,status:`closed`});break;case e:t(`rewindToCut`,{session_id:b,cut_uuid:m.cut_uuid}),m.prompt&&t(`appendEvent`,X(b,`prompt`,{text:m.prompt,trace_id:x})),t(`updateSession`,{session_id:b,status:`running`});break;case u:n(`resyncSession`,b);break;case j:for(let e of m.sessions??[])t(`upsertSession`,{session_id:e.session_id,node_id:_,status:e.status??`running`,started:!0,cwd:e.cwd,model:e.model,...e.effort===void 0?{}:{effort:e.effort},...e.permission_mode===void 0?{}:{permission_mode:e.permission_mode}});break;case y:if(_){t(`setHistory`,{node_id:_,sessions:m.sessions??[]}),t(`updateStatus`,{key:`getHistory`,value:z.Success});let e=s.historyRef;e&&e.node_id===_&&!s.currentSessionId&&n(`reattachSession`,e)}break;case N:de(t,s,m,_),t(`updateStatus`,{key:`getHistoryDetail`,value:z.Success});break;case A:t(`setDirectory`,{path:m.path,parent:m.parent??null,sep:m.sep??`/`,entries:m.entries??[],truncated:m.truncated,error:m.error});break;case ee:_&&t(`setCapabilities`,{node_id:_,capabilities:{providers:m.providers??[]}});break;default:break}},de=(e,t,n,r)=>{let i=n?.session_id,a=n?.provider===`codex`?`codex`:`claude`;if(!i||!r)return;let o=a===`claude`||a===`codex`,s=t.sessions[i],c=!!s&&(s.started===!0||s.status===`running`||s.status===`starting`),l=t.lastComposer?.[r]??{};e(`upsertSession`,{session_id:i,node_id:r,status:c?s.status:`idle`,cwd:n.cwd??s?.cwd??l.cwd,model:n.model??s?.model??l.model,effort:n.effort??s?.effort??l.effort,permission_mode:n.permission_mode??s?.permission_mode??l.permissionMode,provider:a,started:!!c,readonly:!o&&!c});let u=t.events[i]?.length??0,d=(n.events??[]).length,f=s?.status===`running`||s?.status===`starting`;c&&u>0&&(f||u>=d)||e(`setEvents`,{session_id:i,events:(n.events??[]).map((e,t)=>({id:Y(),session_id:i,kind:e.kind,ts:typeof e.ts==`number`?e.ts:Date.now()+t,text:e.text,tool:e.tool,tool_use_id:e.tool_use_id,input:e.input,content:e.content,is_error:e.is_error,subtype:e.subtype,cost_usd:e.cost_usd}))}),e(`setCurrentNode`,r),e(`setCurrentSession`,i),e(`setHistoryRef`,{node_id:r,provider:a,session_id:i})},$={namespaced:!0,state:L,mutations:{resetAll:e=>{Object.assign(e,L())},updateStatus:(e,t)=>{e.status[t.key]=t.value},setConnection:(e,t)=>{e.connection=t},setNodes:(e,t)=>{e.nodes=t},mergeNodeSnapshot:(e,t)=>{let n=new Set(t.map(e=>e.node_id));for(let t of e.nodes)t.status=n.has(t.node_id)?`online`:`offline`;for(let n of t)e.nodes.some(e=>e.node_id===n.node_id)||e.nodes.push({...n,status:`online`})},setNodeStatus:(e,t)=>{let n=e.nodes.find(e=>e.node_id===t.node_id);n&&(n.status=t.status)},setCurrentNode:(e,t)=>{e.currentNodeId=t},setCurrentSession:(e,t)=>{e.currentSessionId=t},upsertSession:(e,t)=>{e.sessions[t.session_id]={...e.sessions[t.session_id],...t},e.events[t.session_id]||(e.events[t.session_id]=[])},updateSession:(e,t)=>{let n=e.sessions[t.session_id];n&&(e.sessions[t.session_id]={...n,...t})},renameSession:(e,t)=>{let{from:n,to:r}=t;if(n===r||!e.sessions[n])return;e.sessions[r]={...e.sessions[r],...e.sessions[n],session_id:r},delete e.sessions[n];let i=e.events[n];i&&(i.length||!e.events[r]?.length)&&(e.events[r]=i),delete e.events[n],delete e.lastSeq[n],e.lastSeq[r]=0;for(let t of e.permissions)t.session_id===n&&(t.session_id=r);e.currentSessionId===n&&(e.currentSessionId=r),e.historyRef?.session_id===n&&(e.historyRef={...e.historyRef,session_id:r})},appendEvent:(e,t)=>{e.events[t.session_id]||(e.events[t.session_id]=[]),e.events[t.session_id].push(t)},truncateEventsBefore:(e,t)=>{let n=e.events[t.session_id];if(!n)return;let r=n.findIndex(e=>e.id===t.event_id);r>=0&&(e.events[t.session_id]=n.slice(0,r))},rewindToCut:(e,t)=>{let n=e.events[t.session_id];if(!n)return;if(!t.cut_uuid){e.events[t.session_id]=[];return}let r=n.findIndex(e=>e.kind===`result`&&e.cut_uuid===t.cut_uuid);r>=0&&(e.events[t.session_id]=n.slice(0,r+1))},setLastSeq:(e,t)=>{let n=e.lastSeq[t.session_id]??0;t.seq>n&&(e.lastSeq[t.session_id]=t.seq)},appendDelta:(e,t)=>{let n=e.events[t.session_id];if(!n)return;let r=n.find(e=>e.kind===`text`&&e.stream_id===t.stream_id);r&&(r.text=(r.text??``)+(t.text??``))},finalizeStream:(e,t)=>{let n=e.events[t.session_id];if(!n)return;let r=n.find(e=>e.kind===`text`&&e.stream_id===t.stream_id);r&&(typeof t.text==`string`&&(r.text=t.text),r.streaming=!1)},finalizeAllStreams:(e,t)=>{let n=e.events[t.session_id];if(n)for(let e of n)e.streaming&&=!1},setEvents:(e,t)=>{e.events[t.session_id]=t.events},setHistory:(e,t)=>{e.history[t.node_id]=t.sessions},setHistoryRef:(e,t)=>{e.historyRef=t},setDirectory:(e,t)=>{e.directory=t,e.directoryLoading=!1},setDirectoryLoading:(e,t)=>{e.directoryLoading=t},setLastComposer:(e,t)=>{e.lastComposer={...e.lastComposer,[t.node_id]:{...e.lastComposer[t.node_id],...t.prefs}}},setCapabilities:(e,t)=>{e.capabilities[t.node_id]=t.capabilities},addPermission:(e,t)=>{e.permissions.some(e=>e.request_id===t.request_id)||e.permissions.push(t)},removePermission:(e,t)=>{e.permissions=e.permissions.filter(e=>e.request_id!==t)},removeNodeData:(e,t)=>{delete e.history[t],delete e.capabilities[t],e.historyRef?.node_id===t&&(e.historyRef=void 0);for(let n of Object.values(e.sessions))n.node_id===t&&(delete e.sessions[n.session_id],delete e.events[n.session_id],delete e.lastSeq[n.session_id],e.currentSessionId===n.session_id&&(e.currentSessionId=void 0))}},actions:{resetAll:({commit:e})=>{e(`resetAll`)},getApplications:async()=>{},setApplication:async()=>{},getNodes:async({commit:e,rootState:t})=>{let n=t.token?.access;if(!n)return[];e(`updateStatus`,{key:`getNodes`,value:z.Request});try{let{data:t}=await R.getNodes({token:n});return e(`setNodes`,t.nodes??[]),e(`updateStatus`,{key:`getNodes`,value:z.Success}),t.nodes??[]}catch(t){throw e(`updateStatus`,{key:`getNodes`,value:z.Error}),t}},claimPair:async({commit:e,dispatch:t,rootState:n},r)=>{let i=n.token?.access;if(!i)throw Error(`not authenticated`);e(`updateStatus`,{key:`claimPair`,value:z.Request});try{let{data:n}=await R.claimPair(r.trim(),{token:i});return e(`updateStatus`,{key:`claimPair`,value:z.Success}),await t(`getNodes`),n.node_name}catch(t){throw e(`updateStatus`,{key:`claimPair`,value:z.Error}),t}},deleteNode:async({commit:e,dispatch:t,state:n,rootState:r},i)=>{let a=r.token?.access;if(!a)throw Error(`not authenticated`);e(`updateStatus`,{key:`deleteNode`,value:z.Request});try{await R.deleteNode(i,{token:a}),e(`removeNodeData`,i),n.currentNodeId===i&&(e(`setCurrentNode`,void 0),e(`setCurrentSession`,void 0)),e(`updateStatus`,{key:`deleteNode`,value:z.Success}),await t(`getNodes`)}catch(t){throw e(`updateStatus`,{key:`deleteNode`,value:z.Error}),t}},connect:({commit:e,dispatch:t,state:n,rootState:r})=>{let i=r.token?.access;i&&(J?.isOpen||(J?.close(),e(`setConnection`,`connecting`),J=new ce(i,{onOpen:()=>{e(`setConnection`,`connected`);let r={...n.lastSeq};Object.keys(r).length&&J?.resume(r),n.currentNodeId&&(t(`getHistory`,n.currentNodeId),t(`getCapabilities`,n.currentNodeId),t(`requestSessions`,n.currentNodeId),t(`requestPendingPermissions`,n.currentNodeId))},onClose:()=>e(`setConnection`,`disconnected`),onEvent:(r,i)=>Q(e,t,n,r,i),onNodesSnapshot:t=>{e(`mergeNodeSnapshot`,t)},onNodeStatus:(r,i)=>{e(`setNodeStatus`,{node_id:r,status:i}),i===`online`&&r===n.currentNodeId&&(t(`getHistory`,r),t(`getCapabilities`,r),t(`requestSessions`,r),t(`requestPendingPermissions`,r))},onRelayError:(e,t)=>console.warn(`[codingBridge] relay error`,e,t)}),J.connect()))},disconnect:({commit:e})=>{J?.close(),J=void 0,e(`setConnection`,`disconnected`)},selectNode:({commit:e,dispatch:t,state:n},r)=>{if(e(`setCurrentNode`,r),!r){e(`setCurrentSession`,void 0);return}let i=Object.values(n.sessions).filter(e=>e.node_id===r).map(e=>e.session_id);e(`setCurrentSession`,i.length?i[i.length-1]:void 0),t(`getHistory`,r),t(`getCapabilities`,r),t(`requestSessions`,r),t(`requestPendingPermissions`,r)},requestSessions:({state:e},t)=>{let n=t??e.currentNodeId;!n||!J||J.sendToNode(n,{action:D})},requestPendingPermissions:({state:e},t)=>{let n=t??e.currentNodeId;!n||!J||J.sendToNode(n,{action:v})},enableNotifications:async({dispatch:e,rootState:t})=>{let n=t.token?.access;if(!n)return`unsupported`;if(I()){let t=await W(t=>{t?.node_id&&(e(`selectNode`,t.node_id),e(`requestPendingPermissions`,t.node_id))});return t?(await R.savePushSubscription({kind:F()?`apns`:`fcm`,token:t,ua:navigator.userAgent},{token:n}),`enabled`):`denied`}let r=await V();if(r===`unsupported`)return`unsupported`;if(r!==`granted`)return`denied`;try{let{data:e}=await R.getPushConfig();if(e.web_push_enabled&&e.vapid_public_key){let t=await B(e.vapid_public_key);t&&await R.savePushSubscription({kind:`webpush`,subscription:t,ua:navigator.userAgent},{token:n})}}catch(e){console.warn(`[codingBridge] web push setup skipped`,e)}return`enabled`},disableNotifications:async({rootState:e})=>{let t=e.token?.access;if(I()||!t)return;let n=await U();if(n)try{await R.deletePushSubscription({endpoint:n},{token:t})}catch(e){console.warn(`[codingBridge] failed to deregister web push`,e)}},newSession:({commit:e})=>{e(`setCurrentSession`,void 0),e(`setHistoryRef`,void 0)},sendPrompt:({commit:e,state:t},n)=>{let r=t.currentNodeId,i=n.prompt?.trim(),a=n.images?.length?n.images:void 0,o=n.attachments?.length?n.attachments:void 0;if(!r||!J||!i&&!a&&!o)return;let s=Y(),c=t.currentSessionId,l=c?t.sessions[c]:void 0;if(!l||!l.started){let t=l?.provider||n.provider||`claude`;l?(c=l.session_id,e(`updateSession`,{session_id:c,status:`starting`,trace_id:s,...n.cwd?{cwd:n.cwd}:{},...n.model===void 0?{}:{model:n.model},...n.effort===void 0?{}:{effort:n.effort},...n.permissionMode===void 0?{}:{permission_mode:n.permissionMode}})):(c=Y(),e(`upsertSession`,{session_id:c,node_id:r,status:`starting`,cwd:n.cwd,model:n.model,effort:n.effort,permission_mode:n.permissionMode,provider:t,trace_id:s}),e(`setCurrentSession`,c),e(`setHistoryRef`,{node_id:r,provider:t,session_id:c})),e(`appendEvent`,X(c,`prompt`,{text:i,images:a,attachments:o,trace_id:s})),e(`updateSession`,{session_id:c,started:!0}),J.sendToNode(r,{action:S,session_id:c,trace_id:s,prompt:i,cwd:n.cwd||l?.cwd||void 0,model:n.model||l?.model||void 0,permission_mode:n.permissionMode||`bypassPermissions`,provider:t,effort:n.effort||void 0,images:a,attachments:o,resume_session_id:l?.session_id||void 0})}else e(`updateSession`,{session_id:c,trace_id:s}),e(`appendEvent`,X(c,`prompt`,{text:i,images:a,attachments:o,trace_id:s})),e(`updateSession`,{session_id:c,status:`running`,model:n.model||void 0,...n.effort===void 0?{}:{effort:n.effort},...n.permissionMode===void 0?{}:{permission_mode:n.permissionMode}}),J.sendToNode(r,{action:x,session_id:c,trace_id:s,prompt:i,model:n.model??``,...n.effort===void 0?{}:{effort:n.effort},...n.permissionMode===void 0?{}:{permission_mode:n.permissionMode},images:a,attachments:o})},editPrompt:({commit:e,state:t},n)=>{let r=t.currentNodeId,i=t.currentSessionId,a=n.prompt?.trim();if(!r||!i||!J||!a)return;let o=t.sessions[i],s=t.events[i]??[],c=s.findIndex(e=>e.id===n.eventId);if(!o||c<0)return;let l;for(let e=c-1;e>=0;e--)if(s[e].kind===`result`&&s[e].cut_uuid){l=s[e].cut_uuid;break}let u=n.images?.length?n.images:void 0,d=n.attachments?.length?n.attachments:void 0,f=Y();e(`truncateEventsBefore`,{session_id:i,event_id:n.eventId}),e(`updateSession`,{session_id:i,status:`running`,trace_id:f,model:n.model||o.model||void 0,...n.effort===void 0?{}:{effort:n.effort},...n.permissionMode===void 0?{}:{permission_mode:n.permissionMode}}),e(`appendEvent`,X(i,`prompt`,{text:a,images:u,attachments:d,trace_id:f})),J.sendToNode(r,{action:oe,session_id:i,trace_id:f,cut_uuid:l,prompt:a,model:n.model||o.model||void 0,permission_mode:n.permissionMode||void 0,effort:n.effort||void 0,images:u,attachments:d,restore_code:!!n.restoreCode})},retryLastPrompt:({commit:e,dispatch:t,state:n})=>{let r=n.currentSessionId;if(!r)return;let i=n.sessions[r],a=[...n.events[r]??[]].reverse().find(e=>e.kind===`prompt`);!i||!a||(e(`updateSession`,{session_id:r,started:!1}),t(`sendPrompt`,{prompt:a.text??``,cwd:i.cwd,model:i.model,provider:i.provider,images:a.images,attachments:a.attachments}))},interruptSession:({state:e})=>{let t=e.currentSessionId,n=e.currentNodeId;!t||!n||!J||J.sendToNode(n,{action:k,session_id:t})},closeSession:({commit:e,state:t},n)=>{let r=n??t.currentSessionId;if(!r)return;let i=t.sessions[r]?.node_id??t.currentNodeId;i&&J&&J.sendToNode(i,{action:b,session_id:r}),e(`updateSession`,{session_id:r,status:`closed`}),t.currentSessionId===r&&e(`setCurrentSession`,void 0)},resolvePermission:({commit:e,state:t},n)=>{let r=t.permissions.find(e=>e.request_id===n.request_id);r&&(J?.sendToNode(r.node_id,{action:w,request_id:n.request_id,decision:n.decision}),e(`removePermission`,n.request_id))},answerQuestion:({commit:e,state:t},n)=>{let r=t.permissions.find(e=>e.request_id===n.request_id);r&&(J?.sendToNode(r.node_id,{action:w,request_id:n.request_id,decision:`allow`,answer:Z(n.output),answer_text:le(n.output)}),e(`removePermission`,n.request_id))},getHistory:({commit:e,state:t},n)=>{let r=n??t.currentNodeId;!r||!J||(e(`updateStatus`,{key:`getHistory`,value:z.Request}),J.sendToNode(r,{action:re,limit:200}))},getHistoryDetail:({commit:e},t)=>{!t?.node_id||!t?.session_id||!J||(e(`updateStatus`,{key:`getHistoryDetail`,value:z.Request}),J.sendToNode(t.node_id,{action:E,provider:t.provider,session_id:t.session_id}),setTimeout(()=>e(`updateStatus`,{key:`getHistoryDetail`,value:z.Success}),12e3))},reattachSession:({state:e,commit:t,dispatch:n},r)=>{!r?.node_id||!r?.session_id||(t(`setCurrentNode`,r.node_id),t(`setCurrentSession`,r.session_id),n(`getHistoryDetail`,r),n(`requestSessions`,r.node_id),n(`requestPendingPermissions`,r.node_id),J?.resume({[r.session_id]:e.lastSeq[r.session_id]??0}))},resyncSession:({state:e,dispatch:t},n)=>{let r=e.sessions[n];r?.node_id&&t(`getHistoryDetail`,{node_id:r.node_id,session_id:n,provider:r.provider??`claude`})},browseDir:({commit:e,state:t},n)=>{let r=t.currentNodeId;!r||!J||(e(`setDirectoryLoading`,!0),J.sendToNode(r,{action:C,path:n||void 0}))},clearDirectory:({commit:e})=>{e(`setDirectory`,void 0)},getCapabilities:({state:e},t)=>{let n=t??e.currentNodeId;!n||!J||J.sendToNode(n,{action:O})}}};export{$ as codingBridge,$ as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-
|
|
2
|
-
import{t as e}from"./preload-helper-zJ_50EbN.js";import{Mr as t}from"./index-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-Dt2Uak2a.js","assets/index-B13Ic3iV.js","assets/rolldown-runtime--c01j_DQ.js","assets/preload-helper-zJ_50EbN.js","assets/constants-D3R0fBj4.js","assets/vendor-chart-BJCvKk8-.js","assets/vendor-axios-Ck2ffRoh.js","assets/button-BydTr5nV.js","assets/use-deprecated-B-NFNg3W.js","assets/install-CmiepWqE.js","assets/en-CpRrS3Ur.js","assets/runtime-B1Eal4u3.js","assets/vendor-vue-CCKiwo0U.js","assets/vendor-dayjs-C9ICuEWn.js","assets/use-dialog-BA0DNk5w.js","assets/teleport-BEkn5-id.js","assets/aria-CQaCu-Fx.js","assets/event-BGnHezxC.js","assets/scroll-CgpW_lTC.js","assets/vnode-BKrYEsqE.js","assets/use-aria-QsRrwtXj.js","assets/vendor-vue-router-WDnlh53U.js","assets/index-B8H7clao.css","assets/esm-CnTRoxq5.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-zJ_50EbN.js";import{Mr as t}from"./index-B13Ic3iV.js";var n=`/sw.js`,r=()=>typeof window<`u`&&`Notification`in window,i=()=>typeof navigator<`u`&&`serviceWorker`in navigator,a=()=>i()&&`PushManager`in window,o=()=>r()?Notification.permission:`unsupported`,s=e=>{let t=(e+`=`.repeat((4-e.length%4)%4)).replace(/-/g,`+`).replace(/_/g,`/`),n=atob(t),r=new Uint8Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);return r},c=async()=>{if(!i())return null;try{return await navigator.serviceWorker.getRegistration(n)??await navigator.serviceWorker.register(n)}catch(e){return console.warn(`[codingBridge] service worker registration failed`,e),null}},l=async()=>{if(!r())return`unsupported`;if(Notification.permission!==`default`)return Notification.permission;try{return await Notification.requestPermission()}catch{return`denied`}},u=(e,n)=>{if(!(typeof document<`u`&&document.visibilityState===`visible`)){if(t()){d(e);return}if(!(!r()||Notification.permission!==`granted`))try{let t=new Notification(e.title,{body:e.body,tag:e.data.request_id||`coding-bridge-permission`,data:e.data});t.onclick=()=>{try{window.focus()}catch{}n?.(e.data),t.close()}}catch(e){console.warn(`[codingBridge] failed to raise local notification`,e)}}},d=async t=>{try{let{LocalNotifications:n}=await e(async()=>{let{LocalNotifications:e}=await import(`./esm-Dt2Uak2a.js`);return{LocalNotifications:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));if((await n.checkPermissions()).display!==`granted`&&(await n.requestPermissions()).display!==`granted`)return;await n.schedule({notifications:[{id:f(t.data.request_id||`permission`),title:t.title,body:t.body,extra:t.data}]})}catch(e){console.warn(`[codingBridge] native local notification failed`,e)}},f=e=>{let t=0;for(let n=0;n<e.length;n++)t=t*31+e.charCodeAt(n)|0;return Math.abs(t)%2147483e3},p=async e=>{if(!a()||!e||await l()!==`granted`)return null;let t=await c();if(!t)return null;try{return(await t.pushManager.getSubscription()??await t.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:s(e)})).toJSON()}catch(e){return console.warn(`[codingBridge] web push subscribe failed`,e),null}},m=async()=>{if(!a())return null;let e=await(await c())?.pushManager.getSubscription();if(!e)return null;let t=e.endpoint;try{await e.unsubscribe()}catch{}return t},h=async n=>{if(!t())return null;try{let{PushNotifications:t}=await e(async()=>{let{PushNotifications:e}=await import(`./esm-CnTRoxq5.js`);return{PushNotifications:e}},__vite__mapDeps([23,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22])),r=await t.requestPermissions();if(r.receive!==`granted`)return console.warn(`[codingBridge] push permission not granted (receive=${r.receive})`),null;let i=await new Promise(e=>{let n=setTimeout(()=>{console.warn(`[codingBridge] push registration timed out — no device token`),e(null)},1e4);t.addListener(`registration`,t=>{clearTimeout(n),e(t.value)}),t.addListener(`registrationError`,t=>{clearTimeout(n),console.warn(`[codingBridge] push registrationError`,t),e(null)}),t.register()});return n&&t.addListener(`pushNotificationActionPerformed`,e=>{n(e.notification?.data??{})}),i}catch(e){return e?.code===`UNIMPLEMENTED`?console.warn(`[codingBridge] PushNotifications plugin not available in this build`,e):console.warn(`[codingBridge] native push registration failed`,e),null}};export{p as a,l as i,u as n,m as o,h as r,r as s,o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,Bt as t,D as n,E as r,F as i,N as a,O as o,Ot as s,P as c,Pt as l,Q as u,Vt as d,Wt as f,Z as p,b as m,bt as h,ct as g,dt as _,et as v,rt as y,ut as b,v as x,y as S,z as C,zt as w}from"./vendor-chart-BJCvKk8-.js";import{a as T,c as E,i as D,t as O}from"./install-CmiepWqE.js";import{i as k,n as A,r as j,s as M}from"./runtime-B1Eal4u3.js";import{Ct as N,_ as P,l as ee,m as F,nt as I,wt as L}from"./use-deprecated-B-NFNg3W.js";import{t as R}from"./castArray-B2xuZZNf.js";import{r as z,t as B}from"./event-BGnHezxC.js";import{t as V}from"./collapse-transition-C9jp2nDh.js";import{Kr as H}from"./index-
|
|
1
|
+
import{A as e,Bt as t,D as n,E as r,F as i,N as a,O as o,Ot as s,P as c,Pt as l,Q as u,Vt as d,Wt as f,Z as p,b as m,bt as h,ct as g,dt as _,et as v,rt as y,ut as b,v as x,y as S,z as C,zt as w}from"./vendor-chart-BJCvKk8-.js";import{a as T,c as E,i as D,t as O}from"./install-CmiepWqE.js";import{i as k,n as A,r as j,s as M}from"./runtime-B1Eal4u3.js";import{Ct as N,_ as P,l as ee,m as F,nt as I,wt as L}from"./use-deprecated-B-NFNg3W.js";import{t as R}from"./castArray-B2xuZZNf.js";import{r as z,t as B}from"./event-BGnHezxC.js";import{t as V}from"./collapse-transition-C9jp2nDh.js";import{Kr as H}from"./index-B13Ic3iV.js";var U=e=>M(e)||t(e)||l(e),W=A({accordion:Boolean,modelValue:{type:j([Array,String,Number]),default:()=>H([])},expandIconPosition:{type:j([String]),default:`right`},beforeCollapse:{type:j(Function)}}),G={[z]:U,[B]:U},K=Symbol(`collapseContextKey`),q=`ElCollapse`,J=(e,t)=>{let n=h(R(e.modelValue)),r=r=>{n.value=r;let i=e.accordion?n.value[0]:n.value;t(z,i),t(B,i)},i=t=>{if(e.accordion)r([n.value[0]===t?``:t]);else{let e=[...n.value],i=e.indexOf(t);i>-1?e.splice(i,1):e.push(t),r(e)}};return g(()=>e.modelValue,()=>n.value=R(e.modelValue),{deep:!0}),u(K,{activeNames:n,handleItemClick:async t=>{let{beforeCollapse:n}=e;if(!n){i(t);return}let r=n(t);[w(r),k(r)].includes(!0)||L(q,"beforeCollapse must return type `Promise<boolean>` or `boolean`"),w(r)?r.then(e=>{e!==!1&&i(t)}).catch(e=>{N(q,`some error occurred: ${e}`)}):r&&i(t)}}),{activeNames:n,setActiveNames:r}},Y=e=>{let t=E(`collapse`);return{rootKls:r(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}},X=T(i({...i({name:`ElCollapse`}),props:W,emits:G,setup(t,{expose:n,emit:r}){let i=t,{activeNames:a,setActiveNames:o}=J(i,r),{rootKls:c}=Y(i);return n({activeNames:a,setActiveNames:o}),(t,n)=>(p(),e(`div`,{class:d(s(c))},[v(t.$slots,`default`)],2))}}),[[`__file`,`collapse.vue`]]),Z=A({title:{type:String,default:``},name:{type:j([String,Number]),default:void 0},icon:{type:F,default:P},disabled:Boolean}),Q=e=>{let t=C(K),{namespace:n}=E(`collapse`),i=h(!1),a=h(!1),o=ee(),c=r(()=>o.current++),l=r(()=>e.name??`${n.value}-id-${o.prefix}-${s(c)}`);return{focusing:i,id:c,isActive:r(()=>t?.activeNames.value.includes(s(l))),handleFocus:()=>{setTimeout(()=>{a.value?a.value=!1:i.value=!0},50)},handleHeaderClick:n=>{e.disabled||n.target?.closest(`input, textarea, select`)||(t?.handleItemClick(s(l)),i.value=!1,a.value=!0)},handleEnterClick:e=>{e.target?.closest(`input, textarea, select`)||(e.preventDefault(),t?.handleItemClick(s(l)))}}},te=(e,{focusing:t,isActive:n,id:i})=>{let a=E(`collapse`),o=r(()=>[a.b(`item`),a.is(`active`,s(n)),a.is(`disabled`,e.disabled)]),c=r(()=>[a.be(`item`,`header`),a.is(`active`,s(n)),{focusing:s(t)&&!e.disabled}]),l=r(()=>[a.be(`item`,`arrow`),a.is(`active`,s(n))]);return{itemTitleKls:r(()=>[a.be(`item`,`title`)]),arrowKls:l,headKls:c,rootKls:o,itemWrapperKls:r(()=>a.be(`item`,`wrap`)),itemContentKls:r(()=>a.be(`item`,`content`)),scopedContentId:r(()=>a.b(`content-${s(i)}`)),scopedHeadId:r(()=>a.b(`head-${s(i)}`))}},$=T(i({...i({name:`ElCollapseItem`}),props:Z,setup(t,{expose:r}){let i=t,{focusing:l,id:u,isActive:h,handleFocus:g,handleHeaderClick:C,handleEnterClick:w}=Q(i),{arrowKls:T,headKls:E,rootKls:D,itemTitleKls:O,itemWrapperKls:k,itemContentKls:A,scopedContentId:j,scopedHeadId:M}=te(i,{focusing:l,isActive:h,id:u});return r({isActive:h}),(t,r)=>(p(),e(`div`,{class:d(s(D))},[n(`div`,{id:s(M),class:d(s(E)),"aria-expanded":s(h),"aria-controls":s(j),"aria-describedby":s(j),tabindex:t.disabled?-1:0,role:`button`,onClick:s(C),onKeydown:S(m(s(w),[`stop`]),[`space`,`enter`]),onFocus:s(g),onBlur:e=>l.value=!1},[n(`span`,{class:d(s(O))},[v(t.$slots,`title`,{isActive:s(h)},()=>[a(f(t.title),1)])],2),v(t.$slots,`icon`,{isActive:s(h)},()=>[c(s(I),{class:d(s(T))},{default:b(()=>[(p(),o(y(t.icon)))]),_:1},8,[`class`])])],42,[`id`,`aria-expanded`,`aria-controls`,`aria-describedby`,`tabindex`,`onClick`,`onKeydown`,`onFocus`,`onBlur`]),c(s(V),null,{default:b(()=>[_(n(`div`,{id:s(j),role:`region`,class:d(s(k)),"aria-hidden":!s(h),"aria-labelledby":s(M)},[n(`div`,{class:d(s(A))},[v(t.$slots,`default`)],2)],10,[`id`,`aria-hidden`,`aria-labelledby`]),[[x,s(h)]])]),_:3})],2))}}),[[`__file`,`collapse-item.vue`]]),ne=O(X,{CollapseItem:$}),re=D($);export{re as n,ne as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"button.setup":{message:`Inställningar`,description:`Text i knappen för att göra inställningar`},"button.start":{message:`Starta`,description:`Text i knappen för att påbörja vissa åtgärder`},"button.copy":{message:`Kopiera`,description:`Text i knappen för att kopiera något`},"button.copied":{message:`Kopierad`,description:`Text i knappen för att indikera att innehållet har kopierats`},"button.restart":{message:`Återställ`,description:`Text i knappen för att återställa något`},"button.preview":{message:`Förhandsgranska`,description:`Text i knappen för att öppna en förhandsvisning av en fil via URL`},"button.seeRawImage":{message:`Visa originalbild`,description:`Text i knappen för att visa den ursprungliga bilden`},"button.seeRawVideo":{message:`Visa video`,description:`Text i knappen för att visa den ursprungliga videon`},"button.edit":{message:`Redigera`,description:`Text i knappen för att redigera innehåll`},"button.login":{message:`Logga in`,description:`Text i knappen för att logga in`},"button.logout":{message:`Logga ut`,description:`Text i knappen för att logga ut`},"button.new":{message:`Ny`,description:`Text i knappen för att skapa ett nytt objekt`},"button.delete":{message:`Ta bort`,description:`Text i knappen för att ta bort innehåll`},"button.deletePermanently":{message:`Radera kontot permanent`,description:`Final red delete button at the bottom of the delete confirmation dialog`},"button.confirm":{message:`Bekräfta`,description:`Text i knappen för att bekräfta en åtgärd`},"button.cancel":{message:`Avbryt`,description:`Text i knappen för att avbryta en åtgärd`},"button.close":{message:`Stäng`,description:`Text i knappen för att stänga en dialogruta eller panel`},"button.expand":{message:`Expandera`,description:`Knappens text som används för att öppna en fullskärmsredigerare för inmatning av tips.`},"button.alert":{message:`Varning`,description:`Text i knappen för att utfärda en varning`},"button.info":{message:`Information`,description:`Text i knappen för att visa information`},"button.publish":{message:`Publicera`,description:`Text i knappen för att publicera innehåll`},"button.watch":{message:`Titta`,description:`Text i knappen för att titta på något`},"button.verify":{message:`Verifiera identitet`,description:`Text i knappen för att låta användaren verifiera sin identitet`},"button.profile":{message:`Profil`,description:`Text i knappen för att visa användarens profil`},"button.console":{message:`Konsol`,description:`Text i knappen för att visa konsolsidan för att kontrollera något på webbsidan`},"button.learn":{message:`Lär dig`,description:`Text i knappen för att låta användaren lära sig något`},"button.buy":{message:`Köp`,description:`Text i knappen för att låta användaren köpa något`},"button.try":{message:`Prova`,description:`Text i knappen för att låta användaren prova något`},"button.startForFree":{message:`Börja gratis`,description:`Text i knappen för att låta användaren börja gratis`},"button.download":{message:`Ladda ner`,description:`Text i knappen för att ladda ner filer (som ljud, video, bilder)`},"button.downloadAndroid":{message:`Ladda ner Android`,description:`Text i knappen för att ladda ner Android-installationspaketet`},"button.downloadIos":{message:`Ladda ner iOS-installationspaket`,description:`Text i knappen för att ladda ner iOS-installationspaketet`},"button.installIos":{message:`Installera iOS`,description:`Text i knappen för att installera iOS-appen`},"button.apply":{message:`Ansök`,description:`Text i knappen för att låta användaren ansöka om API-tjänst`},"button.refresh":{message:`Uppdatera`,description:`Text i knappen för att uppdatera sidan`},"button.pay":{message:`Betala`,description:`Text i knappen för att låta användaren betala för tjänster`},"button.repay":{message:`Fortsätt betala`,description:`Text i knappen för att låta användaren fortsätta betala för tjänster`},"button.applied":{message:`Ansökt`,description:`Text i knappen för att visa att användaren har ansökt om tjänsten`},"button.acquire":{message:`Få`,description:`Text i knappen för att låta användaren få API-tjänstens token eller nyckel`},"button.fillExample":{message:`Fyll i exempel`,description:`Text i knappen för att låta användaren fylla i exempeldata`},"button.buyMore":{message:`Toppa upp`,description:`Text i knappen för att låta användaren toppa upp. Engelsk översättning måste vara 'Top Up', svensk översättning är 'Toppa upp'.`},"button.update":{message:`Uppdatera`,description:`Text i knappen för att uppdatera innehåll`},"button.view":{message:`Visa`,description:`Text i knappen för att visa något`},"button.create":{message:`Skapa`,description:`Text i knappen för att skapa något`},"button.referralEarnings":{message:`Rekommenderade intäkter`,description:`Text i knappen som visar rekommenderade intäkter, vilket innebär att användaren kan tjäna pengar genom att bjuda in andra att använda tjänsten.`},"button.finish":{message:`Färdig`,description:`Text i knappen för att slutföra en åtgärd`},"entity.id":{message:`ID`,description:`Visar den unika identifieraren för en enhet`},"entity.type":{message:`Typ`,description:`Visar typen av enhet`},"entity.website":{message:`Ace Data Cloud`,description:`Webbplatsens namn, ingen översättning behövs, behåll som 'Ace Data Cloud'`},"entity.copyright":{message:`Upphovsrätt`,description:`Text som visar upphovsrätt`},"entity.platform":{message:`Plattform`,description:`Text som indikerar att detta är en API-tjänstplattform`},"entity.title":{message:`Titel`,description:`Titeln på enheten`},"entity.icon":{message:`Ikon`,description:`Ikonen för enheten`},"entity.status":{message:`Status`,description:`Status för enheten`},"status.loading":{message:`Laddar...`,description:`Statusmeddelande som visas när innehållet laddas`},"error.appleSignInFailed":{message:`Det gick inte att logga in med Apple. Försök igen eller använd en annan inloggningsmetod.`,description:`Error toast shown when native Apple sign-in fails for a reason other than user cancellation`},"error.loginLinkExpired":{message:`Login link expired. Please sign in again.`,description:`Shown on the desktop client when an OAuth callback is dropped (state mismatch or expired).`},"entity.operation":{message:`Åtgärd`,description:`Åtgärden för enheten`},"entity.description":{message:`Beskrivning`,description:`Beskrivningen av enheten`},"entity.createdAt":{message:`Skapad`,description:`Tiden då enheten skapades`},"entity.updatedAt":{message:`Uppdaterad`,description:`Tiden då enheten uppdaterades`},"entity.order":{message:`Beställning`,description:`Beställningen för enheten, som innehåller pengar och tjänsteinformation som användaren behöver betala för`},"message.noTasks":{message:`Inga historiska uppgifter, börja en ny uppgift~`,description:`Meddelande när det inte finns några uppgifter`},"message.usedAmount":{message:`Använt belopp`,description:`Visar det belopp som har använts för tjänsten`},"message.mobileAppDescription":{message:`Använd AceData direkt på mobilen, för närvarande tillgänglig för nedladdning av Android APK, iOS-installationspaket kommer att göras tillgängligt efter signering.`,description:`Beskrivning på nedladdningssidan för mobilapplikationen`},"message.mobileAndroidHint":{message:`För Android-telefoner och surfplattor, skanna för att ladda ner den senaste APK.`,description:`Beskrivning på Android-nedladdningskortet`},"message.mobileAndroidPending":{message:`Android-installationspaketet är inte klart än, försök igen senare.`,description:`Meddelande när Android-installationspaketet inte är tillgängligt`},"message.mobileAvailableNow":{message:`Android är tillgänglig för nedladdning`,description:`Visar att Android nu kan laddas ner`},"message.mobileSecureDelivery":{message:`Säker CDN-distribution`,description:`Betonar att nedladdningslänken levereras via CDN`},"message.mobileDirectInstall":{message:`Direkt APK-installation`,description:`Beskriver att Android-installationen är en direkt APK-installation`},"message.mobileLatestRelease":{message:`Aktuell offentlig version`,description:`Visar att den aktuella versionen är den senaste offentliga versionen`},"message.mobileSharedAccount":{message:`Dela konto och kvot med webbversionen`,description:`Förklarar att mobilversionen delar konto med webbversionen`},"message.mobileIosHint":{message:`För iPhone och iPad, kan installeras direkt online; om systemet blockerar kan du först ladda ner IPA och sedan distribuera.`,description:`Beskrivning på iOS-nedladdningskortet`},"message.mobileIosPending":{message:`iOS-installationspaketet är inte tillgängligt för nedladdning än, kommer att göras tillgängligt efter att Apple-certifikat och beskrivningsfil är klara.`,description:`Meddelande när iOS-installationspaketet inte är tillgängligt`},"message.mobileComingSoon":{message:`Kommer snart`,description:`Short status label shown on a platform card (e.g. iOS) while its build is being prepared`},"button.getOnGooglePlay":{message:`Hämta på Google Play`,description:`Button label that opens the app's Google Play Store listing`},"message.mobileApkFallback":{message:`Ingen åtkomst till Google Play? Ladda ner APK-filen direkt.`,description:`Shown next to a secondary button offering a direct APK download for users who cannot access Google Play`},"message.mobilePlayStoreHint":{message:`Skanna för att öppna Google Play`,description:`Hint under the QR code explaining that scanning it opens the Google Play listing`},"message.mobileInstallNote":{message:`Vid första installationen av företags- eller Ad Hoc-paket på iOS kan systemet kräva att du först litar på certifikatet i 'Inställningar > Allmänt > VPN och enhetsadministration'.`,description:`Meddelande om installation av mobilapplikation`},"title.mobileApp":{message:`Nedladdning för mobil`,description:`Titel på nedladdningssidan för mobilapplikationen`},"title.mobileFastAccess":{message:`Snabbare åtkomst, ingen appbutik`,description:`Titel på fördelar på nedladdningssidan, betonar snabb installation`},"title.mobileTrustedRelease":{message:`Versioner centralt hanterade, stabil distribution`,description:`Titel på fördelar på nedladdningssidan, betonar stabilitet i versioner och distribution`},"title.mobileUnifiedExperience":{message:`Mobil och webbupplevelse är enhetlig`,description:`Titel på fördelar på nedladdningssidan, betonar enhetlig upplevelse`},"nav.mobileApp":{message:`Mobil`,description:`Nedladdningslänk för mobilapplikation i navigeringen`},"message.mobileFastAccess":{message:`Användare kan skanna för att installera direkt på mobilen, eller ladda ner APK på skrivbordet och sedan distribuera till teammedlemmar, lämpligt för snabba tester och intern testning.`,description:`Fördelar på nedladdningssidan, betonar snabb åtkomst`},"message.mobileTrustedRelease":{message:`Nedladdningslänkar är centralt placerade på samma sida, versionsnummer, plattformsstatus och installationsmetod är tydliga, vilket minskar kommunikationskostnader på grund av spridd information.`,description:`Fördelar på nedladdningssidan, betonar enhetlig distribution`},"message.mobileUnifiedExperience":{message:`Kontosystem, kvoter och tjänsteingångar efter inloggning är enhetliga med webbversionen, vilket gör det enkelt för användare att växla mellan skrivbord och mobil.`,description:`Fördelar på nedladdningssidan, betonar enhetlig kontoupplevelse`},"message.remainingAmount":{message:`Återstående belopp`,description:`Visar det återstående beloppet för tjänsten`},"message.copied":{message:`Kopierad`,description:`Visar meddelande om att innehållet har kopierats framgångsrikt`},"message.restart":{message:`Återgenerera`,description:`Används för att visa meddelande om att innehållet har kopierats framgångsrikt`},"message.confirmDelete":{message:`Är du säker på att du vill ta bort?`,description:`Bekräfta meddelande för att användaren ska ta bort något innehåll`},"message.expiredAt":{message:`Utgångstid`,description:`Används för att visa tjänstens utgångstid`},"message.alert":{message:`Varning`,description:`Meddelande för att varna användaren`},"message.deleteAccountConfirm":{message:`Detta raderar permanent ditt konto och all tillhörande data. Åtgärden kan inte ångras. Är du säker på att du vill fortsätta?`,description:`Confirmation message shown before permanently deleting the user account`},"message.deleteAccountSuccess":{message:`Ditt konto har raderats.`,description:`Message shown after the user account is successfully deleted`},"message.deleteAccountFailed":{message:`Det gick inte att radera ditt konto. Försök igen senare.`,description:`Message shown when account deletion fails`},"message.deleteAccountWarning":{message:`Den här åtgärden kan inte ångras! Ditt konto och all dess data raderas permanent och kan inte återställas.`,description:`Red warning banner at the top of the delete confirmation dialog`},"message.deleteAccountConsequences":{message:`Raderas permanent: profil, saldo och krediter, applikationer och prenumerationer, API-nycklar och tredjeparts inloggningskopplingar.`,description:`Explains what data will be removed in the delete confirmation dialog`},"message.deleteAccountTypePrompt":{message:`Skriv ditt användarnamn för att bekräfta raderingen:`,description:`Instructs the user to type their username to confirm; the username is shown separately below`},"message.deleteAccountPlaceholder":{message:`Ange ditt användarnamn här`,description:`Placeholder for the username confirmation input`},"message.info":{message:`Information`,description:`Meddelande för att visa information`},"message.free":{message:`Gratis`,description:`Meddelande som visar att tjänsten är gratis, vilket innebär att användaren inte behöver betala`},"message.startPrice":{message:`Startpris`,description:`Meddelande som visar tjänstens lägsta pris`},"message.joinDiscord":{message:`Gå med i Discord`,description:`Meddelande för att låta användaren gå med i Discord-kanalen`},"message.addWeChat":{message:`Lägg till WeChat`,description:`Meddelande för att låta användaren lägga till WeChat-konto`},"message.serviceTech":{message:`Teknisk support`,description:`Meddelande för att visa teknisk support`},"message.businessCooperation":{message:`Data & Affärssamarbete`,description:`Meddelande för att visa affärssamarbete`},"message.noData":{message:`Inga data`,description:`Meddelande för att visa att det inte finns några data i tabellen eller listan`},"nav.home":{message:`Hem`,description:`Text i webbplatsens navigeringsfält för att visa hemsidan`},"nav.content":{message:`Innehåll`,description:`Text i webbplatsens navigeringsfält för att visa innehållssidan`},"nav.category":{message:`Kategori`,description:`Text i webbplatsens navigeringsfält för att visa kategorisidan`},"nav.service":{message:`Alla tjänster`,description:`Text i webbplatsens navigeringsfält för att visa tjänstersidan`},"nav.profile":{message:`Min profil`,description:`Text i webbplatsens navigeringsfält för att visa profilsidan`},"nav.products":{message:`Produkter`,description:`Text i webbplatsens navigeringsfält för att visa produktsidan`},"nav.referral":{message:`Intäktsallians`,description:`Text i webbplatsens navigeringsfält för att visa rekommendationssidan`},"nav.apiPlatform":{message:`API Plattform`,description:`Text i webbplatsens navigeringsfält för att visa API-plattformssidan`},"nav.document":{message:`Utvecklingsdokumentation`,description:`Text i webbplatsens navigeringsfält för att visa dokumentationssidan`},"nav.console":{message:`Konsol`,description:`Text i webbplatsens navigeringsfält för att visa konsolsidan`},"nav.chatgpt":{message:`ChatGPT`,description:`Text i webbplatsens navigeringsfält för att visa ChatGPT-sidan, vänligen översätt inte detta fält, det måste förbli 'ChatGPT'`},"nav.deepseek":{message:`DeepSeek`,description:`Text i webbplatsens navigeringsfält för att visa DeepSeek-sidan, vänligen översätt inte detta fält, det måste förbli 'DeepSeek'`},"nav.grok":{message:`Grok`,description:`Text i webbplatsens navigeringsfält för att visa Grok-sidan, vänligen översätt inte detta fält, det måste förbli 'Grok'`},"nav.chat":{message:`Chat`,description:`Text i webbplatsens navigeringsfält för att visa chatt-sidan, vänligen översätt inte detta fält, det måste förbli 'Chat'`},"nav.veo":{message:`Veo`,description:`Text i webbplatsens navigeringsfält för att visa chatt-sidan, vänligen översätt inte detta fält, det måste förbli 'Veo'`},"nav.sora":{message:`Sora`,description:`Text i webbplatsens navigeringsfält för att visa chatt-sidan, vänligen översätt inte detta fält, det måste förbli 'Sora'`},"nav.midjourney":{message:`Midjourney`,description:`Text i webbplatsens navigeringsfält för att visa Midjourney-sidan, vänligen översätt inte detta fält, det måste förbli 'Midjourney'`},"nav.qrart":{message:`QRArt`,description:`Text i webbplatsens navigeringsfält för att visa QRArt-sidan, vänligen översätt inte detta fält, det måste förbli 'QRArt'`},"nav.suno":{message:`Suno`,description:`Text i webbplatsens navigeringsfält för att visa Suno-sidan, vänligen översätt inte detta fält, det måste förbli 'Suno'`},"nav.pixverse":{message:`Pixverse`,description:`Text i webbplatsens navigeringsfält för att visa Pixverse-sidan, vänligen översätt inte detta fält, det måste förbli 'Pixverse'`},"nav.flux":{message:`Flux`,description:`Text i webbplatsens navigeringsfält för att visa Flux-sidan, vänligen översätt inte detta fält, det måste förbli 'Flux'`},"nav.nanobanana":{message:`Nano Banana`,description:`Text i webbplatsens navigeringsfält för att visa Nano Banana-sidan, vänligen översätt inte detta fält, det måste förbli 'Nano Banana'`},"nav.openaiimage":{message:`OpenAI Bild`,description:`Text i webbplatsens navigeringsfält för att visa OpenAI Bild-sidan, vänligen översätt inte detta fält, det måste förbli 'OpenAI Image'`},"nav.seedream":{message:`SeeDream`,description:`Text in the website navigation bar to display the SeeDream page, do not translate this field, must remain as 'SeeDream'`},"nav.seedance":{message:`SeeDance`,description:`Text in the website navigation bar for displaying the SeeDance page, must remain 'SeeDance'`},"nav.grokvideo":{message:`Grok Video`,description:`Text in the website navigation bar to display the Grok Imagine video page`},"nav.luma":{message:`Luma`,description:`Text in the website navigation bar for displaying the Luma page, must remain 'Luma'`},"nav.pika":{message:`Pika`,description:`Text in the website navigation bar for displaying the Pika page, must remain 'Pika'`},"nav.kling":{message:`Kling`,description:`Text in the website navigation bar for displaying the Kling page, must remain 'Kling'`},"nav.hailuo":{message:`Hailuo`,description:`Text in the website navigation bar for displaying the Hailuo page, must remain 'Hailuo'`},"nav.wan":{message:`Wan`,description:`Text in the website navigation bar for displaying the Wan page, must remain 'Wan'`},"nav.producer":{message:`Producer`,description:`Text in the website navigation bar for displaying the Producer page, must remain 'Producer'`},"nav.fish":{message:`Fish Audio`,description:`Text i navigationsfältet på webbplatsen som används för att visa Fish Audio-sidan, vänligen översätt inte detta fält, det måste förbli 'Fish Audio'`},"nav.kimi":{message:`Kimi`,description:`Text in the website navigation bar for displaying the Kimi page, must remain 'Kimi'`},"nav.serp":{message:`SERP`,description:`Text in the website navigation bar for displaying the SERP page, must remain 'SERP'`},"nav.codingBridge":{message:`Coding Bridge`,description:`Text in the website navigation bar to display the Coding Bridge page, must remain as 'Coding Bridge'`},"nav.webextrator":{message:`WebExtrator`,description:`Text in the website navigation bar to display the WebExtrator page, must remain as 'WebExtrator'`},"nav.image":{message:`Bild`,description:`Text in the website navigation bar for displaying the image page`},"nav.music":{message:`Musik`,description:`Text in the website navigation bar for displaying the music page`},"nav.video":{message:`Video`,description:`Text in the website navigation bar for displaying the video page`},"nav.distribution":{message:`Rekommenderad inkomst`,description:`Text in the website navigation bar for displaying the recommended income page`},"nav.connections":{message:`Anslutningar`,description:`Menu item to navigate to the connection management page at auth.acedata.cloud`},"nav.logOut":{message:`Logga ut`,description:`Text in the website navigation bar for logging out`},"nav.deleteAccount":{message:`Radera konto`,description:`Menu item to permanently delete the current user account`},"nav.site":{message:`Webbplatsinställningar`,description:`Text in the website navigation bar for displaying the site configuration page`},"nav.subsite":{message:`Mina undersidor`,description:`Sidebar entry for 'My Subsite', displayed only when features.subsite is enabled`},"nav.setting":{message:`Inställningar`,description:`Text in the website navigation bar for displaying the settings page`},"nav.headshots":{message:`AI ID-foto`,description:`Text in the website navigation bar for displaying the site configuration page`},"nav.more":{message:`Mer`,description:`Text in the website navigation bar for expanding more services`},"nav.locale":{message:`Språkinställningar`,description:`Text in the website navigation bar for changing the language`},"nav.support":{message:`Kundsupport`,description:`Text in the website navigation bar for displaying the contact page`},"nav.darkMode":{message:`Mörkt läge`,description:`Text in the website navigation bar for switching to dark theme`},"title.alert":{message:`Varning`,description:`Title for warning messages`},"title.placeholderOfSelect":{message:`Vänligen välj`,description:`Placeholder for select input`},"title.placeholderOfInput":{message:`Vänligen fyll i`,description:`Placeholder for input`},"title.allApplications":{message:`Alla ansökningar`,description:`Page title for displaying all applications`},"title.allOrders":{message:`Alla beställningar`,description:`Page title for displaying all orders`},"title.orderInfo":{message:`Beställningsinformation`,description:`Page title for displaying order information`},"title.buyMore":{message:`Top Up`,description:`Page title for recharging. Must be translated to 'Top Up'.`},"title.distribution":{message:`Rekommenderad inkomst`,description:`Page title for displaying recommended income, meaning users can earn by inviting others to use the service`},"title.site":{message:`Webbplatsinställningar`,description:`Page title for displaying site configuration`},"title.distributionHistory":{message:`Rekommendationshistorik`,description:`Page title for displaying recommendation history`},"title.invitee":{message:`Inbjuden`,description:`Page title for displaying the inviter`},"title.allUsages":{message:`Användningshistorik`,description:`Page title for displaying all usages of the API service`},"title.allCredentials":{message:`Nycklar`,description:`Page title for displaying all credentials used to access the API`},"about.title1":{message:`Kontakta oss`,description:`Delens rubrik som visar kontaktinformation`},"about.title2":{message:`Resurser`,description:`Visar delrubrik för länkar`},"about.title3":{message:`Länkar`,description:`Visar delrubrik för supportinformation`},"about.address":{message:`131 Continental Dr, Suite 305, Newark, Delaware 19713, USA`,description:`Företagets adress`},"about.email":{message:`office@acedata.cloud`,description:`Företagets e-post`},"about.link1":{message:`Tjänster`,description:`Länk till dokumentationssidan`},"about.link2":{message:`Utvecklardokumentation`,description:`Länk till tjänstesidan`},"about.link3":{message:`Konsol`,description:`Länk till konsolsidan`},"about.link4":{message:`Profil`,description:`Länk till profilsidan`},"about.link5":{message:`UI-plattform`,description:`Länk till centralsidan`},"about.link6":{message:`Rekommenderade intäkter`,description:`Länk till sidan för rekommenderade intäkter`},"about.link7":{message:`Support`,description:`Länk till supportsidan`},"about.link8":{message:`Användarvillkor`,description:`Länk till sidan för användarvillkor`},"about.link9":{message:`Integritetspolicy`,description:`Länk till sidan för integritetspolicy`},"theme.light":{message:`Ljust tema`,description:`Namn på det ljusa temat`},"theme.dark":{message:`Mörkt tema`,description:`Namn på det mörka temat`},"theme.system":{message:`System`,description:`Namn på systemtemat, indikerar automatisk växling av tema baserat på systeminställningar`},"settings.general":{message:`Allmänna inställningar`,description:`Rubrik för allmänna inställningar på inställningssidan`},"settings.language":{message:`Språk`,description:`Rubrik för språkinställningar på inställningssidan`},"settings.theme":{message:`Tema`,description:`Rubrik för tema-inställningar på inställningssidan`},"settings.seo":{message:`SEO-inställningar`,description:`Rubrik för SEO-inställningar på inställningssidan`},"settings.site":{message:`Webbplatsinställningar`,description:`Rubrik för webbplatsinställningar på inställningssidan`},"settings.distribution":{message:`Distribueringsinställningar`,description:`Rubrik för distribueringsinställningar på inställningssidan`},"settings.function":{message:`Funktionsinställningar`,description:`Rubrik för funktionsinställningar på inställningssidan`},"settings.auth":{message:`Inloggningsmetod`,description:`Inställningssidans sidofältets fliktitel för 'Inloggningsmetod' — konfigurerar de inloggningsmetoder som tillåts på denna webbplats samt standardinloggningsmetod, endast synlig för webbplatsadministratörer.`},"settings.apiKey":{message:`API-nyckel`,description:`API-nyckel etikett i sidofältet på inställningssidan - hantering av API-nycklar från uppströmsleverantörer (BYOK)`},"field.operations":{message:`Åtgärder`,description:`Allmän kolumnrubrik: kolumn för åtgärdsknappar i tabellrader (redigera, ta bort etc.)`},"nav.gemini":{message:`Gemini`,description:`Text i webbplatsens navigeringsfält för att visa Gemini-sidan, måste förbli som 'Gemini'`},"nav.claude":{message:`Claude`,description:`Text i webbplatsens navigeringsfält för att visa Claude-sidan, måste förbli som 'Claude'`},"button.detail":{message:`Visa detaljer`,description:``},"button.testEnv":{message:`Testmiljö`,description:`Text i knappen för att växla till testmiljö`},"button.upload":{message:`Ladda upp`,description:`Text i knappen för att ladda upp filer eller innehåll`},"message.cnbeian":{message:`Kina-regionens registrering`,description:`Information om registrering i Kina-regionen`},"message.copyFailed":{message:`Kopiering misslyckades`,description:`Meddelande om att innehållet inte kunde kopieras`},"nav.tryNow":{message:`Prova nu`,description:`Text i webbplatsens navigeringsfält för att låta användare prova tjänsten`},"title.coin":{message:`Kryptovaluta`,description:`Visar sidrubrik för kryptovaluta`},"title.distributionRank":{message:`Rekommendationsrankning`,description:`Visar sidrubrik för rekommendationsrankning`},"title.distributionPlatformRank":{message:`Plattformsrankning`,description:`Visar sidrubrik för plattformsrankning`},"customers.name1":{message:`Mark Du`,description:`Kundens namn`},"customers.job1":{message:`Programvaruingenjör`,description:`Kundens yrke`},"customers.comment1":{message:`Ace Data Cloud har gett vårt team utmärkt service och hjälpt oss att öka produktiviteten. Mycket nöjd!`,description:`Kundens omdöme`},"customers.name2":{message:`Jacob Williams`,description:`Kundens namn`},"customers.job2":{message:`Produktchef`,description:`Kundens yrke`},"customers.comment2":{message:`Ace Data Cloud är en fantastisk integrationsplattform med utmärkt servicekvalitet.`,description:`Kundens omdöme`},"customers.name3":{message:`Larry Henry`,description:`Kundens namn`},"customers.job3":{message:`Designer`,description:`Kundens yrke`},"customers.comment3":{message:`Jag älskar Ace Data Clouds tjänster, de är användarvänliga och prisvärda. Hoppas de blir ännu bättre!`,description:`Kundens omdöme`},"nav.github":{message:`GitHub`,description:`Länk till GitHub-repo`},"settings.github":{message:`Källkod`,description:`Länk för att se källkoden på GitHub`},"settings.about":{message:`Om`,description:`Inställningssidans om-sektionens rubrik`},"settings.subsites":{message:`Mina underwebbplatser`,description:`Rubriken för fliken för underwebbplatsadministration i inställningsfönstret. Syns endast på officiella huvudwebbplatsen, underwebbplatser visas inte.`},"settings.adminOnlyHint":{message:`Denna sektion är endast synlig för webbplatsadministratörer, vanliga användare har inte tillgång.`,description:`En hint som visas högst upp i fliken för webbplatsinställningar / SEO-inställningar / distributionsinställningar / funktionsinställningar som endast är synlig för administratörer.`},"settings.officialOnlyHint":{message:`Denna sektion är endast synlig på huvudwebbplatsen, underwebbplatser visas inte.`,description:`En hint som visas högst upp i fliken 'Mina underwebbplatser', som förklarar att denna ingång endast visas på den officiella huvudwebbplatsen.`},"settings.customDomain":{message:`Anpassad domän`,description:`Title for the custom-domain management tab in the settings popup. Visible only on subsites (non-main-official hosts) for site admins.`},"settings.buildNow":{message:`Bygg nu`,description:`Texten för knappen 'Bygg underwebbplats med ett klick' på om-sidan, syns endast på officiella huvudwebbplatsen`},"settings.poweredBy":{message:`Öppen källkod`,description:`Rubriken som visar vilken öppen källkodsprojekt webbplatsen är baserad på på om-sidan`},"settings.poweredByTip":{message:`Denna webbplats är baserad på Nexior öppen källkodsprojekt, koden är helt öppen källkod.`,description:`Beskrivningen av vilket öppen källkodsprojekt webbplatsen är baserad på på om-sidan`},"settings.apiService":{message:`API-tjänst`,description:`Rubriken som visar API-tjänsteleverantören på om-sidan`},"settings.apiServiceTip":{message:`Denna webbplats API-tjänst tillhandahålls av Ace Data Cloud.`,description:`Beskrivningen av API-tjänsteleverantören på om-sidan`},"settings.buildYourOwn":{message:`Bygg din egen`,description:`Rubriken som uppmanar användare att bygga en liknande webbplats på om-sidan`},"settings.buildYourOwnTip":{message:`Vill du bygga en liknande AI-webbplats? Kontakta oss för distributionssupport.`,description:`Beskrivningen av att bygga en liknande webbplats på om-sidan`},"settings.contactUs":{message:`Kontakta support`,description:`Texten för knappen för att kontakta support`},"message.viewOnGithub":{message:`Visa på GitHub`,description:`Texten för länken för att se projektet på GitHub`},"title.notFound":{message:`Sidan försvann`,description:`Rubriken för 404-sidan`},"message.notFound":{message:`Sidan du besöker finns inte, länken kan ha ändrats eller tagits bort. Gå till startsidan för att fortsätta utforska AceData's AI-tjänster.`,description:`Underrubriken för 404-sidan`},"message.notFoundEyebrow":{message:`Något gick fel`,description:`Texten för den lilla etiketten högst upp på 404-sidan`},"message.notFoundPath":{message:`Begärd väg`,description:`Etiketten som visar den aktuella begärda vägen på 404-sidan`},"button.backToHome":{message:`Tillbaka till startsidan`,description:`Texten för knappen som används för att gå tillbaka till startsidan`},"button.goBack":{message:`Tillbaka`,description:`Texten för knappen som används för att gå tillbaka till föregående sida i webbläsarhistoriken`},"title.apiCode":{message:`API code for this request`,description:`Title of the dialog that shows the equivalent API code (curl / Python / Node) that would reproduce a result generated inside the product`},"message.viewCodeHint":{message:`Show API code for this request`,description:`Tooltip text on the View Code button shown alongside result-card action buttons (U1/U2/Download/Extend/...). Clicking the button opens a dialog with curl / Python / Node snippets that reproduce the same generation via the public API.`},"button.viewCode":{message:`View code`,description:`Button text that opens a dialog with the equivalent API code (curl / Python / Node) for the current result, similar to the OpenAI Playground 'View code' affordance`},"button.getApiKey":{message:`Get an API key`,description:`Link text in the API code dialog footer that opens the platform console page where users can create an API key`},"button.apiPlatform":{message:`API Platform`,description:`API code dialog footer button label. Clicking opens https://platform.acedata.cloud/ in a new tab so users can manage their API keys, balance and usage.`},"message.apiCodeIntro":{message:`Run this from your own code to produce the same result. Replace <YOUR_API_KEY> with a key from your platform console.`,description:`Helper text shown above the code tabs in the API code dialog, explaining how to use the snippet`},"tab.apiRequest":{message:`Begäran`,description:`API-koddialogens fliketikett för begärningssnutten (koden som återskapar det aktuella resultatet).`},"tab.apiResponse":{message:`Svar`,description:`API-koddialogens fliketikett för det live-svar som returneras efter att ha klickat på 'Kör'.`},"button.apiRun":{message:`Kör igen`,description:`API-kod dialogknapp som kör begäran live mot API:et med användarens nyckel. Resultatet finns redan, så att klicka kör det igen, och det är debiterbart.`},"button.apiRunning":{message:`Körs…`,description:`API-koddialogens 'Kör'-knappens etikett medan den live begäran är på väg.`},"button.apiRunConfirm":{message:`Bekräfta körning`,description:`Bekräfta-knappens etikett i dialogrutan som varnar för att körning här förbrukar extra krediter.`},"button.viewDocs":{message:`Visa dokumentation`,description:`API-kod dialogfotknapp som öppnar den matchande API-dokumentationssidan på plattformen.`},"message.apiClickRun":{message:`Klicka på "Kör igen" för att använda din API-nyckel för att köra denna begäran i realtid.`,description:`API-kod dialogens svarstabells tomma tillstånd, som visas innan användaren har kört begäran.`},"message.apiRunConfirmTitle":{message:`Bekräfta körning`,description:`Titeln på bekräftelsedialogen som visas innan en begäran körs igen från API-kod dialogen.`},"message.apiRunConfirmDesc":{message:`Denna körning kommer att använda din API-nyckel för att göra ett verkligt anrop till gränssnittet och förbruka extra poäng, bekräftar du att du vill fortsätta?`,description:`Innehållet i bekräftelsedialogen som varnar för att omkörning av begäran är ett verkligt, debiterbart API-anrop.`},"message.apiRunConfirmSkip":{message:`Visa inte igen`,description:`Checkbox i bekräftelsedialogen som, när den är ikryssad, döljer varningen vid efterföljande körningar.`},"message.apiRunTaskCreated":{message:`Uppgiften har skapats, stäng detta fönster för att se de senaste resultaten nedan.`,description:`Framgångsbanner som visas i API-koddialogen efter att en körning returnerar ett uppgifts-id, vilket antyder att den nya uppgiften redan visas i listan bakom dialogen.`},"button.apiViewLatest":{message:`Stäng och visa`,description:`Knapp i API-koddialogens framgångsbanner som stänger dialogen så att användaren kan se den nyligen skapade uppgiften i listan nedan.`},"message.uploadInProgress":{message:`Referensuppladdningarna pågår fortfarande – vänta ett ögonblick.`,description:`Toast shown when the user clicks the Generate button while one or more reference uploads are still in flight. Asks them to wait for uploads to complete before retrying.`},"appUpgrade.title":{message:`Update required`,description:`Title of the native-app version gate modal shown at startup when the installed build is older than what the backend supports.`},"appUpgrade.blockMessage":{message:`This version is no longer supported. Please update from the app store to continue.`,description:`Body text of the hard-block upgrade modal shown when the installed version is below min_supported. The modal has no dismiss affordance — the only button opens the app store.`},"appUpgrade.softMessage":{message:`A newer version is available. Update from the app store for the best experience.`,description:`Body text of the soft upgrade prompt shown when the installed version is below latest but above min_supported. The user can dismiss and keep using the app.`},"appUpgrade.openStore":{message:`Update now`,description:`Primary button on the upgrade modal — opens the App Store / Play Store URL in the system browser.`},"appUpgrade.later":{message:`Later`,description:`Secondary button on the soft upgrade prompt — dismisses the modal and lets the user keep using the current version. Only shown for non-forced upgrades.`},"nav.maestro":{message:`Maestro`,description:`Texten för Maestro-artikeln på videoproduktionssidan i navigeringsfältet, hålls som 'Maestro'`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"button.setup":{message:`Configurar`,description:`Texto no botão para realizar configurações`},"button.start":{message:`Iniciar`,description:`Texto no botão para iniciar alguma operação`},"button.copy":{message:`Copiar`,description:`Texto no botão para copiar algum conteúdo`},"button.copied":{message:`Copiado`,description:`Texto no botão para indicar que o conteúdo foi copiado`},"button.restart":{message:`Regerar`,description:`Texto no botão para regenerar algum conteúdo`},"button.preview":{message:`Pré-visualizar`,description:`Texto no botão para abrir a pré-visualização de um arquivo via URL`},"button.seeRawImage":{message:`Ver Imagem Original`,description:`Texto no botão para ver a imagem original`},"button.seeRawVideo":{message:`Ver Vídeo`,description:`Texto no botão para ver o vídeo original`},"button.edit":{message:`Editar`,description:`Texto no botão para editar conteúdo`},"button.login":{message:`Entrar`,description:`Texto no botão para fazer login`},"button.logout":{message:`Sair`,description:`Texto no botão para fazer logout`},"button.new":{message:`Novo`,description:`Texto no botão para criar um novo item`},"button.delete":{message:`Excluir`,description:`Texto no botão para excluir conteúdo`},"button.deletePermanently":{message:`Excluir conta permanentemente`,description:`Final red delete button at the bottom of the delete confirmation dialog`},"button.confirm":{message:`Confirmar`,description:`Texto no botão para confirmar uma operação`},"button.cancel":{message:`Cancelar`,description:`Texto no botão para cancelar uma operação`},"button.close":{message:`Fechar`,description:`Texto no botão para fechar uma caixa de diálogo ou painel`},"button.expand":{message:`Expandir`,description:`Texto do botão que indica a ação de abrir o editor em tela cheia para a entrada de sugestões.`},"button.alert":{message:`Alerta`,description:`Texto no botão para emitir um alerta`},"button.info":{message:`Informação`,description:`Texto no botão para exibir informações`},"button.publish":{message:`Publicar`,description:`Texto no botão para publicar conteúdo`},"button.watch":{message:`Assistir`,description:`Texto no botão para assistir a algum conteúdo`},"button.verify":{message:`Verificação de Identidade`,description:`Texto no botão para permitir que o usuário faça a verificação de identidade`},"button.profile":{message:`Perfil`,description:`Texto no botão para exibir o perfil do usuário`},"button.console":{message:`Console`,description:`Texto no botão para exibir a página do console para controlar algum conteúdo na web`},"button.learn":{message:`Aprender`,description:`Texto no botão para permitir que o usuário aprenda algo`},"button.buy":{message:`Comprar`,description:`Texto no botão para permitir que o usuário compre algo`},"button.try":{message:`Experimentar`,description:`Texto no botão para permitir que o usuário experimente algo`},"button.startForFree":{message:`Começar Grátis`,description:`Texto no botão para permitir que o usuário comece gratuitamente`},"button.download":{message:`Baixar`,description:`Texto no botão para baixar arquivos (como áudio, vídeo, imagem)`},"button.downloadAndroid":{message:`Baixar Android`,description:`Texto no botão para baixar o pacote de instalação do Android`},"button.downloadIos":{message:`Baixar iOS`,description:`Texto no botão para baixar o arquivo de instalação do iOS`},"button.installIos":{message:`Instalar iOS`,description:`Texto no botão para instalar o aplicativo iOS`},"button.apply":{message:`Solicitar`,description:`Texto no botão para permitir que o usuário solicite o serviço de API`},"button.refresh":{message:`Atualizar`,description:`Texto no botão para atualizar a página`},"button.pay":{message:`Pagar`,description:`Texto no botão para permitir que o usuário pague a taxa de serviço`},"button.repay":{message:`Continuar Pagamento`,description:`Texto no botão para permitir que o usuário continue o pagamento da taxa de serviço`},"button.applied":{message:`Solicitado`,description:`Texto no botão para indicar que o usuário já solicitou o serviço`},"button.acquire":{message:`Obter`,description:`Texto no botão para permitir que o usuário obtenha o token ou chave do serviço de API`},"button.fillExample":{message:`Preencher Exemplo`,description:`Texto no botão para permitir que o usuário preencha dados de exemplo`},"button.buyMore":{message:`Recarregar`,description:`Texto no botão para permitir que o usuário recarregue. O inglês deve ser traduzido como 'Top Up', o chinês como '充值'.`},"button.update":{message:`Atualizar`,description:`Texto no botão para atualizar conteúdo`},"button.view":{message:`Ver`,description:`Texto no botão para ver algum conteúdo`},"button.create":{message:`Criar`,description:`Texto no botão para criar algum conteúdo`},"button.referralEarnings":{message:`Renda de Referência`,description:`Texto no botão que exibe a renda de referência, indicando que o usuário pode ganhar dinheiro convidando outras pessoas a usar o serviço`},"button.finish":{message:`Concluir`,description:`Texto no botão para finalizar uma operação`},"entity.id":{message:`ID`,description:`Identificador único para exibir a entidade`},"entity.type":{message:`Tipo`,description:`Tipo da entidade`},"entity.website":{message:`Ace Data Cloud`,description:`Nome do site, não precisa ser traduzido, mantenha como 'Ace Data Cloud'`},"entity.copyright":{message:`Copyright`,description:`Texto que exibe o copyright`},"entity.platform":{message:`Plataforma`,description:`Texto que indica que este é um serviço de plataforma API`},"entity.title":{message:`Título`,description:`Título da entidade`},"entity.icon":{message:`Ícone`,description:`Ícone da entidade`},"entity.status":{message:`Status`,description:`Status da entidade`},"status.loading":{message:`Carregando...`,description:`Texto de status exibido enquanto o conteúdo está sendo carregado`},"error.appleSignInFailed":{message:`Falha ao iniciar sessão com a Apple. Tente novamente ou utilize outro método de início de sessão.`,description:`Error toast shown when native Apple sign-in fails for a reason other than user cancellation`},"error.loginLinkExpired":{message:`Login link expired. Please sign in again.`,description:`Shown on the desktop client when an OAuth callback is dropped (state mismatch or expired).`},"entity.operation":{message:`Operação`,description:`Operação da entidade`},"entity.description":{message:`Descrição`,description:`Descrição da entidade`},"entity.createdAt":{message:`Criado em`,description:`Data de criação da entidade`},"entity.updatedAt":{message:`Atualizado em`,description:`Data de atualização da entidade`},"entity.order":{message:`Pedido`,description:`Pedido da entidade, que inclui informações financeiras e de serviço, que o usuário precisa pagar`},"message.noTasks":{message:`Nenhuma tarefa histórica, comece uma nova tarefa~`,description:`Mensagem exibida quando não há tarefas`},"message.usedAmount":{message:`Valor utilizado`,description:`Usado para exibir o valor já utilizado do serviço`},"message.mobileAppDescription":{message:`Use o AceData diretamente no celular, atualmente disponível para download do APK Android, pacote de instalação iOS será disponibilizado após a assinatura.`,description:`Texto explicativo na página de download do aplicativo móvel`},"message.mobileAndroidHint":{message:`Compatível com celulares e tablets Android, escaneie para baixar e instalar o APK mais recente.`,description:`Descrição do cartão de download Android`},"message.mobileAndroidPending":{message:`Pacote de instalação Android ainda não está pronto, por favor, tente novamente mais tarde.`,description:`Mensagem quando o pacote de instalação Android não está disponível`},"message.mobileAvailableNow":{message:`Android disponível para download`,description:`Usado para exibir o status de que o Android está disponível para download`},"message.mobileSecureDelivery":{message:`Distribuição segura via CDN`,description:`Usado para enfatizar que o link de download é entregue via CDN`},"message.mobileDirectInstall":{message:`Instalação direta do APK`,description:`Usado para descrever que a instalação no Android é feita diretamente via APK`},"message.mobileLatestRelease":{message:`Versão pública atual`,description:`Usado para indicar que a versão exibida é a mais recente disponível`},"message.mobileSharedAccount":{message:`Conta e créditos compartilhados com a versão web`,description:`Usado para indicar que a versão móvel compartilha a conta com a versão web`},"message.mobileIosHint":{message:`Compatível com iPhone e iPad, pode ser instalado online; se o sistema bloquear, você pode baixar o IPA e depois distribuir.`,description:`Descrição do cartão de download iOS`},"message.mobileIosPending":{message:`Pacote de instalação iOS ainda não disponível para download, será disponibilizado após a finalização do certificado e do perfil da Apple.`,description:`Mensagem quando o pacote de instalação iOS não está disponível`},"message.mobileComingSoon":{message:`Em breve`,description:`Short status label shown on a platform card (e.g. iOS) while its build is being prepared`},"button.getOnGooglePlay":{message:`Disponível no Google Play`,description:`Button label that opens the app's Google Play Store listing`},"message.mobileApkFallback":{message:`Sem acesso ao Google Play? Baixe o APK diretamente.`,description:`Shown next to a secondary button offering a direct APK download for users who cannot access Google Play`},"message.mobilePlayStoreHint":{message:`Escaneie para abrir o Google Play`,description:`Hint under the QR code explaining that scanning it opens the Google Play listing`},"message.mobileInstallNote":{message:`Ao instalar pela primeira vez um pacote corporativo ou Ad Hoc no iOS, o sistema pode solicitar que você confie no certificado em 'Ajustes > Geral > VPN e Gerenciamento de Dispositivos'.`,description:`Dica de instalação do aplicativo móvel`},"title.mobileApp":{message:`Download do Móvel`,description:`Título da página de download do aplicativo móvel`},"title.mobileFastAccess":{message:`Acesso mais rápido, sem passar pela loja de aplicativos`,description:`Título do cartão de vantagens na página de download, enfatizando a instalação rápida`},"title.mobileTrustedRelease":{message:`Gerenciamento centralizado de versões, distribuição mais estável`,description:`Título do cartão de vantagens na página de download, enfatizando a estabilidade de versões e distribuição`},"title.mobileUnifiedExperience":{message:`Experiência móvel e web consistente`,description:`Título do cartão de vantagens na página de download, enfatizando a experiência unificada`},"nav.mobileApp":{message:`Aplicativo Móvel`,description:`Entrada de download do aplicativo móvel na navegação`},"message.mobileFastAccess":{message:`Os usuários podem escanear para instalar diretamente no celular ou baixar o APK no desktop e depois distribuir para os membros da equipe, ideal para testes rápidos e cenários de beta.`,description:`Descrição de vantagens na página de download, enfatizando o acesso rápido`},"message.mobileTrustedRelease":{message:`Os links de download estão centralizados em uma única página, com número da versão, status da plataforma e método de instalação visíveis, reduzindo os custos de comunicação causados pela dispersão de links.`,description:`Descrição de vantagens na página de download, enfatizando a distribuição unificada`},"message.mobileUnifiedExperience":{message:`O sistema de contas, créditos e entradas de serviço após o login é consistente com a versão web, facilitando a troca sem costura entre desktop e móvel.`,description:`Descrição de vantagens na página de download, enfatizando a experiência de conta unificada`},"message.remainingAmount":{message:`Valor restante`,description:`Usado para exibir o valor restante do serviço`},"message.copied":{message:`Copiado com sucesso`,description:`Mensagem que indica que o conteúdo foi copiado com sucesso`},"message.restart":{message:`Regerar`,description:`Mensagem para mostrar que o conteúdo foi copiado com sucesso`},"message.confirmDelete":{message:`Você tem certeza que deseja excluir?`,description:`Mensagem para confirmar que o usuário deseja excluir um item`},"message.expiredAt":{message:`Data de expiração`,description:`Mensagem para mostrar a data de expiração do serviço`},"message.alert":{message:`Atenção`,description:`Mensagem para alertar o usuário`},"message.deleteAccountConfirm":{message:`Isto irá eliminar permanentemente a sua conta e todos os dados associados. Esta ação não pode ser desfeita. Tem a certeza de que deseja continuar?`,description:`Confirmation message shown before permanently deleting the user account`},"message.deleteAccountSuccess":{message:`A sua conta foi eliminada.`,description:`Message shown after the user account is successfully deleted`},"message.deleteAccountFailed":{message:`Falha ao eliminar a sua conta. Tente novamente mais tarde.`,description:`Message shown when account deletion fails`},"message.deleteAccountWarning":{message:`Esta ação é irreversível! Sua conta e todos os seus dados serão excluídos permanentemente e não poderão ser recuperados.`,description:`Red warning banner at the top of the delete confirmation dialog`},"message.deleteAccountConsequences":{message:`Excluídos permanentemente: perfil, saldo e créditos, aplicativos e assinaturas, chaves de API e vínculos de login de terceiros.`,description:`Explains what data will be removed in the delete confirmation dialog`},"message.deleteAccountTypePrompt":{message:`Digite seu nome de usuário para confirmar a exclusão:`,description:`Instructs the user to type their username to confirm; the username is shown separately below`},"message.deleteAccountPlaceholder":{message:`Digite seu nome de usuário aqui`,description:`Placeholder for the username confirmation input`},"message.info":{message:`Informação`,description:`Mensagem para exibir informações`},"message.free":{message:`Gratuito`,description:`Mensagem para mostrar que o serviço é gratuito, ou seja, o usuário não precisa pagar`},"message.startPrice":{message:`A partir de`,description:`Mensagem para mostrar o preço mínimo do serviço`},"message.joinDiscord":{message:`Entrar no Discord`,description:`Mensagem para convidar o usuário a entrar no canal do Discord`},"message.addWeChat":{message:`Adicionar WeChat`,description:`Mensagem para convidar o usuário a adicionar uma conta do WeChat`},"message.serviceTech":{message:`Suporte Técnico`,description:`Mensagem para mostrar suporte técnico`},"message.businessCooperation":{message:`Cooperação de Dados & Negócios`,description:`Mensagem para mostrar cooperação comercial`},"message.noData":{message:`Sem dados`,description:`Mensagem para mostrar que não há dados na tabela ou lista`},"nav.home":{message:`Início`,description:`Texto na barra de navegação do site para mostrar a página inicial`},"nav.content":{message:`Conteúdo`,description:`Texto na barra de navegação do site para mostrar a página de conteúdo`},"nav.category":{message:`Categoria`,description:`Texto na barra de navegação do site para mostrar a página de categorias`},"nav.service":{message:`Todos os Serviços`,description:`Texto na barra de navegação do site para mostrar a página de serviços`},"nav.profile":{message:`Meu Perfil`,description:`Texto na barra de navegação do site para mostrar a página de perfil`},"nav.products":{message:`Produtos`,description:`Texto na barra de navegação do site para mostrar a página de produtos`},"nav.referral":{message:`Programa de Indicação`,description:`Texto na barra de navegação do site para mostrar a página de indicações`},"nav.apiPlatform":{message:`Plataforma API`,description:`Texto na barra de navegação do site para mostrar a página da plataforma API`},"nav.document":{message:`Documentação de Desenvolvimento`,description:`Texto na barra de navegação do site para mostrar a página de documentação`},"nav.console":{message:`Console`,description:`Texto na barra de navegação do site para mostrar a página do console`},"nav.chatgpt":{message:`ChatGPT`,description:`Texto na barra de navegação do site para mostrar a página do ChatGPT, não deve ser traduzido, deve permanecer como 'ChatGPT'`},"nav.deepseek":{message:`DeepSeek`,description:`Texto na barra de navegação do site para mostrar a página do DeepSeek, não deve ser traduzido, deve permanecer como 'DeepSeek'`},"nav.grok":{message:`Grok`,description:`Texto na barra de navegação do site para mostrar a página do Grok, não deve ser traduzido, deve permanecer como 'Grok'`},"nav.chat":{message:`Chat`,description:`Texto na barra de navegação do site para mostrar a página de chat, não deve ser traduzido, deve permanecer como 'Chat'`},"nav.veo":{message:`Veo`,description:`Texto na barra de navegação do site para mostrar a página de chat, não deve ser traduzido, deve permanecer como 'Veo'`},"nav.sora":{message:`Sora`,description:`Texto na barra de navegação do site para mostrar a página de chat, não deve ser traduzido, deve permanecer como 'Sora'`},"nav.midjourney":{message:`Midjourney`,description:`Texto na barra de navegação do site para mostrar a página do Midjourney, não deve ser traduzido, deve permanecer como 'Midjourney'`},"nav.qrart":{message:`QRArt`,description:`Texto na barra de navegação do site para mostrar a página de arte 2D, não deve ser traduzido, deve permanecer como 'QRArt'`},"nav.suno":{message:`Suno`,description:`Texto na barra de navegação do site para mostrar a página do Suno, não deve ser traduzido, deve permanecer como 'Suno'`},"nav.pixverse":{message:`Pixverse`,description:`Texto na barra de navegação do site para mostrar a página do Pixverse, não deve ser traduzido, deve permanecer como 'Pixverse'`},"nav.flux":{message:`Flux`,description:`Texto na barra de navegação do site para mostrar a página do Flux, não deve ser traduzido, deve permanecer como 'Flux'`},"nav.nanobanana":{message:`Nano Banana`,description:`Texto na barra de navegação do site para mostrar a página do Nano Banana, não deve ser traduzido, deve permanecer como 'Nano Banana'`},"nav.openaiimage":{message:`OpenAI Image`,description:`Texto na barra de navegação do site para mostrar a página do OpenAI Image, não deve ser traduzido, deve permanecer como 'OpenAI Image'`},"nav.seedream":{message:`SeeDream`,description:`Texto na barra de navegação do site, usado para exibir a página SeeDream, não deve ser traduzido, deve permanecer como 'SeeDream'`},"nav.seedance":{message:`SeeDance`,description:`Texto na barra de navegação do site para exibir a página SeeDance, não deve ser traduzido, deve permanecer como 'SeeDance'`},"nav.grokvideo":{message:`Grok Video`,description:`Text in the website navigation bar to display the Grok Imagine video page`},"nav.luma":{message:`Luma`,description:`Texto na barra de navegação do site para exibir a página Luma, não deve ser traduzido, deve permanecer como 'Luma'`},"nav.pika":{message:`Pika`,description:`Texto na barra de navegação do site para exibir a página Pika, não deve ser traduzido, deve permanecer como 'Pika'`},"nav.kling":{message:`Kling`,description:`Texto na barra de navegação do site para exibir a página Kling, não deve ser traduzido, deve permanecer como 'Kling'`},"nav.hailuo":{message:`Hailuo`,description:`Texto na barra de navegação do site para exibir a página Hailuo, não deve ser traduzido, deve permanecer como 'Hailuo'`},"nav.wan":{message:`Wan`,description:`Texto na barra de navegação do site para exibir a página Wan, não deve ser traduzido, deve permanecer como 'Wan'`},"nav.producer":{message:`Producer`,description:`Texto na barra de navegação do site para exibir a página Producer, não deve ser traduzido, deve permanecer como 'Producer'`},"nav.fish":{message:`Fish Audio`,description:`Texto na barra de navegação do site que exibe a página Fish Audio, por favor, não traduza este campo, deve permanecer como 'Fish Audio'`},"nav.kimi":{message:`Kimi`,description:`Texto na barra de navegação do site para exibir a página Kimi, não deve ser traduzido, deve permanecer como 'Kimi'`},"nav.serp":{message:`SERP`,description:`Texto na barra de navegação do site para exibir a página SERP, não deve ser traduzido, deve permanecer como 'SERP'`},"nav.codingBridge":{message:`Coding Bridge`,description:`Text in the website navigation bar to display the Coding Bridge page, must remain as 'Coding Bridge'`},"nav.webextrator":{message:`WebExtrator`,description:`Text in the website navigation bar to display the WebExtrator page, must remain as 'WebExtrator'`},"nav.image":{message:`Imagem`,description:`Texto na barra de navegação do site para exibir a página de imagens`},"nav.music":{message:`Música`,description:`Texto na barra de navegação do site para exibir a página de música`},"nav.video":{message:`Vídeo`,description:`Texto na barra de navegação do site para exibir a página de vídeo`},"nav.distribution":{message:`Rendimentos de Recomendação`,description:`Texto na barra de navegação do site para exibir a página de rendimentos de recomendação`},"nav.connections":{message:`Conexões`,description:`Item de menu que leva à página de gerenciamento de conexões em auth.acedata.cloud`},"nav.logOut":{message:`Sair`,description:`Texto na barra de navegação do site para sair da conta`},"nav.deleteAccount":{message:`Excluir conta`,description:`Menu item to permanently delete the current user account`},"nav.site":{message:`Configuração do Site`,description:`Texto na barra de navegação do site para exibir a página de configuração do site`},"nav.subsite":{message:`Meu Subsite`,description:`Entrada 'Meu Subsite' na barra lateral, exibida apenas quando a funcionalidade features.subsite está ativada`},"nav.setting":{message:`Configurações`,description:`Texto na barra de navegação do site para exibir a página de configurações`},"nav.headshots":{message:`Foto de Identidade AI`,description:`Texto na barra de navegação do site para exibir a página de configuração do site`},"nav.more":{message:`Mais`,description:`Texto na barra de navegação do site para expandir mais serviços`},"nav.locale":{message:`Configurações de Idioma`,description:`Texto na barra de navegação do site para alterar o idioma`},"nav.support":{message:`Suporte ao Cliente`,description:`Texto na barra de navegação do site para exibir a página de contato`},"nav.darkMode":{message:`Modo Escuro`,description:`Texto na barra de navegação do site para alternar para o tema escuro`},"title.alert":{message:`Aviso`,description:`Título da mensagem de aviso`},"title.placeholderOfSelect":{message:`Por favor, selecione`,description:`Placeholder para entrada de seleção`},"title.placeholderOfInput":{message:`Por favor, preencha`,description:`Placeholder para entrada de texto`},"title.allApplications":{message:`Todas as Aplicações`,description:`Título da página que exibe todas as aplicações`},"title.allOrders":{message:`Todos os Pedidos`,description:`Título da página que exibe todos os pedidos`},"title.orderInfo":{message:`Informações do Pedido`,description:`Título da página que exibe informações do pedido`},"title.buyMore":{message:`Recarregar`,description:`Título da página para recarregar. Deve ser traduzido como 'Recarregar'.`},"title.distribution":{message:`Rendimentos de Recomendação`,description:`Título da página que exibe rendimentos de recomendação, indicando que o usuário pode ganhar dinheiro convidando outros a usar o serviço`},"title.site":{message:`Configuração do Site`,description:`Título da página que exibe a configuração do site`},"title.distributionHistory":{message:`Histórico de Recomendações`,description:`Título da página que exibe o histórico de recomendações`},"title.invitee":{message:`Convidado`,description:`Título da página que exibe informações sobre o convidado`},"title.allUsages":{message:`Histórico de Uso`,description:`Título da página que exibe todos os usos do serviço API`},"title.allCredentials":{message:`Credenciais`,description:`Título da página que exibe todas as credenciais, usadas para acessar a API`},"about.title1":{message:`Contato`,description:`Título da seção que exibe informações de contato`},"about.title2":{message:`Recursos`,description:`Título da seção que exibe links`},"about.title3":{message:`Links`,description:`Título da seção que exibe informações de suporte`},"about.address":{message:`131 Continental Dr, Suite 305, Newark, DE 19713, EUA`,description:`Endereço da empresa`},"about.email":{message:`office@acedata.cloud`,description:`E-mail da empresa`},"about.link1":{message:`Serviços`,description:`Link para a página de documentação`},"about.link2":{message:`Documentação do Desenvolvedor`,description:`Link para a página de serviços`},"about.link3":{message:`Console`,description:`Link para a página do console`},"about.link4":{message:`Perfil`,description:`Link para a página de perfil`},"about.link5":{message:`Plataforma UI`,description:`Link para a página central`},"about.link6":{message:`Rendimentos de Referência`,description:`Link para a página de rendimentos de referência`},"about.link7":{message:`Suporte`,description:`Link para a página de suporte`},"about.link8":{message:`Termos de Serviço`,description:`Link para a página de termos de serviço`},"about.link9":{message:`Política de Privacidade`,description:`Link para a página de política de privacidade`},"theme.light":{message:`Claro`,description:`Nome do tema claro`},"theme.dark":{message:`Escuro`,description:`Nome do tema escuro`},"theme.system":{message:`Sistema`,description:`Nome do tema do sistema, indicando a troca automática de tema com base nas configurações do sistema`},"settings.general":{message:`Configurações Gerais`,description:`Título da seção de configurações gerais na página de configurações`},"settings.language":{message:`Idioma`,description:`Título da seção de configurações de idioma na página de configurações`},"settings.theme":{message:`Tema`,description:`Título da seção de configurações de tema na página de configurações`},"settings.seo":{message:`Configurações de SEO`,description:`Título da seção de configurações de SEO na página de configurações`},"settings.site":{message:`Configurações do Site`,description:`Título da seção de configurações do site na página de configurações`},"settings.distribution":{message:`Configurações de Distribuição`,description:`Título da seção de configurações de distribuição na página de configurações`},"settings.function":{message:`Configurações de Funcionalidade`,description:`Título da seção de configurações de funcionalidade na página de configurações`},"settings.auth":{message:`Método de Login`,description:`Título da aba 'Método de Login' na barra lateral da página de configurações — configura os métodos de login permitidos e o método de login padrão do site, visível apenas para administradores do site.`},"settings.apiKey":{message:`Chave da API`,description:`Rótulo da Chave da API na barra lateral da página de configurações - gerenciamento da Chave da API do provedor de serviços upstream (BYOK)`},"field.operations":{message:`Operações`,description:`Título da coluna genérica: coluna de botões de operação da linha da tabela (editar, excluir, etc.)`},"nav.gemini":{message:`Gemini`,description:`Texto na barra de navegação do site para exibir a página Gemini, deve permanecer como 'Gemini'`},"nav.claude":{message:`Claude`,description:`Texto na barra de navegação do site para exibir a página Claude, deve permanecer como 'Claude'`},"button.detail":{message:`Ver Detalhes`,description:``},"button.testEnv":{message:`Ambiente de Teste`,description:`Texto no botão para alternar para o ambiente de teste`},"button.upload":{message:`Enviar`,description:`Texto no botão para enviar arquivos ou conteúdo`},"message.cnbeian":{message:`Registro na China`,description:`Informação de registro na China`},"message.copyFailed":{message:`Falha ao Copiar`,description:`Mensagem exibida quando a cópia do conteúdo falha`},"nav.tryNow":{message:`Experimente Agora`,description:`Texto na barra de navegação do site para permitir que os usuários experimentem o serviço`},"title.coin":{message:`Criptomoeda`,description:`Título da página que exibe criptomoedas`},"title.distributionRank":{message:`Ranking de Referências`,description:`Título da página que exibe o ranking de referências`},"title.distributionPlatformRank":{message:`Ranking de Plataformas`,description:`Título da página que exibe o ranking de plataformas`},"customers.name1":{message:`Mark Du`,description:`Nome do cliente`},"customers.job1":{message:`Engenheiro de Software`,description:`Profissão do cliente`},"customers.comment1":{message:`A Ace Data Cloud forneceu um ótimo serviço para nossa equipe, ajudando-nos a aumentar a produtividade. Adoramos!`,description:`Avaliação do cliente`},"customers.name2":{message:`Jacob Williams`,description:`Nome do cliente`},"customers.job2":{message:`Gerente de Produto`,description:`Profissão do cliente`},"customers.comment2":{message:`A Ace Data Cloud é uma ótima plataforma de integração, com qualidade de serviço excepcional.`,description:`Avaliação do cliente`},"customers.name3":{message:`Larry Henry`,description:`Nome do cliente`},"customers.job3":{message:`Designer`,description:`Profissão do cliente`},"customers.comment3":{message:`Adoro os serviços da Ace Data Cloud, são fáceis de usar e com preços justos. Espero que melhorem cada vez mais!`,description:`Avaliação do cliente`},"nav.github":{message:`GitHub`,description:`Link para o repositório do GitHub`},"settings.github":{message:`Código Fonte`,description:`Link para ver o código fonte no GitHub`},"settings.about":{message:`Sobre`,description:`Título da seção sobre na página de configurações`},"settings.subsites":{message:`Meus Subsites`,description:`Título da aba de gerenciamento de subsites na janela de configurações. Visível apenas no site oficial, subsites não são exibidos.`},"settings.adminOnlyHint":{message:`Esta seção é visível apenas para administradores do site, usuários comuns não podem acessar.`,description:`Mensagem exibida no topo das configurações do site / configurações de SEO / configurações de distribuição / configurações de funcionalidades, indicando que apenas administradores podem ver essas configurações.`},"settings.officialOnlyHint":{message:`Esta seção é visível apenas no site principal, não será exibida nas subestações.`,description:`Mensagem exibida no topo da aba 'Minhas Subestações', informando que este acesso aparece apenas no site oficial principal.`},"settings.customDomain":{message:`Domínio personalizado`,description:`Title for the custom-domain management tab in the settings popup. Visible only on subsites (non-main-official hosts) for site admins.`},"settings.buildNow":{message:`Construir Agora`,description:`Texto do botão 'Construir Subsite' na página sobre, visível apenas no site oficial`},"settings.poweredBy":{message:`Projeto Open Source`,description:`Título que mostra em qual projeto open source o site é baseado na página sobre`},"settings.poweredByTip":{message:`Este site é baseado no projeto open source Nexior, com código totalmente aberto.`,description:`Descrição que mostra em qual projeto open source o site é baseado na página sobre`},"settings.apiService":{message:`Serviço API`,description:`Título que mostra o provedor do serviço API na página sobre`},"settings.apiServiceTip":{message:`O serviço API deste site é fornecido pela Ace Data Cloud.`,description:`Descrição que mostra o provedor do serviço API na página sobre`},"settings.buildYourOwn":{message:`Construa o Seu`,description:`Título que informa ao usuário que ele pode construir um site semelhante na página sobre`},"settings.buildYourOwnTip":{message:`Quer construir um site de IA semelhante? Entre em contato para obter suporte de implantação.`,description:`Descrição sobre como construir um site semelhante na página sobre`},"settings.contactUs":{message:`Fale Conosco`,description:`Texto do botão para entrar em contato com o suporte`},"message.viewOnGithub":{message:`Ver no GitHub`,description:`Texto do link para visualizar o projeto no GitHub`},"title.notFound":{message:`Página Não Encontrada`,description:`Título da página 404`},"message.notFound":{message:`A página que você acessou não existe, o link pode ter sido alterado ou removido. Volte para a página inicial e continue explorando os serviços de IA da AceData.`,description:`Descrição da página 404`},"message.notFoundEyebrow":{message:`Ocorreu um Erro`,description:`Texto da pequena etiqueta no topo da página 404`},"message.notFoundPath":{message:`Caminho da Solicitação`,description:`Etiqueta que exibe o caminho da solicitação atual na página 404`},"button.backToHome":{message:`Voltar para a Página Inicial`,description:`Texto do botão para retornar à página inicial`},"button.goBack":{message:`Voltar à Página Anterior`,description:`Texto do botão para voltar à página anterior no histórico de navegação`},"title.apiCode":{message:`API code for this request`,description:`Title of the dialog that shows the equivalent API code (curl / Python / Node) that would reproduce a result generated inside the product`},"message.viewCodeHint":{message:`Show API code for this request`,description:`Tooltip text on the View Code button shown alongside result-card action buttons (U1/U2/Download/Extend/...). Clicking the button opens a dialog with curl / Python / Node snippets that reproduce the same generation via the public API.`},"button.viewCode":{message:`View code`,description:`Button text that opens a dialog with the equivalent API code (curl / Python / Node) for the current result, similar to the OpenAI Playground 'View code' affordance`},"button.getApiKey":{message:`Get an API key`,description:`Link text in the API code dialog footer that opens the platform console page where users can create an API key`},"button.apiPlatform":{message:`API Platform`,description:`API code dialog footer button label. Clicking opens https://platform.acedata.cloud/ in a new tab so users can manage their API keys, balance and usage.`},"message.apiCodeIntro":{message:`Run this from your own code to produce the same result. Replace <YOUR_API_KEY> with a key from your platform console.`,description:`Helper text shown above the code tabs in the API code dialog, explaining how to use the snippet`},"tab.apiRequest":{message:`Solicitação`,description:`Rótulo da aba do diálogo de código da API para o trecho de solicitação (o código que reproduz o resultado atual).`},"tab.apiResponse":{message:`Resposta`,description:`Rótulo da aba do diálogo de código da API para a resposta ao vivo retornada após clicar em Executar.`},"button.apiRun":{message:`Executar novamente`,description:`Botão do diálogo de código da API que executa novamente a solicitação ao vivo contra a API usando a chave do usuário. O resultado já existe, então clicar executa novamente, e é cobrado.`},"button.apiRunning":{message:`Executando…`,description:`Rótulo do botão Executar no diálogo de código da API enquanto a solicitação ao vivo está em andamento.`},"button.apiRunConfirm":{message:`Confirmar execução`,description:`Rótulo do botão de confirmação no diálogo que avisa que a execução aqui consome créditos extras.`},"button.viewDocs":{message:`Ver documentação`,description:`Botão no rodapé do diálogo de código da API que abre a página de documentação da API correspondente na plataforma.`},"message.apiClickRun":{message:`Clique em 'Executar novamente' para usar sua chave da API e executar esta solicitação em tempo real.`,description:`Estado vazio da aba de Resposta do diálogo de código da API, exibido antes que o usuário execute a solicitação.`},"message.apiRunConfirmTitle":{message:`Confirmar execução`,description:`Título do diálogo de confirmação exibido antes de reexecutar uma solicitação do diálogo de código da API.`},"message.apiRunConfirmDesc":{message:`Esta execução usará sua chave da API para chamar o endpoint de forma real e consumirá créditos adicionais. Você confirma que deseja continuar?`,description:`Corpo do diálogo de confirmação avisando que a reexecução da solicitação é uma chamada real da API que gera cobrança.`},"message.apiRunConfirmSkip":{message:`Não avisar novamente`,description:`Caixa de seleção no diálogo de confirmação de execução que, quando marcada, suprime o aviso em execuções subsequentes.`},"message.apiRunTaskCreated":{message:`Tarefa criada, feche esta janela para ver os resultados mais recentes abaixo.`,description:`Banner de sucesso exibido no diálogo de código da API após uma execução retornar um ID de tarefa, indicando que a nova tarefa já aparece na lista atrás do diálogo.`},"button.apiViewLatest":{message:`Fechar e Ver`,description:`Botão no banner de sucesso do diálogo de código da API que fecha o diálogo para que o usuário possa ver a nova tarefa criada na lista abaixo.`},"message.uploadInProgress":{message:`Os envios de referência ainda estão em andamento — aguarde um momento.`,description:`Toast shown when the user clicks the Generate button while one or more reference uploads are still in flight. Asks them to wait for uploads to complete before retrying.`},"appUpgrade.title":{message:`Update required`,description:`Title of the native-app version gate modal shown at startup when the installed build is older than what the backend supports.`},"appUpgrade.blockMessage":{message:`This version is no longer supported. Please update from the app store to continue.`,description:`Body text of the hard-block upgrade modal shown when the installed version is below min_supported. The modal has no dismiss affordance — the only button opens the app store.`},"appUpgrade.softMessage":{message:`A newer version is available. Update from the app store for the best experience.`,description:`Body text of the soft upgrade prompt shown when the installed version is below latest but above min_supported. The user can dismiss and keep using the app.`},"appUpgrade.openStore":{message:`Update now`,description:`Primary button on the upgrade modal — opens the App Store / Play Store URL in the system browser.`},"appUpgrade.later":{message:`Later`,description:`Secondary button on the soft upgrade prompt — dismisses the modal and lets the user keep using the current version. Only shown for non-forced upgrades.`},"nav.maestro":{message:`Maestro`,description:`Texto da página de conversão de artigos em vídeos do Maestro na barra de navegação, mantenha como 'Maestro'`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"button.setup":{message:`Einrichten`,description:`Text im Button, der für die Einstellungen verwendet wird`},"button.start":{message:`Starten`,description:`Text im Button, der verwendet wird, um bestimmte Aktionen zu starten`},"button.copy":{message:`Kopieren`,description:`Text im Button, der verwendet wird, um etwas zu kopieren`},"button.copied":{message:`Kopiert`,description:`Text im Button, der anzeigt, dass der Inhalt kopiert wurde`},"button.restart":{message:`Neu generieren`,description:`Text im Button, der verwendet wird, um bestimmte Inhalte neu zu generieren`},"button.preview":{message:`Vorschau`,description:`Text im Button, der verwendet wird, um eine Vorschau einer Datei über die URL zu öffnen`},"button.seeRawImage":{message:`Originalbild anzeigen`,description:`Text im Button, der verwendet wird, um das Originalbild anzuzeigen`},"button.seeRawVideo":{message:`Video anzeigen`,description:`Text im Button, der verwendet wird, um das Originalvideo anzuzeigen`},"button.edit":{message:`Bearbeiten`,description:`Text im Button, der verwendet wird, um Inhalte zu bearbeiten`},"button.login":{message:`Anmelden`,description:`Text im Button, der verwendet wird, um sich anzumelden`},"button.logout":{message:`Abmelden`,description:`Text im Button, der verwendet wird, um sich abzumelden`},"button.new":{message:`Neu`,description:`Text im Button, der verwendet wird, um einen neuen Eintrag zu erstellen`},"button.delete":{message:`Löschen`,description:`Text im Button, der verwendet wird, um Inhalte zu löschen`},"button.deletePermanently":{message:`Konto dauerhaft löschen`,description:`Final red delete button at the bottom of the delete confirmation dialog`},"button.confirm":{message:`Bestätigen`,description:`Text im Button, der verwendet wird, um eine Aktion zu bestätigen`},"button.cancel":{message:`Abbrechen`,description:`Text im Button, der verwendet wird, um eine Aktion abzubrechen`},"button.close":{message:`Schließen`,description:`Text im Button, der verwendet wird, um ein Dialogfeld oder Panel zu schließen`},"button.expand":{message:`Erweitern`,description:`Schaltflächenhinweistext, um den Vollbild-Editor für die Eingabeaufforderung zu öffnen.`},"button.alert":{message:`Warnung`,description:`Text im Button, der verwendet wird, um eine Warnung auszugeben`},"button.info":{message:`Information`,description:`Text im Button, der verwendet wird, um Informationen anzuzeigen`},"button.publish":{message:`Veröffentlichen`,description:`Text im Button, der verwendet wird, um Inhalte zu veröffentlichen`},"button.watch":{message:`Ansehen`,description:`Text im Button, der verwendet wird, um Inhalte anzusehen`},"button.verify":{message:`Identitätsprüfung`,description:`Text im Button, der den Benutzer zur Identitätsprüfung auffordert`},"button.profile":{message:`Profil`,description:`Text im Button, der verwendet wird, um das Benutzerprofil anzuzeigen`},"button.console":{message:`Konsole`,description:`Text im Button, der verwendet wird, um die Konsolenseite anzuzeigen, um Inhalte auf der Webseite zu steuern`},"button.learn":{message:`Lernen`,description:`Text im Button, der verwendet wird, um den Benutzern das Lernen von Inhalten zu ermöglichen`},"button.buy":{message:`Kaufen`,description:`Text im Button, der verwendet wird, um den Benutzern den Kauf von Inhalten zu ermöglichen`},"button.try":{message:`Ausprobieren`,description:`Text im Button, der verwendet wird, um den Benutzern das Ausprobieren von Inhalten zu ermöglichen`},"button.startForFree":{message:`Kostenlos starten`,description:`Text im Button, der verwendet wird, um den Benutzern den kostenlosen Start zu ermöglichen`},"button.download":{message:`Herunterladen`,description:`Text im Button, der verwendet wird, um Dateien (z. B. Audio, Video, Bilder) herunterzuladen`},"button.downloadAndroid":{message:`Android herunterladen`,description:`Text im Button, der verwendet wird, um das Android-Installationspaket herunterzuladen`},"button.downloadIos":{message:`iOS-Installationspaket herunterladen`,description:`Text im Button, der verwendet wird, um die iOS-Installationsdatei herunterzuladen`},"button.installIos":{message:`iOS installieren`,description:`Text im Button, der verwendet wird, um die iOS-Anwendung zu installieren`},"button.apply":{message:`Beantragen`,description:`Text im Button, der verwendet wird, um den Benutzern die Beantragung eines API-Dienstes zu ermöglichen`},"button.refresh":{message:`Aktualisieren`,description:`Text im Button, der verwendet wird, um die Seite zu aktualisieren`},"button.pay":{message:`Bezahlen`,description:`Text im Button, der verwendet wird, um den Benutzern die Zahlung von Dienstgebühren zu ermöglichen`},"button.repay":{message:`Zahlung fortsetzen`,description:`Text im Button, der verwendet wird, um den Benutzern die Fortsetzung der Zahlung von Dienstgebühren zu ermöglichen`},"button.applied":{message:`Beantragt`,description:`Text im Button, der anzeigt, dass der Benutzer diesen Dienst beantragt hat`},"button.acquire":{message:`Erhalten`,description:`Text im Button, der verwendet wird, um den Benutzern das Erhalten eines Tokens oder Schlüssels für den API-Dienst zu ermöglichen`},"button.fillExample":{message:`Beispiel ausfüllen`,description:`Text im Button, der verwendet wird, um den Benutzern das Ausfüllen von Beispieldaten zu ermöglichen`},"button.buyMore":{message:`Aufladen`,description:`Text im Button, der verwendet wird, um den Benutzern das Aufladen zu ermöglichen. Englisch muss als 'Top Up' übersetzt werden, Chinesisch als '充值'.`},"button.update":{message:`Aktualisieren`,description:`Text im Button, der verwendet wird, um Inhalte zu aktualisieren`},"button.view":{message:`Ansehen`,description:`Text im Button, der verwendet wird, um Inhalte anzusehen`},"button.create":{message:`Erstellen`,description:`Text im Button, der verwendet wird, um Inhalte zu erstellen`},"button.referralEarnings":{message:`Empfohlene Einnahmen`,description:`Text im Button, der die empfohlenen Einnahmen anzeigt, was bedeutet, dass der Benutzer durch die Einladung anderer zur Nutzung des Dienstes Geld verdienen kann.`},"button.finish":{message:`Fertig`,description:`Text im Button, um eine Aktion abzuschließen`},"entity.id":{message:`ID`,description:`Eindeutiger Identifikator für die Anzeige der Entität`},"entity.type":{message:`Typ`,description:`Typ der Entität anzeigen`},"entity.website":{message:`Ace Data Cloud`,description:`Website-Name, keine Übersetzung erforderlich, bleibt 'Ace Data Cloud'`},"entity.copyright":{message:`Urheberrecht`,description:`Text zur Anzeige des Urheberrechts`},"entity.platform":{message:`Plattform`,description:`Text, der angibt, dass dies die API-Dienstplattform ist`},"entity.title":{message:`Titel`,description:`Titel der Entität`},"entity.icon":{message:`Symbol`,description:`Symbol der Entität`},"entity.status":{message:`Status`,description:`Status der Entität`},"status.loading":{message:`Wird geladen...`,description:`Statusnachricht, die beim Laden von Inhalten angezeigt wird`},"error.appleSignInFailed":{message:`Anmeldung mit Apple fehlgeschlagen. Bitte versuchen Sie es erneut oder verwenden Sie eine andere Anmeldemethode.`,description:`Error toast shown when native Apple sign-in fails for a reason other than user cancellation`},"error.loginLinkExpired":{message:`Login link expired. Please sign in again.`,description:`Shown on the desktop client when an OAuth callback is dropped (state mismatch or expired).`},"entity.operation":{message:`Operation`,description:`Operation der Entität`},"entity.description":{message:`Beschreibung`,description:`Beschreibung der Entität`},"entity.createdAt":{message:`Erstellt am`,description:`Zeitpunkt der Erstellung der Entität`},"entity.updatedAt":{message:`Aktualisiert am`,description:`Zeitpunkt der Aktualisierung der Entität`},"entity.order":{message:`Bestellung`,description:`Bestellung der Entität, die Geld- und Dienstleistungsinformationen enthält, für die der Benutzer bezahlen muss`},"message.noTasks":{message:`Keine historischen Aufgaben, bitte starten Sie eine neue Aufgabe~`,description:`Nachricht, wenn keine Aufgaben vorhanden sind`},"message.usedAmount":{message:`Verwendeter Betrag`,description:`Zur Anzeige des bereits verwendeten Betrags für den Dienst`},"message.mobileAppDescription":{message:`Verwenden Sie AceData direkt auf Ihrem Handy. Derzeit steht die Android APK zum Download zur Verfügung, das iOS-Installationspaket wird nach der Signierung zum Download freigegeben.`,description:`Beschreibung auf der Download-Seite der mobilen Anwendung`},"message.mobileAndroidHint":{message:`Für Android-Handys und -Tablets, scannen Sie den QR-Code, um die neueste APK herunterzuladen und zu installieren.`,description:`Hinweis auf der Android-Downloadkarte`},"message.mobileAndroidPending":{message:`Das Android-Installationspaket ist noch nicht bereit, bitte versuchen Sie es später erneut.`,description:`Hinweis, wenn das Android-Installationspaket noch nicht verfügbar ist`},"message.mobileAvailableNow":{message:`Android steht zum Download bereit`,description:`Zur Anzeige des Status, dass Android jetzt heruntergeladen werden kann`},"message.mobileSecureDelivery":{message:`Sichere CDN-Verteilung`,description:`Zur Betonung, dass der Download-Link über CDN bereitgestellt wird`},"message.mobileDirectInstall":{message:`Direkte APK-Installation`,description:`Zur Beschreibung der direkten APK-Installationsmethode für Android`},"message.mobileLatestRelease":{message:`Aktuelle öffentliche Version`,description:`Zur Erklärung, dass die aktuelle Anzeige die neueste öffentliche Version ist`},"message.mobileSharedAccount":{message:`Gemeinsames Konto und Kontingent mit der Webversion`,description:`Zur Erklärung, dass das mobile Konto mit dem Webkonto geteilt wird`},"message.mobileIosHint":{message:`Für iPhone und iPad, kann direkt online installiert werden; wenn das System blockiert, kann auch zuerst die IPA heruntergeladen und dann verteilt werden.`,description:`Hinweis auf der iOS-Downloadkarte`},"message.mobileIosPending":{message:`Das iOS-Installationspaket ist noch nicht zum Download verfügbar, wird nach der Vervollständigung des Apple-Zertifikats und der Beschreibung bereitgestellt.`,description:`Hinweis, wenn das iOS-Installationspaket noch nicht verfügbar ist`},"message.mobileComingSoon":{message:`Demnächst verfügbar`,description:`Short status label shown on a platform card (e.g. iOS) while its build is being prepared`},"button.getOnGooglePlay":{message:`Jetzt bei Google Play`,description:`Button label that opens the app's Google Play Store listing`},"message.mobileApkFallback":{message:`Kein Zugriff auf Google Play? Lade die APK direkt herunter.`,description:`Shown next to a secondary button offering a direct APK download for users who cannot access Google Play`},"message.mobilePlayStoreHint":{message:`Scannen, um Google Play zu öffnen`,description:`Hint under the QR code explaining that scanning it opens the Google Play listing`},"message.mobileInstallNote":{message:`Bei der ersten Installation eines Unternehmens- oder Ad-Hoc-Pakets auf iOS kann das System verlangen, dass das Zertifikat zuerst unter 'Einstellungen > Allgemein > VPN & Geräteverwaltung' vertraut wird.`,description:`Hinweis zur Installation der mobilen Anwendung`},"title.mobileApp":{message:`Mobile Downloads`,description:`Titel der Download-Seite für mobile Anwendungen`},"title.mobileFastAccess":{message:`Schnellerer Zugriff, ohne den App Store zu umgehen`,description:`Titel der Vorteilskarte auf der Download-Seite, die schnelle Installation betont`},"title.mobileTrustedRelease":{message:`Versionen zentral verwalten, stabiler verteilen`,description:`Titel der Vorteilskarte auf der Download-Seite, die Stabilität von Versionen und Verteilung betont`},"title.mobileUnifiedExperience":{message:`Erlebnis auf Mobilgeräten und im Web einheitlich`,description:`Titel der Vorteilskarte auf der Download-Seite, die ein einheitliches Erlebnis betont`},"nav.mobileApp":{message:`Mobile App`,description:`Eingang zur mobilen Anwendungsdownload im Navigationsbereich`},"message.mobileFastAccess":{message:`Benutzer können den QR-Code auf dem Handy scannen, um direkt zu installieren, oder zuerst die APK auf dem Desktop herunterladen und dann an Teammitglieder verteilen, geeignet für Szenarien, die eine schnelle Nutzung und interne Tests erfordern.`,description:`Vorteilsbeschreibung auf der Download-Seite, die schnellen Zugang betont`},"message.mobileTrustedRelease":{message:`Der Download-Eingang ist auf einer Seite zentralisiert, Versionsnummer, Plattformstatus und Installationsmethode sind auf einen Blick sichtbar, wodurch Kommunikationskosten aufgrund von verstreuten Links reduziert werden.`,description:`Vorteilsbeschreibung auf der Download-Seite, die einheitliche Verteilung betont`},"message.mobileUnifiedExperience":{message:`Das Kontosystem, Kontingent und die Dienstzugänge nach dem Login sind mit der Webversion identisch, was den nahtlosen Wechsel zwischen Desktop und Mobil erleichtert.`,description:`Vorteilsbeschreibung auf der Download-Seite, die ein einheitliches Kontow Erlebnis betont`},"message.remainingAmount":{message:`Verbleibender Betrag`,description:`Zur Anzeige des verbleibenden Betrags für den Dienst`},"message.copied":{message:`Erfolgreich kopiert`,description:`Nachricht, die anzeigt, dass der Inhalt erfolgreich kopiert wurde`},"message.restart":{message:`Neu generieren`,description:`用于显示内容已成功复制的消息`},"message.confirmDelete":{message:`Sind Sie sicher, dass Sie löschen möchten?`,description:`确认用户要删除某项内容的消息`},"message.expiredAt":{message:`Ablaufdatum`,description:`用于显示服务的过期时间`},"message.alert":{message:`Warnung`,description:`警告用户的消息`},"message.deleteAccountConfirm":{message:`Dadurch werden Ihr Konto und alle zugehörigen Daten dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden. Möchten Sie wirklich fortfahren?`,description:`Confirmation message shown before permanently deleting the user account`},"message.deleteAccountSuccess":{message:`Ihr Konto wurde gelöscht.`,description:`Message shown after the user account is successfully deleted`},"message.deleteAccountFailed":{message:`Ihr Konto konnte nicht gelöscht werden. Bitte versuchen Sie es später erneut.`,description:`Message shown when account deletion fails`},"message.deleteAccountWarning":{message:`Diese Aktion ist unwiderruflich! Dein Konto und alle zugehörigen Daten werden dauerhaft gelöscht und können nicht wiederhergestellt werden.`,description:`Red warning banner at the top of the delete confirmation dialog`},"message.deleteAccountConsequences":{message:`Dauerhaft gelöscht: Profil, Guthaben und Credits, Anwendungen und Abonnements, API-Schlüssel sowie Drittanbieter-Login-Verknüpfungen.`,description:`Explains what data will be removed in the delete confirmation dialog`},"message.deleteAccountTypePrompt":{message:`Gib deinen Benutzernamen ein, um die Löschung zu bestätigen:`,description:`Instructs the user to type their username to confirm; the username is shown separately below`},"message.deleteAccountPlaceholder":{message:`Gib hier deinen Benutzernamen ein`,description:`Placeholder for the username confirmation input`},"message.info":{message:`Hinweis`,description:`显示信息的消息`},"message.free":{message:`Kostenlos`,description:`显示该服务是免费的消息,意味着用户无需支付`},"message.startPrice":{message:`Startpreis`,description:`显示服务的最低价格的消息`},"message.joinDiscord":{message:`Discord beitreten`,description:`让用户加入Discord频道的消息`},"message.addWeChat":{message:`WeChat hinzufügen`,description:`让用户添加微信账户的消息`},"message.serviceTech":{message:`Technischer Support`,description:`显示技术支持的消息`},"message.businessCooperation":{message:`Daten & Geschäftliche Zusammenarbeit`,description:`显示商业合作的消息`},"message.noData":{message:`Keine Daten`,description:`显示表或列表中没有数据的消息`},"nav.home":{message:`Startseite`,description:`网站导航栏中的文本,用于显示首页`},"nav.content":{message:`Inhalt`,description:`网站导航栏中的文本,用于显示内容页面`},"nav.category":{message:`Kategorie`,description:`网站导航栏中的文本,用于显示类别页面`},"nav.service":{message:`Alle Dienste`,description:`网站导航栏中的文本,用于显示服务页面`},"nav.profile":{message:`Mein Profil`,description:`网站导航栏中的文本,用于显示个人资料页面`},"nav.products":{message:`Produkte`,description:`网站导航栏中的文本,用于显示产品页面`},"nav.referral":{message:`Empfehlungsprogramm`,description:`网站导航栏中的文本,用于显示推荐页面`},"nav.apiPlatform":{message:`API Plattform`,description:`网站导航栏中的文本,用于显示API平台页面`},"nav.document":{message:`Entwicklungsdokumentation`,description:`网站导航栏中的文本,用于显示文档页面`},"nav.console":{message:`Konsole`,description:`网站导航栏中的文本,用于显示控制台页面`},"nav.chatgpt":{message:`ChatGPT`,description:`网站导航栏中的文本,用于显示ChatGPT页面,请不要翻译此字段,必须保持为'ChatGPT'`},"nav.deepseek":{message:`DeepSeek`,description:`网站导航栏中的文本,用于显示DeepSeek页面,请不要翻译此字段,必须保持为'DeepSeek'`},"nav.grok":{message:`Grok`,description:`网站导航栏中的文本,用于显示Grok页面,请不要翻译此字段,必须保持为'Grok'`},"nav.chat":{message:`Chat`,description:`网站导航栏中的文本,用于显示聊天页面,请不要翻译此字段,必须保持为'Chat'`},"nav.veo":{message:`Veo`,description:`网站导航栏中的文本,用于显示聊天页面,请不要翻译此字段,必须保持为'Veo'`},"nav.sora":{message:`Sora`,description:`网站导航栏中的文本,用于显示聊天页面,请不要翻译此字段,必须保持为'Sora'`},"nav.midjourney":{message:`Midjourney`,description:`网站导航栏中的文本,用于显示中途之旅页面,请不要翻译此字段,必须保持为'Midjourney'`},"nav.qrart":{message:`QRArt`,description:`网站导航栏中的文本,用于显示二维艺术页面,请不要翻译此字段,必须保持为'QRArt'`},"nav.suno":{message:`Suno`,description:`网站导航栏中的文本,用于显示Suno页面,请不要翻译此字段,必须保持为'Suno'`},"nav.pixverse":{message:`Pixverse`,description:`网站导航栏中的文本,用于显示Pixverse页面,请不要翻译此字段,必须保持为'Pixverse'`},"nav.flux":{message:`Flux`,description:`网站导航栏中的文本,用于显示Flux页面,请不要翻译此字段,必须保持为'Flux'`},"nav.nanobanana":{message:`Nano Banana`,description:`网站导航栏中的文本,用于显示Nano Banana页面,请不要翻译此字段,必须保持为'Nano Banana'`},"nav.openaiimage":{message:`OpenAI Bild`,description:`网站导航栏中的文本,用于显示OpenAI Image页面,请不要翻译此字段,必须保持为'OpenAI Image'`},"nav.seedream":{message:`SeeDream`,description:`Text in der Navigationsleiste der Website, um die SeeDream-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'SeeDream' beibehalten werden`},"nav.seedance":{message:`SeeDance`,description:`Website-Navigationsleiste, um die SeeDance-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'SeeDance' beibehalten werden`},"nav.grokvideo":{message:`Grok Video`,description:`Text in the website navigation bar to display the Grok Imagine video page`},"nav.luma":{message:`Luma`,description:`Website-Navigationsleiste, um die Luma-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'Luma' beibehalten werden`},"nav.pika":{message:`Pika`,description:`Website-Navigationsleiste, um die Pika-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'Pika' beibehalten werden`},"nav.kling":{message:`Kling`,description:`Website-Navigationsleiste, um die Kling-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'Kling' beibehalten werden`},"nav.hailuo":{message:`Hailuo`,description:`Website-Navigationsleiste, um die Hailuo-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'Hailuo' beibehalten werden`},"nav.wan":{message:`Wan`,description:`Website-Navigationsleiste, um die Wan-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'Wan' beibehalten werden`},"nav.producer":{message:`Producer`,description:`Website-Navigationsleiste, um die Producer-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'Producer' beibehalten werden`},"nav.fish":{message:`Fish Audio`,description:`Text in der Navigationsleiste der Website, um die Fish Audio-Seite anzuzeigen. Bitte diesen Text nicht übersetzen, er muss als 'Fish Audio' erhalten bleiben.`},"nav.kimi":{message:`Kimi`,description:`Website-Navigationsleiste, um die Kimi-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'Kimi' beibehalten werden`},"nav.serp":{message:`SERP`,description:`Website-Navigationsleiste, um die SERP-Seite anzuzeigen, bitte dieses Feld nicht übersetzen, muss als 'SERP' beibehalten werden`},"nav.codingBridge":{message:`Coding Bridge`,description:`Text in the website navigation bar to display the Coding Bridge page, must remain as 'Coding Bridge'`},"nav.webextrator":{message:`WebExtrator`,description:`Text in the website navigation bar to display the WebExtrator page, must remain as 'WebExtrator'`},"nav.image":{message:`Bild`,description:`Website-Navigationsleiste, um die Bildseite anzuzeigen`},"nav.music":{message:`Musik`,description:`Website-Navigationsleiste, um die Musikseite anzuzeigen`},"nav.video":{message:`Video`,description:`Website-Navigationsleiste, um die Videoseite anzuzeigen`},"nav.distribution":{message:`Empfohlene Einnahmen`,description:`Website-Navigationsleiste, um die Seite für empfohlene Einnahmen anzuzeigen`},"nav.connections":{message:`Verbindungen`,description:`Menüpunkt zum Wechseln zur Verbindungsverwaltungsseite auth.acedata.cloud`},"nav.logOut":{message:`Abmelden`,description:`Website-Navigationsleiste, um sich abzumelden`},"nav.deleteAccount":{message:`Konto löschen`,description:`Menu item to permanently delete the current user account`},"nav.site":{message:`Site-Konfiguration`,description:`Website-Navigationsleiste, um die Seite für die Site-Konfiguration anzuzeigen`},"nav.subsite":{message:`Meine Subsite`,description:`Seitenleisten-Eingang 'Meine Subsite', wird nur angezeigt, wenn die Funktion features.subsite aktiviert ist`},"nav.setting":{message:`Einstellungen`,description:`Website-Navigationsleiste, um die Einstellungsseite anzuzeigen`},"nav.headshots":{message:`AI Passfoto`,description:`Website-Navigationsleiste, um die Seite für die Site-Konfiguration anzuzeigen`},"nav.more":{message:`Mehr`,description:`Website-Navigationsleiste, um mehr Dienste anzuzeigen`},"nav.locale":{message:`Spracheinstellungen`,description:`Website-Navigationsleiste, um die Sprache zu ändern`},"nav.support":{message:`Kundensupport`,description:`Website-Navigationsleiste, um die Kontaktseite anzuzeigen`},"nav.darkMode":{message:`Dunkelmodus`,description:`Website-Navigationsleiste, um zum dunklen Thema zu wechseln`},"title.alert":{message:`Warnung`,description:`Titel der Warnnachricht`},"title.placeholderOfSelect":{message:`Bitte auswählen`,description:`Platzhalter für die Auswahl`},"title.placeholderOfInput":{message:`Bitte ausfüllen`,description:`Platzhalter für die Eingabe`},"title.allApplications":{message:`Alle Anträge`,description:`Titel der Seite, die alle Anträge anzeigt`},"title.allOrders":{message:`Alle Bestellungen`,description:`Titel der Seite, die alle Bestellungen anzeigt`},"title.orderInfo":{message:`Bestellinformationen`,description:`Titel der Seite, die die Bestellinformationen anzeigt`},"title.buyMore":{message:`Aufladen`,description:`Seitenüberschrift für das Aufladen. Englisch muss als 'Top Up' übersetzt werden, Chinesisch als '充值'.`},"title.distribution":{message:`Empfohlene Einnahmen`,description:`Titel der Seite, die die empfohlenen Einnahmen anzeigt, was bedeutet, dass Benutzer durch die Einladung anderer zur Nutzung des Dienstes Geld verdienen können`},"title.site":{message:`Site-Konfiguration`,description:`Titel der Seite, die die Site-Konfiguration anzeigt`},"title.distributionHistory":{message:`Empfehlungshistorie`,description:`Titel der Seite, die die Empfehlungshistorie anzeigt`},"title.invitee":{message:`Einladender`,description:`Titel der Seite, die den Einladenden anzeigt`},"title.allUsages":{message:`Nutzungsverlauf`,description:`Titel der Seite, die alle Nutzungen des API-Dienstes anzeigt`},"title.allCredentials":{message:`Schlüssel`,description:`Titel der Seite, die alle Anmeldeinformationen anzeigt, die zum Zugriff auf die API verwendet werden`},"about.title1":{message:`Kontaktieren Sie uns`,description:`Teilüberschrift, die Kontaktinformationen anzeigt`},"about.title2":{message:`Ressourcen`,description:`Teilüberschrift, die Links anzeigt`},"about.title3":{message:`Links`,description:`Teilüberschrift, die Unterstützungsinformationen anzeigt`},"about.address":{message:`131 Continental Dr, Suite 305, Newark, DE 19713, USA`,description:`Die Adresse des Unternehmens`},"about.email":{message:`office@acedata.cloud`,description:`Die E-Mail-Adresse des Unternehmens`},"about.link1":{message:`Dienstleistungen`,description:`Link zur Dokumentationsseite`},"about.link2":{message:`Entwicklerdokumentation`,description:`Link zur Serviceseite`},"about.link3":{message:`Konsole`,description:`Link zur Konsolenseite`},"about.link4":{message:`Profil`,description:`Link zur Profilseite`},"about.link5":{message:`UI-Plattform`,description:`Link zur Hauptseite`},"about.link6":{message:`Empfohlene Einnahmen`,description:`Link zur Seite für empfohlene Einnahmen`},"about.link7":{message:`Unterstützung`,description:`Link zur Unterstützungsseite`},"about.link8":{message:`Nutzungsbedingungen`,description:`Link zur Seite mit den Nutzungsbedingungen`},"about.link9":{message:`Datenschutzrichtlinie`,description:`Link zur Seite mit der Datenschutzrichtlinie`},"theme.light":{message:`Helles Thema`,description:`Name des hellen Themas`},"theme.dark":{message:`Dunkles Thema`,description:`Name des dunklen Themas`},"theme.system":{message:`System`,description:`Name des Systemthemas, das anzeigt, dass das Thema automatisch basierend auf den Systemeinstellungen gewechselt wird`},"settings.general":{message:`Allgemeine Einstellungen`,description:`Titel des Abschnitts für allgemeine Einstellungen auf der Einstellungsseite`},"settings.language":{message:`Sprache`,description:`Titel des Abschnitts für Spracheinstellungen auf der Einstellungsseite`},"settings.theme":{message:`Thema`,description:`Titel des Abschnitts für Themaeinstellungen auf der Einstellungsseite`},"settings.seo":{message:`SEO-Einstellungen`,description:`Titel des Abschnitts für SEO-Einstellungen auf der Einstellungsseite`},"settings.site":{message:`Site-Einstellungen`,description:`Titel des Abschnitts für Site-Einstellungen auf der Einstellungsseite`},"settings.distribution":{message:`Verteilungseinstellungen`,description:`Titel des Abschnitts für Verteilungseinstellungen auf der Einstellungsseite`},"settings.function":{message:`Funktionseinstellungen`,description:`Titel des Abschnitts für Funktionseinstellungen auf der Einstellungsseite`},"settings.auth":{message:`Anmeldemethode`,description:`Titel des Tabs ‚Anmeldemethode‘ in der Einstellungs-Seitenleiste – konfiguriert die erlaubten Anmeldemethoden und die Standard-Anmeldemethode, nur für Site-Administratoren sichtbar.`},"settings.apiKey":{message:`API-Schlüssel`,description:`API-Schlüssel-Label in der Seitenleiste der Einstellungsseite - Verwaltung des API-Schlüssels des benutzereigenen (BYOK) Anbieters`},"field.operations":{message:`Aktionen`,description:`Allgemeine Spaltenüberschrift: Spalte für Aktionsschaltflächen in Tabellenzeilen (Bearbeiten, Löschen usw.)`},"nav.gemini":{message:`Gemini`,description:`Text in der Navigationsleiste der Website, um die Gemini-Seite anzuzeigen, muss als 'Gemini' bleiben`},"nav.claude":{message:`Claude`,description:`Text in der Navigationsleiste der Website, um die Claude-Seite anzuzeigen, muss als 'Claude' bleiben`},"button.detail":{message:`Details anzeigen`,description:``},"button.testEnv":{message:`Testumgebung`,description:`Text im Button, um zur Testumgebung zu wechseln`},"button.upload":{message:`Hochladen`,description:`Text im Button, um Dateien oder Inhalte hochzuladen`},"message.cnbeian":{message:`China-Region Registrierung`,description:`Hinweis zur Registrierung in der China-Region`},"message.copyFailed":{message:`Kopieren fehlgeschlagen`,description:`Nachricht, die anzeigt, dass das Kopieren des Inhalts fehlgeschlagen ist`},"nav.tryNow":{message:`Jetzt ausprobieren`,description:`Text in der Navigationsleiste der Website, um den Benutzern zu ermöglichen, den Dienst auszuprobieren`},"title.coin":{message:`Kryptowährung`,description:`Titel der Seite, die Kryptowährungen anzeigt`},"title.distributionRank":{message:`Empfehlungsrang`,description:`Titel der Seite, die den Empfehlungsrang anzeigt`},"title.distributionPlatformRank":{message:`Plattformrang`,description:`Titel der Seite, die den Plattformrang anzeigt`},"customers.name1":{message:`Mark Du`,description:`Name des Kunden`},"customers.job1":{message:`Software-Ingenieur`,description:`Beruf des Kunden`},"customers.comment1":{message:`Ace Data Cloud hat unserem Team großartige Dienste geleistet und unsere Produktivität gesteigert. Sehr zufrieden!`,description:`Bewertung des Kunden`},"customers.name2":{message:`Jacob Williams`,description:`Name des Kunden`},"customers.job2":{message:`Produktmanager`,description:`Beruf des Kunden`},"customers.comment2":{message:`Ace Data Cloud ist eine großartige Integrationsplattform mit hervorragender Servicequalität.`,description:`Bewertung des Kunden`},"customers.name3":{message:`Larry Henry`,description:`Name des Kunden`},"customers.job3":{message:`Designer`,description:`Beruf des Kunden`},"customers.comment3":{message:`Ich liebe den Service von Ace Data Cloud, er ist benutzerfreundlich und preiswert. Ich hoffe, es wird immer besser!`,description:`Bewertung des Kunden`},"nav.github":{message:`GitHub`,description:`Link zum GitHub-Repository`},"settings.github":{message:`Quellcode`,description:`Link zum Anzeigen des Quellcodes auf GitHub`},"settings.about":{message:`Über`,description:`Titel des Abschnitts 'Über' auf der Einstellungsseite`},"settings.subsites":{message:`Meine Subsites`,description:`Titel des Tabs zur Verwaltung von Subsites im Einstellungs-Popup. Nur auf der offiziellen Hauptseite sichtbar, Subsites werden nicht angezeigt.`},"settings.adminOnlyHint":{message:`Dieser Abschnitt ist nur für Site-Administratoren sichtbar, normale Benutzer haben keinen Zugriff.`,description:`Eine Hinweiszeile, die oben in den Einstellungen der Site / SEO-Einstellungen / Verteilungseinstellungen / Funktionseinstellungen angezeigt wird und nur für Administratoren sichtbar ist.`},"settings.officialOnlyHint":{message:`Dieser Abschnitt ist nur auf der Hauptseite sichtbar, Unterseiten werden nicht angezeigt.`,description:`Eine Hinweiszeile, die oben im Tab 'Meine Unterseiten' angezeigt wird und erklärt, dass dieser Zugang nur auf der offiziellen Hauptseite erscheint.`},"settings.customDomain":{message:`Eigene Domain`,description:`Title for the custom-domain management tab in the settings popup. Visible only on subsites (non-main-official hosts) for site admins.`},"settings.buildNow":{message:`Ein-Klick-Bau`,description:`Text des Buttons 'Ein-Klick-Bau von Subsites' auf der Über-Seite, nur auf der offiziellen Hauptseite sichtbar`},"settings.poweredBy":{message:`Open-Source-Projekt`,description:`Titel, der auf der Über-Seite anzeigt, auf welchem Open-Source-Projekt diese Seite basiert`},"settings.poweredByTip":{message:`Diese Seite basiert auf dem Open-Source-Projekt Nexior, der Code ist vollständig Open-Source.`,description:`Erklärung auf der Über-Seite, auf welchem Open-Source-Projekt diese Seite basiert`},"settings.apiService":{message:`API-Dienst`,description:`Titel, der auf der Über-Seite den Anbieter des API-Dienstes anzeigt`},"settings.apiServiceTip":{message:`Der API-Dienst dieser Seite wird von Ace Data Cloud bereitgestellt.`,description:`Erklärung auf der Über-Seite, die den Anbieter des API-Dienstes anzeigt`},"settings.buildYourOwn":{message:`Eigene Version erstellen`,description:`Titel auf der Über-Seite, der den Nutzern anzeigt, dass sie eine ähnliche Seite erstellen können`},"settings.buildYourOwnTip":{message:`Möchten Sie eine ähnliche AI-Seite erstellen? Kontaktieren Sie uns für Unterstützung bei der Bereitstellung.`,description:`Erklärung auf der Über-Seite zum Erstellen einer eigenen Version`},"settings.contactUs":{message:`Kontaktieren Sie den Support`,description:`Text des Buttons zum Kontaktieren des Supports`},"message.viewOnGithub":{message:`Auf GitHub ansehen`,description:`Text des Links, um das Projekt auf GitHub anzusehen`},"title.notFound":{message:`Seite nicht gefunden`,description:`Titel der 404-Seite`},"message.notFound":{message:`Die von Ihnen aufgerufene Seite existiert nicht, möglicherweise wurde der Link geändert oder entfernt. Kehren Sie zur Startseite zurück, um die AI-Dienste von AceData weiter zu erkunden.`,description:`Untertitelbeschreibung der 404-Seite`},"message.notFoundEyebrow":{message:`Ein Fehler ist aufgetreten`,description:`Text des kleinen Labels oben auf der 404-Seite`},"message.notFoundPath":{message:`Angeforderter Pfad`,description:`Label auf der 404-Seite, das den aktuellen angeforderten Pfad anzeigt`},"button.backToHome":{message:`Zur Startseite zurück`,description:`Text des Buttons, um zur Startseite zurückzukehren`},"button.goBack":{message:`Zurück zur vorherigen Seite`,description:`Text des Buttons, um zur vorherigen Seite im Verlauf zurückzukehren`},"title.apiCode":{message:`API code for this request`,description:`Title of the dialog that shows the equivalent API code (curl / Python / Node) that would reproduce a result generated inside the product`},"message.viewCodeHint":{message:`Show API code for this request`,description:`Tooltip text on the View Code button shown alongside result-card action buttons (U1/U2/Download/Extend/...). Clicking the button opens a dialog with curl / Python / Node snippets that reproduce the same generation via the public API.`},"button.viewCode":{message:`View code`,description:`Button text that opens a dialog with the equivalent API code (curl / Python / Node) for the current result, similar to the OpenAI Playground 'View code' affordance`},"button.getApiKey":{message:`Get an API key`,description:`Link text in the API code dialog footer that opens the platform console page where users can create an API key`},"button.apiPlatform":{message:`API Platform`,description:`API code dialog footer button label. Clicking opens https://platform.acedata.cloud/ in a new tab so users can manage their API keys, balance and usage.`},"message.apiCodeIntro":{message:`Run this from your own code to produce the same result. Replace <YOUR_API_KEY> with a key from your platform console.`,description:`Helper text shown above the code tabs in the API code dialog, explaining how to use the snippet`},"tab.apiRequest":{message:`Anfrage`,description:`API-Code-Dialog Tab-Beschriftung für den Anfrage-Snippet (der Code, der das aktuelle Ergebnis reproduziert).`},"tab.apiResponse":{message:`Antwort`,description:`API-Code-Dialog Tab-Beschriftung für die Live-Antwort, die nach dem Klicken auf Ausführen zurückgegeben wird.`},"button.apiRun":{message:`Erneut ausführen`,description:`API-Code-Dialogschaltfläche, die die Anfrage live gegen die API mit dem Schlüssel des Benutzers erneut ausführt. Das Ergebnis existiert bereits, daher wird es durch Klicken erneut ausgeführt und ist kostenpflichtig.`},"button.apiRunning":{message:`Wird ausgeführt…`,description:`API-Code-Dialog Ausführen-Button-Beschriftung, während die Live-Anfrage verarbeitet wird.`},"button.apiRunConfirm":{message:`Ausführung bestätigen`,description:`Bestätigungs-Schaltflächenbeschriftung im Dialog, der warnt, dass die Ausführung hier zusätzliche Credits verbraucht.`},"button.viewDocs":{message:`Dokumentation anzeigen`,description:`Fußzeilen-Schaltfläche im API-Code-Dialog, die die entsprechende API-Dokumentationsseite auf der Plattform öffnet.`},"message.apiClickRun":{message:`Klicken Sie auf „Erneut ausführen“, um Ihre API-Schlüssel in Echtzeit für diese Anfrage zu verwenden.`,description:`Leerer Zustand des Antwort-Tabs im API-Code-Dialog, der angezeigt wird, bevor der Benutzer die Anfrage ausgeführt hat.`},"message.apiRunConfirmTitle":{message:`Ausführung bestätigen`,description:`Titel des Bestätigungsdialogs, der angezeigt wird, bevor eine Anfrage aus dem API-Code-Dialog erneut ausgeführt wird.`},"message.apiRunConfirmDesc":{message:`Diese Ausführung wird Ihre API-Schlüssel verwenden, um die Schnittstelle tatsächlich aufzurufen und zusätzliche Punkte zu verbrauchen. Möchten Sie fortfahren?`,description:`Inhalt des Bestätigungsdialogs, der warnt, dass das erneute Ausführen der Anfrage einen echten, kostenpflichtigen API-Aufruf darstellt.`},"message.apiRunConfirmSkip":{message:`Nicht erneut anzeigen`,description:`Kontrollkästchen im Bestätigungsdialog, das, wenn es aktiviert ist, die Warnung bei nachfolgenden Ausführungen unterdrückt.`},"message.apiRunTaskCreated":{message:`Aufgabe erstellt, schließen Sie dieses Fenster, um die neuesten Ergebnisse unten zu sehen.`,description:`Erfolgsbanner, das im API-Code-Dialog angezeigt wird, nachdem ein Lauf eine Aufgaben-ID zurückgibt und darauf hinweist, dass die neue Aufgabe bereits in der Liste hinter dem Dialog erscheint.`},"button.apiViewLatest":{message:`Schließen und ansehen`,description:`Schaltfläche im Erfolgsbanner des API-Code-Dialogs, die den Dialog schließt, damit der Benutzer die neu erstellte Aufgabe in der Liste unten sehen kann.`},"message.uploadInProgress":{message:`Referenz-Uploads sind noch in Bearbeitung – bitte warten Sie einen Moment.`,description:`Toast shown when the user clicks the Generate button while one or more reference uploads are still in flight. Asks them to wait for uploads to complete before retrying.`},"appUpgrade.title":{message:`Update required`,description:`Title of the native-app version gate modal shown at startup when the installed build is older than what the backend supports.`},"appUpgrade.blockMessage":{message:`This version is no longer supported. Please update from the app store to continue.`,description:`Body text of the hard-block upgrade modal shown when the installed version is below min_supported. The modal has no dismiss affordance — the only button opens the app store.`},"appUpgrade.softMessage":{message:`A newer version is available. Update from the app store for the best experience.`,description:`Body text of the soft upgrade prompt shown when the installed version is below latest but above min_supported. The user can dismiss and keep using the app.`},"appUpgrade.openStore":{message:`Update now`,description:`Primary button on the upgrade modal — opens the App Store / Play Store URL in the system browser.`},"appUpgrade.later":{message:`Later`,description:`Secondary button on the soft upgrade prompt — dismisses the modal and lets the user keep using the current version. Only shown for non-forced upgrades.`},"nav.maestro":{message:`Maestro`,description:`Text auf der Navigationsleiste für die Seite, die Artikel in Videos umwandelt, bleibt 'Maestro'`}};export{e as default};
|