@acedatacloud/nexior 3.257.0 → 3.258.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{ApiCodeButton-CgHCT9m2.js → ApiCodeButton-BnhRGoHa.js} +1 -1
- package/dist/assets/{Auth-BAMhyD3I.js → Auth-B-tosCjG.js} +1 -1
- package/dist/assets/{BotPlaceholder-BnlwN5pY.js → BotPlaceholder-CWZ-jLaQ.js} +1 -1
- package/dist/assets/{Callback-D0oanT0M.js → Callback-DontwWN2.js} +1 -1
- package/dist/assets/{Console-CqFKeJlV.js → Console-Dn5PVkJl.js} +1 -1
- package/dist/assets/{Consumption-DgzmgXLh.js → Consumption-D6SdJe6i.js} +1 -1
- package/dist/assets/{Conversation-Bo4ntVEO.js → Conversation-B9fy6Bab.js} +3 -3
- package/dist/assets/{CopyToClipboard-DeIBeIOj.js → CopyToClipboard-BgYTcbSR.js} +1 -1
- package/dist/assets/Detail-Bn9QvJ57.js +2 -0
- package/dist/assets/{Extra-B5ERRMFC.js → Extra-DnZEBqyP.js} +1 -1
- package/dist/assets/{FilePreview-DiNzzLDZ.js → FilePreview-TMppMkIO.js} +1 -1
- package/dist/assets/{Hailuo-BMrwqN-R.js → Hailuo-C6-ujjY-.js} +1 -1
- package/dist/assets/{History-60y4nsf6.js → History-GdxHkt11.js} +1 -1
- package/dist/assets/{ImagePreview-DUiY2Hsl.js → ImagePreview-DsvWqvur.js} +1 -1
- package/dist/assets/{ImageWrapper-DNb5bay0.js → ImageWrapper-C141nOSf.js} +1 -1
- package/dist/assets/{Index-wfQowOFh.js → Index-8v1oAQ1D.js} +1 -1
- package/dist/assets/{Index-u8PTTgns.js → Index-B-Px1u0A.js} +1 -1
- package/dist/assets/{Index-Cb_eU8KQ.js → Index-BHQmochW.js} +1 -1
- package/dist/assets/{Index-DeG8cl4T2.js → Index-BaTkDdaM2.js} +1 -1
- package/dist/assets/{Index-Dz6uChK-.js → Index-Bj3ifKj8.js} +1 -1
- package/dist/assets/{Index-CuuIvMsT.js → Index-BjFq7tGz.js} +1 -1
- package/dist/assets/{Index-BsdXt3SL.js → Index-Bybx5L94.js} +1 -1
- package/dist/assets/{Index-C-dkYW6G2.js → Index-C7DJCydU2.js} +1 -1
- package/dist/assets/Index-C9QZWG58.js +1 -0
- package/dist/assets/Index-CC17pwop.js +1 -0
- package/dist/assets/Index-CJ6gJ8Sq.css +1 -0
- package/dist/assets/{Index-BCIOtg-X.js → Index-CNbRYDSI.js} +1 -1
- package/dist/assets/Index-CXMqNYPW.js +1 -0
- package/dist/assets/{Index-Kd0S7z_o.js → Index-C_zG3Kk-.js} +1 -1
- package/dist/assets/{Index-D8wnTQ6A.js → Index-CxvGzwna.js} +1 -1
- package/dist/assets/{Index-DjMjs4wN2.js → Index-D91pfQiX2.js} +1 -1
- package/dist/assets/{Index-Bojc2VL1.js → Index-DYvtRWcV.js} +1 -1
- package/dist/assets/{Index-xEgxahTA.js → Index-D_FSzwkL.js} +1 -1
- package/dist/assets/Index-Dpf2dY_L.js +1 -0
- package/dist/assets/{Index-B11dP0dB.js → Index-DuiGTD59.js} +1 -1
- package/dist/assets/Index-OaDES6A6.js +1 -0
- package/dist/assets/Index-SxQyx_un.js +1 -0
- package/dist/assets/Index-as7TNatt.js +1 -0
- package/dist/assets/{Index-Gab_7twU.js → Index-fSkBfc1b.js} +1 -1
- package/dist/assets/{Index-0w08LobT.js → Index-gK8R9kE0.js} +2 -2
- package/dist/assets/Index-ov4_yeBA.js +1 -0
- package/dist/assets/{Invitees-AmU6URG5.js → Invitees-BPnd5apu.js} +1 -1
- package/dist/assets/{List-DmEIko1v.js → List-CwY8PAVX.js} +1 -1
- package/dist/assets/List-Cyultaf9.js +1 -0
- package/dist/assets/List-D4L2SyYv.js +1 -0
- package/dist/assets/{Main-0CfkC7Hf.js → Main-CT19Nj5m.js} +1 -1
- package/dist/assets/{Model-gePfTBoE.js → Model-BwChK5tp.js} +1 -1
- package/dist/assets/{Navigator-B017LqHN.css → Navigator-D1j7l6Aj.css} +1 -1
- package/dist/assets/Navigator-iq5X18Oe.js +4 -0
- package/dist/assets/{NoTasks-CQ_gRApe.js → NoTasks-BSGHQNdO.js} +1 -1
- package/dist/assets/{NotFound-D80oKQZw.js → NotFound-CQjSi5MH.js} +1 -1
- package/dist/assets/{Pagination-B3bx9xez.js → Pagination-Di_yqfqX.js} +1 -1
- package/dist/assets/{Pay-B9YTmCDr.js → Pay-C7EgtKX-.js} +1 -1
- package/dist/assets/{Player-BBgGL9LQ.js → Player-BIoX_RId.js} +1 -1
- package/dist/assets/Status-DCZU2Iuq.js +1 -0
- package/dist/assets/Status-IpPBRoFm.css +1 -0
- package/dist/assets/{Subscribe-Dogh0M7-.js → Subscribe-Bg6z5EBd.js} +1 -1
- package/dist/assets/{TabSwitcher-DtA9c_Zw.js → TabSwitcher-Ba8ZTGKR.js} +1 -1
- package/dist/assets/{Tts-DOU8fhRY.js → Tts-J5I94C_g.js} +1 -1
- package/dist/assets/{VideoPlayer-aBOzTTzm.js → VideoPlayer-BTaBgcT6.js} +1 -1
- package/dist/assets/_baseIteratee-D7xdcXyl.js +1 -0
- package/dist/assets/avatar-DDNa26p1.js +1 -0
- package/dist/assets/{basic-B9Gz5itR.js → basic-BDUBXx1c.js} +1 -1
- package/dist/assets/{chat-D3PCmnZ3.js → chat-BYfphwYG.js} +1 -1
- package/dist/assets/{checkbox-CKgwxnhw.js → checkbox-B_yzN9YW.js} +1 -1
- package/dist/assets/codingBridge-9rYUCrBR.js +1 -0
- package/dist/assets/codingBridge-B29iZA_g.js +1 -0
- package/dist/assets/codingBridge-BKzOG3KT.js +1 -0
- package/dist/assets/{codingBridge-C14Q8LlJ.js → codingBridge-BQ6V3jDF.js} +1 -1
- package/dist/assets/{codingBridge-BK2BgpM_.js → codingBridge-Bi4vKbcK.js} +1 -1
- package/dist/assets/{codingBridge-BEvgOG8q.js → codingBridge-Bz2hpXvJ.js} +1 -1
- package/dist/assets/codingBridge-CDtrx0vb.js +1 -0
- package/dist/assets/codingBridge-CToTTqBs.js +1 -0
- package/dist/assets/{codingBridge-BUeYrno7.js → codingBridge-CenB4yyd.js} +1 -1
- package/dist/assets/{codingBridge-CsIl97nZ.js → codingBridge-CibrBp-7.js} +1 -1
- package/dist/assets/{codingBridge-CHX2naZ0.js → codingBridge-ClqaQoxQ.js} +1 -1
- package/dist/assets/codingBridge-CuuaCrsE.js +1 -0
- package/dist/assets/codingBridge-CzG98iEB.js +1 -0
- package/dist/assets/codingBridge-D4JrjXuw.js +1 -0
- package/dist/assets/codingBridge-DdZj709T.js +1 -0
- package/dist/assets/codingBridge-DkzK60CV.js +1 -0
- package/dist/assets/codingBridge-NljZqIaY.js +1 -0
- package/dist/assets/codingBridge-jdNYH7EU.js +1 -0
- package/dist/assets/codingBridge-ra0n7eeh.js +1 -0
- package/dist/assets/{constants-CFz57J9g.js → constants-Ch-akEqn.js} +1 -1
- package/dist/assets/{createTaskActions-CIuaRo62.js → createTaskActions-BR-TQS1t.js} +1 -1
- package/dist/assets/date-picker-B8OCKb8G.js +1 -0
- package/dist/assets/dropdown-Cbgd3uK3.js +1 -0
- package/dist/assets/{esm-fcHFiNDy.js → esm-BYz85wqk.js} +2 -2
- package/dist/assets/{esm-BKCosm1z.js → esm-Bk5h-AVf.js} +1 -1
- package/dist/assets/{esm-CUH9kv7M.js → esm-C-Hc-fqp.js} +1 -1
- package/dist/assets/{esm-DWibHC0-.js → esm-DSZBcv02.js} +3 -3
- package/dist/assets/{esm-WZAyHGv7.js → esm-Djtol7BG.js} +1 -1
- package/dist/assets/{fish-Dtmj5Nhv.js → fish-C9HIwHHU.js} +1 -1
- package/dist/assets/{flux-FDqTqBJu.js → flux-C_a7IaQg.js} +1 -1
- package/dist/assets/{hailuo-DF36pDuf.js → hailuo-0054u4Nf.js} +1 -1
- package/dist/assets/{headshots-BXFphflv.js → headshots-CvNaz_34.js} +1 -1
- package/dist/assets/image-h59pgGu4.js +1 -0
- package/dist/assets/{index-Cj8vHkjN.css → index-BevOo0CJ.css} +1 -1
- package/dist/assets/{index-B_1QvDo9.js → index-Lyxum_zj.js} +11 -11
- package/dist/assets/{index.browser.esm-DikLW9pJ.js → index.browser.esm-HuZS-qJg.js} +1 -1
- package/dist/assets/{index.es-BTdQUat2.js → index.es-CRAhHJsF.js} +1 -1
- package/dist/assets/{input-number-DPXUycpm.js → input-number-DRiPLyxJ.js} +1 -1
- package/dist/assets/isEqual-D1Dt5MqB.js +1 -0
- package/dist/assets/{kling-Ds4sIaGG.js → kling-BXdjOdn4.js} +1 -1
- package/dist/assets/{luma-BpKNWvmZ.js → luma-BEfym1CL.js} +1 -1
- package/dist/assets/{midjourney-kkdc36lm.js → midjourney-D7zquBza.js} +1 -1
- package/dist/assets/{nanobanana-DF-nYBbw.js → nanobanana-1Fs2BxsU.js} +1 -1
- package/dist/assets/{openaiimage--4pDuj9c.js → openaiimage-7jnyMvwr.js} +1 -1
- package/dist/assets/{pagination-D_yaO92P.js → pagination-CtEQ0kyl.js} +3 -3
- package/dist/assets/{pika-DXY-WfoE.js → pika-Q3hPJ60M.js} +1 -1
- package/dist/assets/{pixverse-CHaGA0yr.js → pixverse-MKIIcA6t.js} +1 -1
- package/dist/assets/{popover-wQa7LVLE.js → popover-CVWhmFil.js} +1 -1
- package/dist/assets/{producer-dxmMeVaw.js → producer-DyG2oc34.js} +1 -1
- package/dist/assets/{qrart-DJK7bqGS.js → qrart-DArnA7t8.js} +1 -1
- package/dist/assets/{seedance-BC0B-fq4.js → seedance-CzxKsvIl.js} +1 -1
- package/dist/assets/{seedream-CY7wE1u-.js → seedream-3wiXRyrv.js} +1 -1
- package/dist/assets/select-D09DhLq3.js +1 -0
- package/dist/assets/{serp-BL9jBHLw.js → serp-uJ4gL7ia.js} +1 -1
- package/dist/assets/slider-Boe4ZceA.js +1 -0
- package/dist/assets/{solana-wallets-17cZrxF5.js → solana-wallets-CULoYHE_.js} +2 -2
- package/dist/assets/{solana-wallets-vue-dDlwXSLi.js → solana-wallets-vue-j3DbAXlX.js} +1 -1
- package/dist/assets/sora-B0kKB478.js +1 -0
- package/dist/assets/{suno-DEJtO8RI.js → suno-BGKdUwhb.js} +1 -1
- package/dist/assets/{switch-BdYT45Ub.js → switch-4rpQbrhU.js} +1 -1
- package/dist/assets/table-BjrEDV1-.js +1 -0
- package/dist/assets/{upload-DFPa_BD4.js → upload-B8zBOx3w.js} +1 -1
- package/dist/assets/{veo-BlfBy_Pe.js → veo-DditUC7C.js} +1 -1
- package/dist/assets/{wan-BHDnZ_bI.js → wan-pw2rxbi2.js} +1 -1
- package/dist/assets/{web-DM0hVAqj.js → web-AtDnSDka.js} +1 -1
- package/dist/assets/{web-DX6FwSGo.js → web-CURWbw5F.js} +1 -1
- package/dist/assets/{web-CQDyXPiP.js → web-CxYzWcYK.js} +1 -1
- package/dist/assets/{web-CYa3IpfX.js → web-D1eXn2O_.js} +1 -1
- package/dist/assets/webextrator-BasTffLK.js +1 -0
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/Detail-DH5mPbme.js +0 -2
- package/dist/assets/Index-B3bh-5gq.css +0 -1
- package/dist/assets/Index-BGKrtDyk.js +0 -1
- package/dist/assets/Index-CCy49FOt.js +0 -1
- package/dist/assets/Index-Cl1JZT01.css +0 -1
- package/dist/assets/Index-CxYri5gL.js +0 -1
- package/dist/assets/Index-D7jcGjN2.js +0 -1
- package/dist/assets/Index-DBBBFS9H.js +0 -1
- package/dist/assets/Index-DEpfT9Ka.js +0 -1
- package/dist/assets/Index-DJer1ZmT.js +0 -1
- package/dist/assets/Index-DbtQZKHU.js +0 -1
- package/dist/assets/Index-DsNrDTte.js +0 -1
- package/dist/assets/List-DEVvonpi.js +0 -1
- package/dist/assets/List-KaAqzJHe.js +0 -1
- package/dist/assets/Navigator-DDMtKHp4.js +0 -4
- package/dist/assets/Status-BMTS_Vge.css +0 -1
- package/dist/assets/Status-JY9EN7o9.js +0 -1
- package/dist/assets/_baseIteratee-BCqnFp_O.js +0 -1
- package/dist/assets/avatar-Bia_QIjs.js +0 -1
- package/dist/assets/codingBridge-CSQ2AOPD.js +0 -1
- package/dist/assets/codingBridge-CdHE1A0A.js +0 -1
- package/dist/assets/codingBridge-CsI0zSNn.js +0 -1
- package/dist/assets/codingBridge-CwUbUY8v.js +0 -1
- package/dist/assets/codingBridge-DIIQ2gkp.js +0 -1
- package/dist/assets/codingBridge-DKg2G9UB.js +0 -1
- package/dist/assets/codingBridge-DXNHUQpv.js +0 -1
- package/dist/assets/codingBridge-DjRNG5ht.js +0 -1
- package/dist/assets/codingBridge-Dk0ryStf.js +0 -1
- package/dist/assets/codingBridge-Dm5_lucE.js +0 -1
- package/dist/assets/codingBridge-KhOqjV3m.js +0 -1
- package/dist/assets/codingBridge-bYdt0wAl.js +0 -1
- package/dist/assets/codingBridge-zD_o2rD0.js +0 -1
- package/dist/assets/date-picker-D6G9OJoF.js +0 -1
- package/dist/assets/debounce-4KoW0vm_.js +0 -1
- package/dist/assets/dropdown-CMttWIFf.js +0 -1
- package/dist/assets/dropdown-CTXbDUec.js +0 -1
- package/dist/assets/image-CeLt9nwZ.js +0 -1
- package/dist/assets/isEqual-CXTZhd8I.js +0 -1
- package/dist/assets/menu-Dz5WkqXt.js +0 -1
- package/dist/assets/select-DkP5Ako1.js +0 -1
- package/dist/assets/slider-DS-Bn0fj.js +0 -1
- package/dist/assets/sora-DX9jBXCQ.js +0 -1
- package/dist/assets/table-mXtDbICN.js +0 -1
- package/dist/assets/webextrator-BwnRnwNs.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={"nodeList.title":{message:`设备`,description:`Coding Bridge 设备列表标题`},"nodeList.refresh":{message:`刷新`,description:`刷新设备列表`},"nodeList.pair":{message:`配对设备`,description:`打开配对对话框`},"nodeList.empty":{message:`尚未配对任何设备。`,description:`设备列表为空时的提示`},"nodeList.pairFirst":{message:`配对第一台设备`,description:`空状态下的配对按钮`},"nodeList.remove":{message:`移除`,description:`移除设备`},"nodeList.removeConfirm":{message:`移除设备“{name}”?移除后需要重新配对。`,description:`移除设备确认`},"nodeList.removeSuccess":{message:`设备已移除。`,description:`移除设备成功提示`},"nodeList.removeFailed":{message:`移除设备失败。`,description:`移除设备失败提示`},"status.online":{message:`在线`,description:`设备在线状态`},"status.offline":{message:`离线`,description:`设备离线状态`},"connection.disconnected":{message:`已断开`,description:`中继连接已断开`},"connection.connecting":{message:`连接中…`,description:`中继连接中`},"connection.connected":{message:`已连接`,description:`中继已连接`},"connection.error":{message:`连接出错`,description:`中继连接出错`},"pair.title":{message:`配对设备`,description:`配对对话框标题`},"pair.intro":{message:`在你的电脑上运行 Coding Bridge 代理,然后在此输入配对码即可在网页端控制它。`,description:`配对对话框介绍`},"pair.step1":{message:`安装代理(需要 Python 3.10+):`,description:`配对步骤 1`},"pair.step2":{message:`启动并按提示操作:`,description:`配对步骤 2`},"pair.step3":{message:`输入下方显示的配对码。`,description:`配对步骤 3`},"pair.codePlaceholder":{message:`配对码`,description:`配对码输入框占位符`},"pair.claim":{message:`配对设备`,description:`配对确认按钮`},"pair.success":{message:`设备“{name}”已配对。`,description:`配对成功提示`},"pair.invalidCode":{message:`配对码无效或已过期。`,description:`配对码无效错误`},"pair.usedCode":{message:`该配对码已被使用。`,description:`配对码已使用错误`},"pair.failed":{message:`配对设备失败。`,description:`配对通用错误`},"permission.title":{message:`需要授权`,description:`授权对话框标题`},"permission.subtitle":{message:`代理请求使用一个工具,批准后继续。`,description:`授权对话框副标题`},"permission.deny":{message:`拒绝`,description:`拒绝工具授权`},"permission.allow":{message:`允许`,description:`允许工具授权`},"session.noDevice":{message:`选择一台设备开始编码。`,description:`未选择设备时的占位提示`},"session.newSession":{message:`新会话`,description:`开始新会话`},"session.deviceOffline":{message:`该设备已离线。请在该设备上启动 Coding Bridge 代理后继续。`,description:`设备离线警告`},"session.startHint":{message:`发送一条消息以在该设备上开始会话。`,description:`空白记录提示`},"session.cwdPlaceholder":{message:`工作目录(可选)`,description:`工作目录输入框占位符`},"session.modelPlaceholder":{message:`模型(可选)`,description:`模型输入框占位符`},"session.promptPlaceholder":{message:`向代理发送消息…`,description:`提示词输入框占位符`},"session.send":{message:`发送`,description:`发送提示词按钮`},"session.enterHint":{message:`回车发送,Shift+回车换行。`,description:`输入框键盘提示`},"transcript.turnFailed":{message:`执行失败`,description:`回合结果失败标签`},"transcript.turnDone":{message:`完成`,description:`回合结果完成标签`}};export{e as default};
|
|
1
|
+
var e={"nodeList.title":{message:`设备`,description:`Coding Bridge 设备列表标题`},"nodeList.refresh":{message:`刷新`,description:`刷新设备列表`},"nodeList.pair":{message:`配对设备`,description:`打开配对对话框`},"nodeList.empty":{message:`尚未配对任何设备。`,description:`设备列表为空时的提示`},"nodeList.pairFirst":{message:`配对第一台设备`,description:`空状态下的配对按钮`},"nodeList.remove":{message:`移除`,description:`移除设备`},"nodeList.removeConfirm":{message:`移除设备“{name}”?移除后需要重新配对。`,description:`移除设备确认`},"nodeList.removeSuccess":{message:`设备已移除。`,description:`移除设备成功提示`},"nodeList.removeFailed":{message:`移除设备失败。`,description:`移除设备失败提示`},"status.online":{message:`在线`,description:`设备在线状态`},"status.offline":{message:`离线`,description:`设备离线状态`},"connection.disconnected":{message:`已断开`,description:`中继连接已断开`},"connection.connecting":{message:`连接中…`,description:`中继连接中`},"connection.connected":{message:`已连接`,description:`中继已连接`},"connection.error":{message:`连接出错`,description:`中继连接出错`},"pair.title":{message:`配对设备`,description:`配对对话框标题`},"pair.intro":{message:`在你的电脑上运行 Coding Bridge 代理,然后在此输入配对码即可在网页端控制它。`,description:`配对对话框介绍`},"pair.step1":{message:`安装代理(需要 Python 3.10+):`,description:`配对步骤 1`},"pair.step2":{message:`启动并按提示操作:`,description:`配对步骤 2`},"pair.step3":{message:`输入下方显示的配对码。`,description:`配对步骤 3`},"pair.codePlaceholder":{message:`配对码`,description:`配对码输入框占位符`},"pair.claim":{message:`配对设备`,description:`配对确认按钮`},"pair.success":{message:`设备“{name}”已配对。`,description:`配对成功提示`},"pair.invalidCode":{message:`配对码无效或已过期。`,description:`配对码无效错误`},"pair.usedCode":{message:`该配对码已被使用。`,description:`配对码已使用错误`},"pair.failed":{message:`配对设备失败。`,description:`配对通用错误`},"permission.title":{message:`需要授权`,description:`授权对话框标题`},"permission.subtitle":{message:`代理请求使用一个工具,批准后继续。`,description:`授权对话框副标题`},"permission.deny":{message:`拒绝`,description:`拒绝工具授权`},"permission.allow":{message:`允许`,description:`允许工具授权`},"session.noDevice":{message:`选择一台设备开始编码。`,description:`未选择设备时的占位提示`},"session.newSession":{message:`新会话`,description:`开始新会话`},"session.deviceOffline":{message:`该设备已离线。请在该设备上启动 Coding Bridge 代理后继续。`,description:`设备离线警告`},"session.startHint":{message:`发送一条消息以在该设备上开始会话。`,description:`空白记录提示`},"session.cwdPlaceholder":{message:`工作目录(可选)`,description:`工作目录输入框占位符`},"session.modelPlaceholder":{message:`模型(可选)`,description:`模型输入框占位符`},"session.promptPlaceholder":{message:`向代理发送消息…`,description:`提示词输入框占位符`},"session.send":{message:`发送`,description:`发送提示词按钮`},"session.enterHint":{message:`回车发送,Shift+回车换行。`,description:`输入框键盘提示`},"transcript.turnFailed":{message:`执行失败`,description:`回合结果失败标签`},"transcript.turnDone":{message:`完成`,description:`回合结果完成标签`},"history.button":{message:`历史会话`,description:`打开历史会话抽屉`},"history.title":{message:`历史会话`,description:`历史会话抽屉标题`},"history.intro":{message:`此设备上的 Claude Code 与 Codex 历史会话。`,description:`历史会话抽屉说明`},"history.refresh":{message:`刷新`,description:`重新加载历史列表`},"history.loading":{message:`正在加载历史…`,description:`历史加载提示`},"history.empty":{message:`此设备上没有找到历史会话。`,description:`历史为空提示`},"history.messages":{message:`{count} 条消息`,description:`历史条目消息数`},"history.readonly":{message:`此 Codex 会话为只读,无法继续。开始新会话以继续编码。`,description:`只读回放提示`},"history.resumeHint":{message:`发送消息将在设备上续接此会话。`,description:`续接输入框提示`},"history.claudeLabel":{message:`Claude 历史`,description:`回放的 Claude 会话标签`},"history.codexLabel":{message:`Codex 历史(只读)`,description:`回放的 Codex 会话标签`}};export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={"nodeList.title":{message:`裝置`,description:`Coding Bridge 裝置清單標題`},"nodeList.refresh":{message:`重新整理`,description:`重新整理裝置清單`},"nodeList.pair":{message:`配對裝置`,description:`開啟配對對話框`},"nodeList.empty":{message:`尚未配對任何裝置。`,description:`裝置清單為空時的提示`},"nodeList.pairFirst":{message:`配對第一台裝置`,description:`空狀態下的配對按鈕`},"nodeList.remove":{message:`移除`,description:`移除裝置`},"nodeList.removeConfirm":{message:`移除裝置「{name}」?移除後需要重新配對。`,description:`移除裝置確認`},"nodeList.removeSuccess":{message:`裝置已移除。`,description:`移除裝置成功提示`},"nodeList.removeFailed":{message:`移除裝置失敗。`,description:`移除裝置失敗提示`},"status.online":{message:`線上`,description:`裝置線上狀態`},"status.offline":{message:`離線`,description:`裝置離線狀態`},"connection.disconnected":{message:`已斷線`,description:`中繼連線已斷線`},"connection.connecting":{message:`連線中…`,description:`中繼連線中`},"connection.connected":{message:`已連線`,description:`中繼已連線`},"connection.error":{message:`連線錯誤`,description:`中繼連線錯誤`},"pair.title":{message:`配對裝置`,description:`配對對話框標題`},"pair.intro":{message:`在你的電腦上執行 Coding Bridge 代理程式,然後在此輸入配對碼即可從網頁端控制它。`,description:`配對對話框介紹`},"pair.step1":{message:`安裝代理程式(需要 Python 3.10+):`,description:`配對步驟 1`},"pair.step2":{message:`啟動並依提示操作:`,description:`配對步驟 2`},"pair.step3":{message:`輸入下方顯示的配對碼。`,description:`配對步驟 3`},"pair.codePlaceholder":{message:`配對碼`,description:`配對碼輸入框佔位符`},"pair.claim":{message:`配對裝置`,description:`配對確認按鈕`},"pair.success":{message:`裝置「{name}」已配對。`,description:`配對成功提示`},"pair.invalidCode":{message:`配對碼無效或已過期。`,description:`配對碼無效錯誤`},"pair.usedCode":{message:`此配對碼已被使用。`,description:`配對碼已使用錯誤`},"pair.failed":{message:`配對裝置失敗。`,description:`配對通用錯誤`},"permission.title":{message:`需要授權`,description:`授權對話框標題`},"permission.subtitle":{message:`代理程式請求使用工具,核准後繼續。`,description:`授權對話框副標題`},"permission.deny":{message:`拒絕`,description:`拒絕工具授權`},"permission.allow":{message:`允許`,description:`允許工具授權`},"session.noDevice":{message:`選擇一台裝置開始編碼。`,description:`未選擇裝置時的佔位提示`},"session.newSession":{message:`新工作階段`,description:`開始新工作階段`},"session.deviceOffline":{message:`此裝置已離線。請在該裝置上啟動 Coding Bridge 代理程式後繼續。`,description:`裝置離線警告`},"session.startHint":{message:`傳送一則訊息以在此裝置上開始工作階段。`,description:`空白記錄提示`},"session.cwdPlaceholder":{message:`工作目錄(選填)`,description:`工作目錄輸入框佔位符`},"session.modelPlaceholder":{message:`模型(選填)`,description:`模型輸入框佔位符`},"session.promptPlaceholder":{message:`向代理程式傳送訊息…`,description:`提示詞輸入框佔位符`},"session.send":{message:`傳送`,description:`傳送提示詞按鈕`},"session.enterHint":{message:`Enter 傳送,Shift+Enter 換行。`,description:`輸入框鍵盤提示`},"transcript.turnFailed":{message:`執行失敗`,description:`回合結果失敗標籤`},"transcript.turnDone":{message:`完成`,description:`回合結果完成標籤`}};export{e as default};
|
|
1
|
+
var e={"nodeList.title":{message:`裝置`,description:`Coding Bridge 裝置清單標題`},"nodeList.refresh":{message:`重新整理`,description:`重新整理裝置清單`},"nodeList.pair":{message:`配對裝置`,description:`開啟配對對話框`},"nodeList.empty":{message:`尚未配對任何裝置。`,description:`裝置清單為空時的提示`},"nodeList.pairFirst":{message:`配對第一台裝置`,description:`空狀態下的配對按鈕`},"nodeList.remove":{message:`移除`,description:`移除裝置`},"nodeList.removeConfirm":{message:`移除裝置「{name}」?移除後需要重新配對。`,description:`移除裝置確認`},"nodeList.removeSuccess":{message:`裝置已移除。`,description:`移除裝置成功提示`},"nodeList.removeFailed":{message:`移除裝置失敗。`,description:`移除裝置失敗提示`},"status.online":{message:`線上`,description:`裝置線上狀態`},"status.offline":{message:`離線`,description:`裝置離線狀態`},"connection.disconnected":{message:`已斷線`,description:`中繼連線已斷線`},"connection.connecting":{message:`連線中…`,description:`中繼連線中`},"connection.connected":{message:`已連線`,description:`中繼已連線`},"connection.error":{message:`連線錯誤`,description:`中繼連線錯誤`},"pair.title":{message:`配對裝置`,description:`配對對話框標題`},"pair.intro":{message:`在你的電腦上執行 Coding Bridge 代理程式,然後在此輸入配對碼即可從網頁端控制它。`,description:`配對對話框介紹`},"pair.step1":{message:`安裝代理程式(需要 Python 3.10+):`,description:`配對步驟 1`},"pair.step2":{message:`啟動並依提示操作:`,description:`配對步驟 2`},"pair.step3":{message:`輸入下方顯示的配對碼。`,description:`配對步驟 3`},"pair.codePlaceholder":{message:`配對碼`,description:`配對碼輸入框佔位符`},"pair.claim":{message:`配對裝置`,description:`配對確認按鈕`},"pair.success":{message:`裝置「{name}」已配對。`,description:`配對成功提示`},"pair.invalidCode":{message:`配對碼無效或已過期。`,description:`配對碼無效錯誤`},"pair.usedCode":{message:`此配對碼已被使用。`,description:`配對碼已使用錯誤`},"pair.failed":{message:`配對裝置失敗。`,description:`配對通用錯誤`},"permission.title":{message:`需要授權`,description:`授權對話框標題`},"permission.subtitle":{message:`代理程式請求使用工具,核准後繼續。`,description:`授權對話框副標題`},"permission.deny":{message:`拒絕`,description:`拒絕工具授權`},"permission.allow":{message:`允許`,description:`允許工具授權`},"session.noDevice":{message:`選擇一台裝置開始編碼。`,description:`未選擇裝置時的佔位提示`},"session.newSession":{message:`新工作階段`,description:`開始新工作階段`},"session.deviceOffline":{message:`此裝置已離線。請在該裝置上啟動 Coding Bridge 代理程式後繼續。`,description:`裝置離線警告`},"session.startHint":{message:`傳送一則訊息以在此裝置上開始工作階段。`,description:`空白記錄提示`},"session.cwdPlaceholder":{message:`工作目錄(選填)`,description:`工作目錄輸入框佔位符`},"session.modelPlaceholder":{message:`模型(選填)`,description:`模型輸入框佔位符`},"session.promptPlaceholder":{message:`向代理程式傳送訊息…`,description:`提示詞輸入框佔位符`},"session.send":{message:`傳送`,description:`傳送提示詞按鈕`},"session.enterHint":{message:`Enter 傳送,Shift+Enter 換行。`,description:`輸入框鍵盤提示`},"transcript.turnFailed":{message:`執行失敗`,description:`回合結果失敗標籤`},"transcript.turnDone":{message:`完成`,description:`回合結果完成標籤`},"history.button":{message:`歷史會話`,description:`Open the conversation history drawer`},"history.title":{message:`歷史會話`,description:`History drawer title`},"history.intro":{message:`此裝置上的 Claude Code 與 Codex 歷史會話。`,description:`History drawer intro`},"history.refresh":{message:`重新整理`,description:`Reload the history list`},"history.loading":{message:`正在載入歷史…`,description:`History loading message`},"history.empty":{message:`此裝置上找不到歷史會話。`,description:`Empty history message`},"history.messages":{message:`{count} 則訊息`,description:`History item message count`},"history.readonly":{message:`此 Codex 會話為唯讀,無法繼續。開始新會話以繼續編碼。`,description:`Read-only replay notice`},"history.resumeHint":{message:`傳送訊息將在裝置上接續此會話。`,description:`Resume composer hint`},"history.claudeLabel":{message:`Claude 歷史`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Codex 歷史(唯讀)`,description:`Replayed Codex session label`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Devices`,description:`Coding Bridge device list title`},"nodeList.refresh":{message:`Refresh`,description:`Refresh the device list`},"nodeList.pair":{message:`Pair device`,description:`Open the pairing dialog`},"nodeList.empty":{message:`No devices paired yet.`,description:`Empty device list message`},"nodeList.pairFirst":{message:`Pair your first device`,description:`Empty-state pairing button`},"nodeList.remove":{message:`Remove`,description:`Remove a device`},"nodeList.removeConfirm":{message:`Remove device "{name}"? It will need to be paired again.`,description:`Device removal confirmation`},"nodeList.removeSuccess":{message:`Device removed.`,description:`Device removed toast`},"nodeList.removeFailed":{message:`Failed to remove device.`,description:`Device removal error toast`},"status.online":{message:`Online`,description:`Device online status`},"status.offline":{message:`Offline`,description:`Device offline status`},"connection.disconnected":{message:`Disconnected`,description:`Relay connection disconnected`},"connection.connecting":{message:`Connecting…`,description:`Relay connection connecting`},"connection.connected":{message:`Connected`,description:`Relay connection connected`},"connection.error":{message:`Connection error`,description:`Relay connection error`},"pair.title":{message:`Pair a device`,description:`Pairing dialog title`},"pair.intro":{message:`Run the Coding Bridge agent on your computer, then enter its pairing code here to control it from the web.`,description:`Pairing dialog intro`},"pair.step1":{message:`Install the agent (requires Python 3.10+):`,description:`Pairing step 1`},"pair.step2":{message:`Start it and follow the prompt:`,description:`Pairing step 2`},"pair.step3":{message:`Enter the pairing code it shows below.`,description:`Pairing step 3`},"pair.codePlaceholder":{message:`Pairing code`,description:`Pairing code input placeholder`},"pair.claim":{message:`Pair device`,description:`Pairing confirm button`},"pair.success":{message:`Device "{name}" paired.`,description:`Pairing success toast`},"pair.invalidCode":{message:`Invalid or expired pairing code.`,description:`Pairing invalid code error`},"pair.usedCode":{message:`This pairing code has already been used.`,description:`Pairing used code error`},"pair.failed":{message:`Failed to pair device.`,description:`Pairing generic error`},"permission.title":{message:`Permission required`,description:`Permission dialog title`},"permission.subtitle":{message:`The agent wants to use a tool. Approve to continue.`,description:`Permission dialog subtitle`},"permission.deny":{message:`Deny`,description:`Deny a tool permission`},"permission.allow":{message:`Allow`,description:`Allow a tool permission`},"session.noDevice":{message:`Select a device to start coding.`,description:`No device selected placeholder`},"session.newSession":{message:`New session`,description:`Start a new session`},"session.deviceOffline":{message:`This device is offline. Start the Coding Bridge agent on it to continue.`,description:`Device offline warning`},"session.startHint":{message:`Send a message to start a session on this device.`,description:`Empty transcript hint`},"session.cwdPlaceholder":{message:`Working directory (optional)`,description:`Working directory input placeholder`},"session.modelPlaceholder":{message:`Model (optional)`,description:`Model input placeholder`},"session.promptPlaceholder":{message:`Send a message to the agent…`,description:`Prompt input placeholder`},"session.send":{message:`Send`,description:`Send prompt button`},"session.enterHint":{message:`Enter to send, Shift+Enter for a new line.`,description:`Composer keyboard hint`},"transcript.turnFailed":{message:`Turn failed`,description:`Turn result failed label`},"transcript.turnDone":{message:`Done`,description:`Turn result done label`},"history.button":{message:`السجل`,description:`Open the conversation history drawer`},"history.title":{message:`سجل المحادثات`,description:`History drawer title`},"history.intro":{message:`جلسات Claude Code وCodex السابقة على هذا الجهاز.`,description:`History drawer intro`},"history.refresh":{message:`تحديث`,description:`Reload the history list`},"history.loading":{message:`جارٍ تحميل السجل…`,description:`History loading message`},"history.empty":{message:`لا يوجد سجل على هذا الجهاز.`,description:`Empty history message`},"history.messages":{message:`{count} رسالة`,description:`History item message count`},"history.readonly":{message:`محادثة Codex هذه للقراءة فقط ولا يمكن متابعتها. ابدأ جلسة جديدة لمواصلة البرمجة.`,description:`Read-only replay notice`},"history.resumeHint":{message:`سيؤدي إرسال رسالة إلى استئناف هذه المحادثة على الجهاز.`,description:`Resume composer hint`},"history.claudeLabel":{message:`سجل Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`سجل Codex (للقراءة فقط)`,description:`Replayed Codex session label`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Devices`,description:`Coding Bridge device list title`},"nodeList.refresh":{message:`Refresh`,description:`Refresh the device list`},"nodeList.pair":{message:`Pair device`,description:`Open the pairing dialog`},"nodeList.empty":{message:`No devices paired yet.`,description:`Empty device list message`},"nodeList.pairFirst":{message:`Pair your first device`,description:`Empty-state pairing button`},"nodeList.remove":{message:`Remove`,description:`Remove a device`},"nodeList.removeConfirm":{message:`Remove device "{name}"? It will need to be paired again.`,description:`Device removal confirmation`},"nodeList.removeSuccess":{message:`Device removed.`,description:`Device removed toast`},"nodeList.removeFailed":{message:`Failed to remove device.`,description:`Device removal error toast`},"status.online":{message:`Online`,description:`Device online status`},"status.offline":{message:`Offline`,description:`Device offline status`},"connection.disconnected":{message:`Disconnected`,description:`Relay connection disconnected`},"connection.connecting":{message:`Connecting…`,description:`Relay connection connecting`},"connection.connected":{message:`Connected`,description:`Relay connection connected`},"connection.error":{message:`Connection error`,description:`Relay connection error`},"pair.title":{message:`Pair a device`,description:`Pairing dialog title`},"pair.intro":{message:`Run the Coding Bridge agent on your computer, then enter its pairing code here to control it from the web.`,description:`Pairing dialog intro`},"pair.step1":{message:`Install the agent (requires Python 3.10+):`,description:`Pairing step 1`},"pair.step2":{message:`Start it and follow the prompt:`,description:`Pairing step 2`},"pair.step3":{message:`Enter the pairing code it shows below.`,description:`Pairing step 3`},"pair.codePlaceholder":{message:`Pairing code`,description:`Pairing code input placeholder`},"pair.claim":{message:`Pair device`,description:`Pairing confirm button`},"pair.success":{message:`Device "{name}" paired.`,description:`Pairing success toast`},"pair.invalidCode":{message:`Invalid or expired pairing code.`,description:`Pairing invalid code error`},"pair.usedCode":{message:`This pairing code has already been used.`,description:`Pairing used code error`},"pair.failed":{message:`Failed to pair device.`,description:`Pairing generic error`},"permission.title":{message:`Permission required`,description:`Permission dialog title`},"permission.subtitle":{message:`The agent wants to use a tool. Approve to continue.`,description:`Permission dialog subtitle`},"permission.deny":{message:`Deny`,description:`Deny a tool permission`},"permission.allow":{message:`Allow`,description:`Allow a tool permission`},"session.noDevice":{message:`Select a device to start coding.`,description:`No device selected placeholder`},"session.newSession":{message:`New session`,description:`Start a new session`},"session.deviceOffline":{message:`This device is offline. Start the Coding Bridge agent on it to continue.`,description:`Device offline warning`},"session.startHint":{message:`Send a message to start a session on this device.`,description:`Empty transcript hint`},"session.cwdPlaceholder":{message:`Working directory (optional)`,description:`Working directory input placeholder`},"session.modelPlaceholder":{message:`Model (optional)`,description:`Model input placeholder`},"session.promptPlaceholder":{message:`Send a message to the agent…`,description:`Prompt input placeholder`},"session.send":{message:`Send`,description:`Send prompt button`},"session.enterHint":{message:`Enter to send, Shift+Enter for a new line.`,description:`Composer keyboard hint`},"transcript.turnFailed":{message:`Turn failed`,description:`Turn result failed label`},"transcript.turnDone":{message:`Done`,description:`Turn result done label`},"history.button":{message:`Ιστορικό`,description:`Open the conversation history drawer`},"history.title":{message:`Ιστορικό συνομιλιών`,description:`History drawer title`},"history.intro":{message:`Προηγούμενες συνεδρίες Claude Code και Codex σε αυτή τη συσκευή.`,description:`History drawer intro`},"history.refresh":{message:`Ανανέωση`,description:`Reload the history list`},"history.loading":{message:`Φόρτωση ιστορικού…`,description:`History loading message`},"history.empty":{message:`Δεν βρέθηκε ιστορικό σε αυτή τη συσκευή.`,description:`Empty history message`},"history.messages":{message:`{count} μηνύματα`,description:`History item message count`},"history.readonly":{message:`Αυτή η συνομιλία Codex είναι μόνο για ανάγνωση και δεν μπορεί να συνεχιστεί. Ξεκινήστε νέα συνεδρία για να συνεχίσετε.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Η αποστολή μηνύματος θα συνεχίσει αυτή τη συνομιλία στη συσκευή.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Ιστορικό Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Ιστορικό Codex (μόνο για ανάγνωση)`,description:`Replayed Codex session label`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Devices`,description:`Coding Bridge device list title`},"nodeList.refresh":{message:`Refresh`,description:`Refresh the device list`},"nodeList.pair":{message:`Pair device`,description:`Open the pairing dialog`},"nodeList.empty":{message:`No devices paired yet.`,description:`Empty device list message`},"nodeList.pairFirst":{message:`Pair your first device`,description:`Empty-state pairing button`},"nodeList.remove":{message:`Remove`,description:`Remove a device`},"nodeList.removeConfirm":{message:`Remove device "{name}"? It will need to be paired again.`,description:`Device removal confirmation`},"nodeList.removeSuccess":{message:`Device removed.`,description:`Device removed toast`},"nodeList.removeFailed":{message:`Failed to remove device.`,description:`Device removal error toast`},"status.online":{message:`Online`,description:`Device online status`},"status.offline":{message:`Offline`,description:`Device offline status`},"connection.disconnected":{message:`Disconnected`,description:`Relay connection disconnected`},"connection.connecting":{message:`Connecting…`,description:`Relay connection connecting`},"connection.connected":{message:`Connected`,description:`Relay connection connected`},"connection.error":{message:`Connection error`,description:`Relay connection error`},"pair.title":{message:`Pair a device`,description:`Pairing dialog title`},"pair.intro":{message:`Run the Coding Bridge agent on your computer, then enter its pairing code here to control it from the web.`,description:`Pairing dialog intro`},"pair.step1":{message:`Install the agent (requires Python 3.10+):`,description:`Pairing step 1`},"pair.step2":{message:`Start it and follow the prompt:`,description:`Pairing step 2`},"pair.step3":{message:`Enter the pairing code it shows below.`,description:`Pairing step 3`},"pair.codePlaceholder":{message:`Pairing code`,description:`Pairing code input placeholder`},"pair.claim":{message:`Pair device`,description:`Pairing confirm button`},"pair.success":{message:`Device "{name}" paired.`,description:`Pairing success toast`},"pair.invalidCode":{message:`Invalid or expired pairing code.`,description:`Pairing invalid code error`},"pair.usedCode":{message:`This pairing code has already been used.`,description:`Pairing used code error`},"pair.failed":{message:`Failed to pair device.`,description:`Pairing generic error`},"permission.title":{message:`Permission required`,description:`Permission dialog title`},"permission.subtitle":{message:`The agent wants to use a tool. Approve to continue.`,description:`Permission dialog subtitle`},"permission.deny":{message:`Deny`,description:`Deny a tool permission`},"permission.allow":{message:`Allow`,description:`Allow a tool permission`},"session.noDevice":{message:`Select a device to start coding.`,description:`No device selected placeholder`},"session.newSession":{message:`New session`,description:`Start a new session`},"session.deviceOffline":{message:`This device is offline. Start the Coding Bridge agent on it to continue.`,description:`Device offline warning`},"session.startHint":{message:`Send a message to start a session on this device.`,description:`Empty transcript hint`},"session.cwdPlaceholder":{message:`Working directory (optional)`,description:`Working directory input placeholder`},"session.modelPlaceholder":{message:`Model (optional)`,description:`Model input placeholder`},"session.promptPlaceholder":{message:`Send a message to the agent…`,description:`Prompt input placeholder`},"session.send":{message:`Send`,description:`Send prompt button`},"session.enterHint":{message:`Enter to send, Shift+Enter for a new line.`,description:`Composer keyboard hint`},"transcript.turnFailed":{message:`Turn failed`,description:`Turn result failed label`},"transcript.turnDone":{message:`Done`,description:`Turn result done label`},"history.button":{message:`Историја`,description:`Open the conversation history drawer`},"history.title":{message:`Историја разговора`,description:`History drawer title`},"history.intro":{message:`Претходне Claude Code и Codex сесије на овом уређају.`,description:`History drawer intro`},"history.refresh":{message:`Освежи`,description:`Reload the history list`},"history.loading":{message:`Учитавање историје…`,description:`History loading message`},"history.empty":{message:`Историја није пронађена на овом уређају.`,description:`Empty history message`},"history.messages":{message:`Поруке: {count}`,description:`History item message count`},"history.readonly":{message:`Овај Codex разговор је само за читање и не може се наставити. Покрените нову сесију да наставите са кодирањем.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Слање поруке ће наставити овај разговор на уређају.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Claude историја`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Codex историја (само за читање)`,description:`Replayed Codex session label`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Devices`,description:`Coding Bridge device list title`},"nodeList.refresh":{message:`Refresh`,description:`Refresh the device list`},"nodeList.pair":{message:`Pair device`,description:`Open the pairing dialog`},"nodeList.empty":{message:`No devices paired yet.`,description:`Empty device list message`},"nodeList.pairFirst":{message:`Pair your first device`,description:`Empty-state pairing button`},"nodeList.remove":{message:`Remove`,description:`Remove a device`},"nodeList.removeConfirm":{message:`Remove device "{name}"? It will need to be paired again.`,description:`Device removal confirmation`},"nodeList.removeSuccess":{message:`Device removed.`,description:`Device removed toast`},"nodeList.removeFailed":{message:`Failed to remove device.`,description:`Device removal error toast`},"status.online":{message:`Online`,description:`Device online status`},"status.offline":{message:`Offline`,description:`Device offline status`},"connection.disconnected":{message:`Disconnected`,description:`Relay connection disconnected`},"connection.connecting":{message:`Connecting…`,description:`Relay connection connecting`},"connection.connected":{message:`Connected`,description:`Relay connection connected`},"connection.error":{message:`Connection error`,description:`Relay connection error`},"pair.title":{message:`Pair a device`,description:`Pairing dialog title`},"pair.intro":{message:`Run the Coding Bridge agent on your computer, then enter its pairing code here to control it from the web.`,description:`Pairing dialog intro`},"pair.step1":{message:`Install the agent (requires Python 3.10+):`,description:`Pairing step 1`},"pair.step2":{message:`Start it and follow the prompt:`,description:`Pairing step 2`},"pair.step3":{message:`Enter the pairing code it shows below.`,description:`Pairing step 3`},"pair.codePlaceholder":{message:`Pairing code`,description:`Pairing code input placeholder`},"pair.claim":{message:`Pair device`,description:`Pairing confirm button`},"pair.success":{message:`Device "{name}" paired.`,description:`Pairing success toast`},"pair.invalidCode":{message:`Invalid or expired pairing code.`,description:`Pairing invalid code error`},"pair.usedCode":{message:`This pairing code has already been used.`,description:`Pairing used code error`},"pair.failed":{message:`Failed to pair device.`,description:`Pairing generic error`},"permission.title":{message:`Permission required`,description:`Permission dialog title`},"permission.subtitle":{message:`The agent wants to use a tool. Approve to continue.`,description:`Permission dialog subtitle`},"permission.deny":{message:`Deny`,description:`Deny a tool permission`},"permission.allow":{message:`Allow`,description:`Allow a tool permission`},"session.noDevice":{message:`Select a device to start coding.`,description:`No device selected placeholder`},"session.newSession":{message:`New session`,description:`Start a new session`},"session.deviceOffline":{message:`This device is offline. Start the Coding Bridge agent on it to continue.`,description:`Device offline warning`},"session.startHint":{message:`Send a message to start a session on this device.`,description:`Empty transcript hint`},"session.cwdPlaceholder":{message:`Working directory (optional)`,description:`Working directory input placeholder`},"session.modelPlaceholder":{message:`Model (optional)`,description:`Model input placeholder`},"session.promptPlaceholder":{message:`Send a message to the agent…`,description:`Prompt input placeholder`},"session.send":{message:`Send`,description:`Send prompt button`},"session.enterHint":{message:`Enter to send, Shift+Enter for a new line.`,description:`Composer keyboard hint`},"transcript.turnFailed":{message:`Turn failed`,description:`Turn result failed label`},"transcript.turnDone":{message:`Done`,description:`Turn result done label`},"history.button":{message:`Історія`,description:`Open the conversation history drawer`},"history.title":{message:`Історія розмов`,description:`History drawer title`},"history.intro":{message:`Попередні сесії Claude Code та Codex на цьому пристрої.`,description:`History drawer intro`},"history.refresh":{message:`Оновити`,description:`Reload the history list`},"history.loading":{message:`Завантаження історії…`,description:`History loading message`},"history.empty":{message:`Історію на цьому пристрої не знайдено.`,description:`Empty history message`},"history.messages":{message:`Повідомлень: {count}`,description:`History item message count`},"history.readonly":{message:`Ця розмова Codex доступна лише для читання й не може бути продовжена. Почніть нову сесію, щоб продовжити програмувати.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Надсилання повідомлення відновить цю розмову на пристрої.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Історія Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Історія Codex (лише читання)`,description:`Replayed Codex session label`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Devices`,description:`Coding Bridge device list title`},"nodeList.refresh":{message:`Refresh`,description:`Refresh the device list`},"nodeList.pair":{message:`Pair device`,description:`Open the pairing dialog`},"nodeList.empty":{message:`No devices paired yet.`,description:`Empty device list message`},"nodeList.pairFirst":{message:`Pair your first device`,description:`Empty-state pairing button`},"nodeList.remove":{message:`Remove`,description:`Remove a device`},"nodeList.removeConfirm":{message:`Remove device "{name}"? It will need to be paired again.`,description:`Device removal confirmation`},"nodeList.removeSuccess":{message:`Device removed.`,description:`Device removed toast`},"nodeList.removeFailed":{message:`Failed to remove device.`,description:`Device removal error toast`},"status.online":{message:`Online`,description:`Device online status`},"status.offline":{message:`Offline`,description:`Device offline status`},"connection.disconnected":{message:`Disconnected`,description:`Relay connection disconnected`},"connection.connecting":{message:`Connecting…`,description:`Relay connection connecting`},"connection.connected":{message:`Connected`,description:`Relay connection connected`},"connection.error":{message:`Connection error`,description:`Relay connection error`},"pair.title":{message:`Pair a device`,description:`Pairing dialog title`},"pair.intro":{message:`Run the Coding Bridge agent on your computer, then enter its pairing code here to control it from the web.`,description:`Pairing dialog intro`},"pair.step1":{message:`Install the agent (requires Python 3.10+):`,description:`Pairing step 1`},"pair.step2":{message:`Start it and follow the prompt:`,description:`Pairing step 2`},"pair.step3":{message:`Enter the pairing code it shows below.`,description:`Pairing step 3`},"pair.codePlaceholder":{message:`Pairing code`,description:`Pairing code input placeholder`},"pair.claim":{message:`Pair device`,description:`Pairing confirm button`},"pair.success":{message:`Device "{name}" paired.`,description:`Pairing success toast`},"pair.invalidCode":{message:`Invalid or expired pairing code.`,description:`Pairing invalid code error`},"pair.usedCode":{message:`This pairing code has already been used.`,description:`Pairing used code error`},"pair.failed":{message:`Failed to pair device.`,description:`Pairing generic error`},"permission.title":{message:`Permission required`,description:`Permission dialog title`},"permission.subtitle":{message:`The agent wants to use a tool. Approve to continue.`,description:`Permission dialog subtitle`},"permission.deny":{message:`Deny`,description:`Deny a tool permission`},"permission.allow":{message:`Allow`,description:`Allow a tool permission`},"session.noDevice":{message:`Select a device to start coding.`,description:`No device selected placeholder`},"session.newSession":{message:`New session`,description:`Start a new session`},"session.deviceOffline":{message:`This device is offline. Start the Coding Bridge agent on it to continue.`,description:`Device offline warning`},"session.startHint":{message:`Send a message to start a session on this device.`,description:`Empty transcript hint`},"session.cwdPlaceholder":{message:`Working directory (optional)`,description:`Working directory input placeholder`},"session.modelPlaceholder":{message:`Model (optional)`,description:`Model input placeholder`},"session.promptPlaceholder":{message:`Send a message to the agent…`,description:`Prompt input placeholder`},"session.send":{message:`Send`,description:`Send prompt button`},"session.enterHint":{message:`Enter to send, Shift+Enter for a new line.`,description:`Composer keyboard hint`},"transcript.turnFailed":{message:`Turn failed`,description:`Turn result failed label`},"transcript.turnDone":{message:`Done`,description:`Turn result done label`},"history.button":{message:`История`,description:`Open the conversation history drawer`},"history.title":{message:`История разговоров`,description:`History drawer title`},"history.intro":{message:`Прошлые сессии Claude Code и Codex на этом устройстве.`,description:`History drawer intro`},"history.refresh":{message:`Обновить`,description:`Reload the history list`},"history.loading":{message:`Загрузка истории…`,description:`History loading message`},"history.empty":{message:`История на этом устройстве не найдена.`,description:`Empty history message`},"history.messages":{message:`Сообщений: {count}`,description:`History item message count`},"history.readonly":{message:`Этот разговор Codex доступен только для чтения и не может быть продолжен. Начните новую сессию, чтобы продолжить программировать.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Отправка сообщения возобновит этот разговор на устройстве.`,description:`Resume composer hint`},"history.claudeLabel":{message:`История Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`История Codex (только чтение)`,description:`Replayed Codex session label`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Devices`,description:`Coding Bridge device list title`},"nodeList.refresh":{message:`Refresh`,description:`Refresh the device list`},"nodeList.pair":{message:`Pair device`,description:`Open the pairing dialog`},"nodeList.empty":{message:`No devices paired yet.`,description:`Empty device list message`},"nodeList.pairFirst":{message:`Pair your first device`,description:`Empty-state pairing button`},"nodeList.remove":{message:`Remove`,description:`Remove a device`},"nodeList.removeConfirm":{message:`Remove device "{name}"? It will need to be paired again.`,description:`Device removal confirmation`},"nodeList.removeSuccess":{message:`Device removed.`,description:`Device removed toast`},"nodeList.removeFailed":{message:`Failed to remove device.`,description:`Device removal error toast`},"status.online":{message:`Online`,description:`Device online status`},"status.offline":{message:`Offline`,description:`Device offline status`},"connection.disconnected":{message:`Disconnected`,description:`Relay connection disconnected`},"connection.connecting":{message:`Connecting…`,description:`Relay connection connecting`},"connection.connected":{message:`Connected`,description:`Relay connection connected`},"connection.error":{message:`Connection error`,description:`Relay connection error`},"pair.title":{message:`Pair a device`,description:`Pairing dialog title`},"pair.intro":{message:`Run the Coding Bridge agent on your computer, then enter its pairing code here to control it from the web.`,description:`Pairing dialog intro`},"pair.step1":{message:`Install the agent (requires Python 3.10+):`,description:`Pairing step 1`},"pair.step2":{message:`Start it and follow the prompt:`,description:`Pairing step 2`},"pair.step3":{message:`Enter the pairing code it shows below.`,description:`Pairing step 3`},"pair.codePlaceholder":{message:`Pairing code`,description:`Pairing code input placeholder`},"pair.claim":{message:`Pair device`,description:`Pairing confirm button`},"pair.success":{message:`Device "{name}" paired.`,description:`Pairing success toast`},"pair.invalidCode":{message:`Invalid or expired pairing code.`,description:`Pairing invalid code error`},"pair.usedCode":{message:`This pairing code has already been used.`,description:`Pairing used code error`},"pair.failed":{message:`Failed to pair device.`,description:`Pairing generic error`},"permission.title":{message:`Permission required`,description:`Permission dialog title`},"permission.subtitle":{message:`The agent wants to use a tool. Approve to continue.`,description:`Permission dialog subtitle`},"permission.deny":{message:`Deny`,description:`Deny a tool permission`},"permission.allow":{message:`Allow`,description:`Allow a tool permission`},"session.noDevice":{message:`Select a device to start coding.`,description:`No device selected placeholder`},"session.newSession":{message:`New session`,description:`Start a new session`},"session.deviceOffline":{message:`This device is offline. Start the Coding Bridge agent on it to continue.`,description:`Device offline warning`},"session.startHint":{message:`Send a message to start a session on this device.`,description:`Empty transcript hint`},"session.cwdPlaceholder":{message:`Working directory (optional)`,description:`Working directory input placeholder`},"session.modelPlaceholder":{message:`Model (optional)`,description:`Model input placeholder`},"session.promptPlaceholder":{message:`Send a message to the agent…`,description:`Prompt input placeholder`},"session.send":{message:`Send`,description:`Send prompt button`},"session.enterHint":{message:`Enter to send, Shift+Enter for a new line.`,description:`Composer keyboard hint`},"transcript.turnFailed":{message:`Turn failed`,description:`Turn result failed label`},"transcript.turnDone":{message:`Done`,description:`Turn result done label`},"history.button":{message:`Cronologia`,description:`Open the conversation history drawer`},"history.title":{message:`Cronologia delle conversazioni`,description:`History drawer title`},"history.intro":{message:`Sessioni Claude Code e Codex precedenti su questo dispositivo.`,description:`History drawer intro`},"history.refresh":{message:`Aggiorna`,description:`Reload the history list`},"history.loading":{message:`Caricamento della cronologia…`,description:`History loading message`},"history.empty":{message:`Nessuna cronologia trovata su questo dispositivo.`,description:`Empty history message`},"history.messages":{message:`{count} messaggi`,description:`History item message count`},"history.readonly":{message:`Questa conversazione Codex è di sola lettura e non può essere continuata. Avvia una nuova sessione per continuare a programmare.`,description:`Read-only replay notice`},"history.resumeHint":{message:`L’invio di un messaggio riprenderà questa conversazione sul dispositivo.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Cronologia Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Cronologia Codex (sola lettura)`,description:`Replayed Codex session label`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={"nodeList.title":{message:`Devices`,description:`Coding Bridge device list title`},"nodeList.refresh":{message:`Refresh`,description:`Refresh the device list`},"nodeList.pair":{message:`Pair device`,description:`Open the pairing dialog`},"nodeList.empty":{message:`No devices paired yet.`,description:`Empty device list message`},"nodeList.pairFirst":{message:`Pair your first device`,description:`Empty-state pairing button`},"nodeList.remove":{message:`Remove`,description:`Remove a device`},"nodeList.removeConfirm":{message:`Remove device "{name}"? It will need to be paired again.`,description:`Device removal confirmation`},"nodeList.removeSuccess":{message:`Device removed.`,description:`Device removed toast`},"nodeList.removeFailed":{message:`Failed to remove device.`,description:`Device removal error toast`},"status.online":{message:`Online`,description:`Device online status`},"status.offline":{message:`Offline`,description:`Device offline status`},"connection.disconnected":{message:`Disconnected`,description:`Relay connection disconnected`},"connection.connecting":{message:`Connecting…`,description:`Relay connection connecting`},"connection.connected":{message:`Connected`,description:`Relay connection connected`},"connection.error":{message:`Connection error`,description:`Relay connection error`},"pair.title":{message:`Pair a device`,description:`Pairing dialog title`},"pair.intro":{message:`Run the Coding Bridge agent on your computer, then enter its pairing code here to control it from the web.`,description:`Pairing dialog intro`},"pair.step1":{message:`Install the agent (requires Python 3.10+):`,description:`Pairing step 1`},"pair.step2":{message:`Start it and follow the prompt:`,description:`Pairing step 2`},"pair.step3":{message:`Enter the pairing code it shows below.`,description:`Pairing step 3`},"pair.codePlaceholder":{message:`Pairing code`,description:`Pairing code input placeholder`},"pair.claim":{message:`Pair device`,description:`Pairing confirm button`},"pair.success":{message:`Device "{name}" paired.`,description:`Pairing success toast`},"pair.invalidCode":{message:`Invalid or expired pairing code.`,description:`Pairing invalid code error`},"pair.usedCode":{message:`This pairing code has already been used.`,description:`Pairing used code error`},"pair.failed":{message:`Failed to pair device.`,description:`Pairing generic error`},"permission.title":{message:`Permission required`,description:`Permission dialog title`},"permission.subtitle":{message:`The agent wants to use a tool. Approve to continue.`,description:`Permission dialog subtitle`},"permission.deny":{message:`Deny`,description:`Deny a tool permission`},"permission.allow":{message:`Allow`,description:`Allow a tool permission`},"session.noDevice":{message:`Select a device to start coding.`,description:`No device selected placeholder`},"session.newSession":{message:`New session`,description:`Start a new session`},"session.deviceOffline":{message:`This device is offline. Start the Coding Bridge agent on it to continue.`,description:`Device offline warning`},"session.startHint":{message:`Send a message to start a session on this device.`,description:`Empty transcript hint`},"session.cwdPlaceholder":{message:`Working directory (optional)`,description:`Working directory input placeholder`},"session.modelPlaceholder":{message:`Model (optional)`,description:`Model input placeholder`},"session.promptPlaceholder":{message:`Send a message to the agent…`,description:`Prompt input placeholder`},"session.send":{message:`Send`,description:`Send prompt button`},"session.enterHint":{message:`Enter to send, Shift+Enter for a new line.`,description:`Composer keyboard hint`},"transcript.turnFailed":{message:`Turn failed`,description:`Turn result failed label`},"transcript.turnDone":{message:`Done`,description:`Turn result done label`},"history.button":{message:`기록`,description:`Open the conversation history drawer`},"history.title":{message:`대화 기록`,description:`History drawer title`},"history.intro":{message:`이 기기의 이전 Claude Code 및 Codex 세션입니다.`,description:`History drawer intro`},"history.refresh":{message:`새로 고침`,description:`Reload the history list`},"history.loading":{message:`기록을 불러오는 중…`,description:`History loading message`},"history.empty":{message:`이 기기에서 기록을 찾을 수 없습니다.`,description:`Empty history message`},"history.messages":{message:`메시지 {count}개`,description:`History item message count`},"history.readonly":{message:`이 Codex 대화는 읽기 전용이라 이어갈 수 없습니다. 계속 코딩하려면 새 세션을 시작하세요.`,description:`Read-only replay notice`},"history.resumeHint":{message:`메시지를 보내면 기기에서 이 대화가 다시 시작됩니다.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Claude 기록`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Codex 기록 (읽기 전용)`,description:`Replayed Codex session label`}};export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{C as e,E as t,Rr as n,S as r,T as i,_ as a,a as o,b as s,c,d as l,f as u,g as d,h as f,i as p,l as m,m as h,n as g,o as _,p as v,r as y,s as b,t as x,u as S,v as C,w,x as T,y as E}from"./constants-Ch-akEqn.js";import{An as D,Rt as O,dr as k}from"./index-Lyxum_zj.js";var A=()=>typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID().replace(/-/g,``):`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,j=class{ws;token;handlers;reconnectDelay=t;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=`${n}?token=${encodeURIComponent(this.token)}`,r;try{r=new WebSocket(e)}catch(e){console.warn(`[codingBridge] failed to open socket`,e),this.scheduleReconnect();return}this.ws=r,r.onopen=()=>{this.reconnectDelay=t,this.handlers.onOpen?.()},r.onmessage=e=>this.onMessage(e),r.onclose=()=>{this.handlers.onClose?.(),this.closedByUser||this.scheduleReconnect()},r.onerror=()=>{r.close()}}onMessage(t){let n;try{n=JSON.parse(t.data)}catch{return}let i=n?.payload??{};switch(n?.type){case w:this.handlers.onEvent?.(i,n?.from_node);break;case r:this.handlers.onNodesSnapshot?.(i.nodes??[]);break;case e:this.handlers.onNodeStatus?.(i.node_id,i.status);break;case c:this.handlers.onRelayError?.(i.code??`error`,i.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,i)}sendEnvelope(e,t){if(!this.isOpen)return;let n={v:1,id:A(),ts:Date.now(),type:e,...t};this.ws?.send(JSON.stringify(n))}sendToNode(e,t){this.sendEnvelope(b,{node_id:e,payload:t})}listNodes(){this.sendEnvelope(_,{})}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}}},M,N=()=>typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID().replace(/-/g,``):`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,P=(e,t,n)=>({id:N(),session_id:e,kind:t,ts:Date.now(),...n}),F=(e,t,n,r,i)=>{let o=r?.event,c=r?.session_id;switch(o){case a:e(`upsertSession`,{session_id:c,node_id:i,status:`idle`,cwd:r.cwd,model:r.model});break;case C:e(`appendEvent`,P(c,`text`,{text:r.text}));break;case E:e(`appendEvent`,P(c,`thinking`,{text:r.text}));break;case T:e(`appendEvent`,P(c,`tool_use`,{tool:r.tool,tool_use_id:r.tool_use_id,input:r.input}));break;case s:e(`appendEvent`,P(c,`tool_result`,{tool_use_id:r.tool_use_id,content:r.content,is_error:r.is_error}));break;case l:e(`addPermission`,{request_id:r.request_id,session_id:c,node_id:i,tool:r.tool,input:r.input,title:r.title,display_name:r.display_name,description:r.description});break;case u:e(`removePermission`,r.request_id);break;case d:e(`appendEvent`,P(c,`result`,{subtype:r.subtype,is_error:r.is_error,text:r.result,cost_usd:r.cost_usd})),e(`updateSession`,{session_id:c,status:`idle`,cost_usd:r.cost_usd});break;case f:e(`appendEvent`,P(c,`error`,{text:r.message})),e(`updateSession`,{session_id:c,status:`error`});break;case h:e(`updateSession`,{session_id:c,status:`closed`});break;case v:for(let t of r.sessions??[])e(`upsertSession`,{session_id:t.session_id,node_id:i,status:t.status??`idle`,cwd:t.cwd,model:t.model});break;case S:if(i){e(`setHistory`,{node_id:i,sessions:r.sessions??[]}),e(`updateStatus`,{key:`getHistory`,value:k.Success});let a=n.historyRef;a&&a.node_id===i&&!n.currentSessionId&&t(`getHistoryDetail`,a)}break;case m:I(e,r,i);break;default:break}},I=(e,t,n)=>{let r=t?.session_id,i=t?.provider===`codex`?`codex`:`claude`;if(!r||!n)return;let a=i===`claude`;e(`upsertSession`,{session_id:r,node_id:n,status:`idle`,cwd:t.cwd,model:t.model,provider:i,started:!1,readonly:!a,resume_session_id:a?r:void 0}),e(`setEvents`,{session_id:r,events:(t.events??[]).map((e,t)=>({id:N(),session_id:r,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`,n),e(`setCurrentSession`,r),e(`setHistoryRef`,{node_id:n,provider:i,session_id:r})},L={namespaced:!0,state:D,mutations:{resetAll:e=>{Object.assign(e,D())},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})},appendEvent:(e,t)=>{e.events[t.session_id]||(e.events[t.session_id]=[]),e.events[t.session_id].push(t)},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},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],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],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:k.Request});try{let{data:t}=await O.getNodes({token:n});return e(`setNodes`,t.nodes??[]),e(`updateStatus`,{key:`getNodes`,value:k.Success}),t.nodes??[]}catch(t){throw e(`updateStatus`,{key:`getNodes`,value:k.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:k.Request});try{let{data:n}=await O.claimPair(r.trim(),{token:i});return e(`updateStatus`,{key:`claimPair`,value:k.Success}),await t(`getNodes`),n.node_name}catch(t){throw e(`updateStatus`,{key:`claimPair`,value:k.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:k.Request});try{await O.deleteNode(i,{token:a}),e(`removeNodeData`,i),n.currentNodeId===i&&(e(`setCurrentNode`,void 0),e(`setCurrentSession`,void 0)),e(`updateStatus`,{key:`deleteNode`,value:k.Success}),await t(`getNodes`)}catch(t){throw e(`updateStatus`,{key:`deleteNode`,value:k.Error}),t}},connect:({commit:e,dispatch:t,state:n,rootState:r})=>{let i=r.token?.access;i&&(M?.isOpen||(M?.close(),e(`setConnection`,`connecting`),M=new j(i,{onOpen:()=>{e(`setConnection`,`connected`),n.currentNodeId&&t(`getHistory`,n.currentNodeId)},onClose:()=>e(`setConnection`,`disconnected`),onEvent:(r,i)=>F(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)},onRelayError:(e,t)=>console.warn(`[codingBridge] relay error`,e,t)}),M.connect()))},disconnect:({commit:e})=>{M?.close(),M=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)},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();if(!r||!i||!M)return;let a=t.currentSessionId,s=a?t.sessions[a]:void 0;!s||!s.started?(s?(a=s.session_id,e(`updateSession`,{session_id:a,status:`starting`})):(a=N(),e(`upsertSession`,{session_id:a,node_id:r,status:`starting`,cwd:n.cwd,model:n.model}),e(`setCurrentSession`,a)),e(`appendEvent`,P(a,`prompt`,{text:i})),e(`updateSession`,{session_id:a,started:!0}),M.sendToNode(r,{action:o,session_id:a,prompt:i,cwd:n.cwd||s?.cwd||void 0,model:n.model||s?.model||void 0,permission_mode:`default`,provider:s?.provider||void 0,resume_session_id:s?.resume_session_id||void 0})):(e(`appendEvent`,P(a,`prompt`,{text:i})),e(`updateSession`,{session_id:a,status:`running`}),M.sendToNode(r,{action:p,session_id:a,prompt:i}))},interruptSession:({state:e})=>{let t=e.currentSessionId,n=e.currentNodeId;!t||!n||!M||M.sendToNode(n,{action:y,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&&M&&M.sendToNode(i,{action:g,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&&(M?.sendToNode(r.node_id,{action:x,request_id:n.request_id,decision:n.decision}),e(`removePermission`,n.request_id))}}};export{L as codingBridge,L as default};
|