@acedatacloud/nexior 3.272.1 → 3.274.0
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-DmgbbHgv.js → ApiCodeButton-izt0MrJt.js} +1 -1
- package/dist/assets/{AskUserQuestionCard-BqHFLywL.js → AskUserQuestionCard-hh5dLFJh.js} +1 -1
- package/dist/assets/{Auth-DeCYgNQ-.js → Auth-DgjLgixx.js} +1 -1
- package/dist/assets/{Bare-D2g7TWIi.js → Bare-CPm2r4ow.js} +1 -1
- package/dist/assets/{BotPlaceholder-DdLK7DwC.js → BotPlaceholder-D3yP8ahU.js} +1 -1
- package/dist/assets/{BottomFooter-CjIfHdMh.js → BottomFooter-CM98_CTW.js} +1 -1
- package/dist/assets/{Callback-8uKnd5gW.js → Callback--rPiyG0j.js} +1 -1
- package/dist/assets/{Console-fIjEqCjc.js → Console-BvntbEuz.js} +1 -1
- package/dist/assets/{Consumption-DiPiwllg.js → Consumption-87pk2Rrh.js} +1 -1
- package/dist/assets/Conversation-DiMJLsck.js +3 -0
- package/dist/assets/{CopyToClipboard-BvqdtQdo.js → CopyToClipboard-Dkx-UeG9.js} +1 -1
- package/dist/assets/{Detail-CkvtJk79.js → Detail-YYL5IMOW.js} +2 -2
- package/dist/assets/{Extra-Bet8UHnl.js → Extra-Cl0HSq4q.js} +1 -1
- package/dist/assets/{FilePreview-BhfWzt3j.js → FilePreview-B9zgHaDz.js} +1 -1
- package/dist/assets/{Hailuo-DaImuNaU.js → Hailuo-B009tjyU.js} +1 -1
- package/dist/assets/{History-Buz6IbGa.js → History-CalRO8EX.js} +1 -1
- package/dist/assets/{ImagePreview-Cel1agBC.js → ImagePreview-DeW8m863.js} +1 -1
- package/dist/assets/{ImageWrapper-D4L76WuX.js → ImageWrapper-8MM2tJEi.js} +1 -1
- package/dist/assets/{Index-Bi2OfoQe.css → Index-7mpwBbsc.css} +1 -1
- package/dist/assets/{Index-DWk_ajm7.js → Index-BE0CSc0W.js} +1 -1
- package/dist/assets/{Index-ua_TP9VB2.js → Index-BiceioRZ2.js} +1 -1
- package/dist/assets/{Index-C16XGcSA2.js → Index-BoNVYF1X2.js} +1 -1
- package/dist/assets/{Index-DkoJlXL0.js → Index-BqNYExTU.js} +1 -1
- package/dist/assets/{Index-n0QQo3Ww.js → Index-BrblkbIC.js} +1 -1
- package/dist/assets/{Index-CSs5_J7s.js → Index-C03ClqLQ.js} +1 -1
- package/dist/assets/{Index-DZkgTeM-.js → Index-COQsNNp7.js} +1 -1
- package/dist/assets/Index-CRz9crNZ.js +1 -0
- package/dist/assets/{Index-Ckikz9nL.js → Index-CTwRfOCy.js} +1 -1
- package/dist/assets/{Index-D56Gl5U0.js → Index-Ch8D-0we.js} +1 -1
- package/dist/assets/{Index-BkT_hdus.js → Index-ChwtDKcu.js} +1 -1
- package/dist/assets/{Index-CwCsz8IS.js → Index-CpMPVARM.js} +1 -1
- package/dist/assets/{Index-BjrTSkOB.js → Index-Cww5cEUu.js} +1 -1
- package/dist/assets/{Index-C82mVBtq.js → Index-D0j_1sPR.js} +1 -1
- package/dist/assets/{Index-B3YHu4KC.js → Index-DHATS7Ky.js} +1 -1
- package/dist/assets/Index-Di7t07u2.js +1 -0
- package/dist/assets/{Index-DzzuviGC.js → Index-DkrwSpMP.js} +1 -1
- package/dist/assets/Index-DpG-qzGP.js +1 -0
- package/dist/assets/{Index-Cog_vg19.js → Index-Dy-xpL6V.js} +1 -1
- package/dist/assets/{Index-K8gO-aDG.js → Index-DyQCQeVu.js} +1 -1
- package/dist/assets/{Index-B949lS_I.js → Index-KTOQydLC.js} +1 -1
- package/dist/assets/{Index-RJ2QKasP2.js → Index-W0Cbth_e2.js} +1 -1
- package/dist/assets/Index-_IvKFKcY.js +1 -0
- package/dist/assets/{Index-ME4gEbg6.js → Index-e5Pg9C7H.js} +1 -1
- package/dist/assets/Index-xq2Gci47.js +1 -0
- package/dist/assets/{Invitees-DbZu96Ko.js → Invitees-wd2nW0GB.js} +1 -1
- package/dist/assets/{List-CFcHC1BQ.js → List-CkOgFIfg.js} +1 -1
- package/dist/assets/{List-CeQcmnkV.js → List-DEw0xltu.js} +1 -1
- package/dist/assets/{List-DVafqPMb.js → List-QNPpC_sr.js} +1 -1
- package/dist/assets/{Main-CHVTmTmi.js → Main-DMBRhF8j.js} +1 -1
- package/dist/assets/{Model-9Iq2_30B.js → Model-DU8ABpbt.js} +1 -1
- package/dist/assets/{Navigator-DQw6TS7u.js → Navigator-C-3ZvfEa.js} +2 -2
- package/dist/assets/{NoTasks-BvxBJO_n.js → NoTasks-DgPpHfON.js} +1 -1
- package/dist/assets/{NotFound-Ces6ZqID.js → NotFound-BMoMFCwB.js} +1 -1
- package/dist/assets/{Pagination-CARpmT0K.js → Pagination-BDvzj9pL.js} +1 -1
- package/dist/assets/{Pay-Dz29D1-Q.js → Pay-Cxb8WV_y.js} +1 -1
- package/dist/assets/{Player-BT1OJI1o.js → Player-B4OZmqh9.js} +1 -1
- package/dist/assets/{Status-Co7VN9Zl.js → Status-ru9xTdh9.js} +1 -1
- package/dist/assets/{Subscribe-BkDoXW1c.js → Subscribe-BS75xqsd.js} +1 -1
- package/dist/assets/{TabSwitcher-C3Kf0k0t.js → TabSwitcher-CM-uPrwG.js} +1 -1
- package/dist/assets/Tts-QI_TGp5R.js +1 -0
- package/dist/assets/{VideoPlayer-BBb01skM.js → VideoPlayer-BMJgt1nn.js} +1 -1
- package/dist/assets/{avatar-B-kgl6b8.js → avatar-XhgOIdSJ.js} +1 -1
- package/dist/assets/{basic-NQnNaDEK.js → basic-rbZkwySN.js} +1 -1
- package/dist/assets/{chat-CCUl7-iP.js → chat-D0PEnKc5.js} +1 -1
- package/dist/assets/codingBridge-BBTz-LNk.js +1 -0
- package/dist/assets/codingBridge-BEdoIvhU.js +1 -0
- package/dist/assets/codingBridge-BJOs2wGl.js +1 -0
- package/dist/assets/codingBridge-Bb2vpBlj.js +1 -0
- package/dist/assets/codingBridge-Bg-bg7GC.js +1 -0
- package/dist/assets/codingBridge-BtUDmyf5.js +1 -0
- package/dist/assets/codingBridge-CapiE9kS.js +1 -0
- package/dist/assets/codingBridge-D0aUF3ys.js +1 -0
- package/dist/assets/codingBridge-DBHW6da0.js +1 -0
- package/dist/assets/codingBridge-DEIry9_G.js +2 -0
- package/dist/assets/codingBridge-DHBG8hRH.js +1 -0
- package/dist/assets/codingBridge-DPbhaNxe.js +1 -0
- package/dist/assets/codingBridge-DdWd-svT.js +1 -0
- package/dist/assets/codingBridge-DesQMnCS.js +1 -0
- package/dist/assets/codingBridge-DhU4hcRW.js +1 -0
- package/dist/assets/codingBridge-DyGBsBaQ.js +1 -0
- package/dist/assets/codingBridge-VBvS-ufO.js +1 -0
- package/dist/assets/codingBridge-cDeiH5ZF.js +1 -0
- package/dist/assets/codingBridge-gF-qCrm2.js +1 -0
- package/dist/assets/{collapse-DCoJLlkZ.js → collapse-kfuj8uXP.js} +1 -1
- package/dist/assets/{constants-vDFRJTq6.js → constants-C2ehd_ov.js} +1 -1
- package/dist/assets/{createTaskActions-CirZ3ZjL.js → createTaskActions-C_M-waEz.js} +1 -1
- package/dist/assets/{date-picker-DTkfZEzy.js → date-picker-DM7DY090.js} +1 -1
- package/dist/assets/{dropdown-ApRxFZDH.js → dropdown-CSZNqOKL.js} +1 -1
- package/dist/assets/{esm-DCuOb9aF.js → esm-2IrHjk9y.js} +1 -1
- package/dist/assets/{esm-BL86PSOV.js → esm-BR9NcgII.js} +3 -3
- package/dist/assets/{esm-DLn8-aqC.js → esm-CjxY7gsK.js} +1 -1
- package/dist/assets/{esm-D6UTzOcl.js → esm-Cp4vWvgm.js} +1 -1
- package/dist/assets/{esm-CQp8gSdR.js → esm-CqViCKeq.js} +2 -2
- package/dist/assets/{fish-D0XwmhC6.js → fish-BCZOGDBU.js} +1 -1
- package/dist/assets/{flux-Cq1tftwS.js → flux-BBlPM4n-.js} +1 -1
- package/dist/assets/{hailuo-BnEyKSHm.js → hailuo-iBvKjPzs.js} +1 -1
- package/dist/assets/{headshots-BPvvGwtB.js → headshots-Bh5kcvU0.js} +1 -1
- package/dist/assets/{image-DvjKNoxC.js → image-BPPkb2eq.js} +1 -1
- package/dist/assets/{index-Bpg44eWB.js → index-BkE6zZfO.js} +5 -5
- package/dist/assets/{index-BvmE2JX2.css → index-DzfCaX1N.css} +1 -1
- package/dist/assets/{index.browser.esm-DzBgLs84.js → index.browser.esm-Cg0rBOy0.js} +1 -1
- package/dist/assets/{index.es-D2Gtib5p.js → index.es-C68r3aRl.js} +1 -1
- package/dist/assets/{input-number-Oh-d0JaX.js → input-number-DUanhx78.js} +1 -1
- package/dist/assets/{kling-xSsQUjlg.js → kling-BgqPAeiX.js} +1 -1
- package/dist/assets/{luma-DDiKGWVj.js → luma-C33hAU4n.js} +1 -1
- package/dist/assets/{midjourney-Cd-twOLj.js → midjourney-d7Yh7smZ.js} +1 -1
- package/dist/assets/{nanobanana-DxY6uqP0.js → nanobanana-B5fjsOMa.js} +1 -1
- package/dist/assets/{openaiimage-BpVpztMb.js → openaiimage-Mey35hGy.js} +1 -1
- package/dist/assets/{pagination-BlR28kYu.js → pagination-Ch6Ip7cV.js} +1 -1
- package/dist/assets/{pika-D6ek_DUA.js → pika-BfMYhFxM.js} +1 -1
- package/dist/assets/{pixverse-NGrvOUF9.js → pixverse-CGIthx6c.js} +1 -1
- package/dist/assets/{popover-CcRl4vxr.js → popover-iuFyilQ-.js} +1 -1
- package/dist/assets/{producer-CvJ733bR.js → producer-D-borcA_.js} +1 -1
- package/dist/assets/{qrart-BBOZfldd.js → qrart-DO4M5K6a.js} +1 -1
- package/dist/assets/{row-pgH1L2rc.js → row-DgULQK_W.js} +1 -1
- package/dist/assets/{seedance-DfYwbJeD.js → seedance-fU1DxoKG.js} +1 -1
- package/dist/assets/{seedream-C7tpvM_U.js → seedream-Bw4fAnp2.js} +1 -1
- package/dist/assets/{select-BR8DyZel.js → select-DDvgcQGA.js} +1 -1
- package/dist/assets/{serp-BPd5r_IS.js → serp-CSf99xWs.js} +1 -1
- package/dist/assets/{slider-BZdPs70x.js → slider-B48RSIqk.js} +1 -1
- package/dist/assets/{solana-wallets-C5d77CHX.js → solana-wallets-Bo8yZA-8.js} +2 -2
- package/dist/assets/{solana-wallets-vue-Cy6CKdZs.js → solana-wallets-vue-CC5qs8gs.js} +1 -1
- package/dist/assets/{sora-BHfbeScD.js → sora-B_HB-DxF.js} +1 -1
- package/dist/assets/{suno-BSfRKrHj.js → suno-C5VBXOh0.js} +1 -1
- package/dist/assets/{switch-D1UMnFeG.js → switch-B1q1xj6W.js} +1 -1
- package/dist/assets/{tabs-DecpaDdx.js → tabs-DA45A2mE.js} +1 -1
- package/dist/assets/{upload-DD2n4P3p.js → upload-0VZ39tZO.js} +1 -1
- package/dist/assets/{veo-DRL8dCBY.js → veo-DvatGkKQ.js} +1 -1
- package/dist/assets/{wan-BCPd-DA5.js → wan-UDBgxT1Y.js} +1 -1
- package/dist/assets/{web-DqbD1cTl.js → web-BIQzgdCZ.js} +1 -1
- package/dist/assets/{web-D_OeX-rD.js → web-D2OrjM_z.js} +1 -1
- package/dist/assets/{web-VzzrXY4l.js → web-kRqbno-S.js} +1 -1
- package/dist/assets/{web-CVcqWo5X.js → web-z8ZyaWnW.js} +1 -1
- package/dist/assets/{webextrator-DjFiPf2q.js → webextrator-BEEj3h3M.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/Conversation-BUelWx1T.js +0 -3
- package/dist/assets/Index-B5G49g-6.js +0 -1
- package/dist/assets/Index-C50ClBNG.js +0 -1
- package/dist/assets/Index-DFTWHLYR.js +0 -1
- package/dist/assets/Index-DoThKXvJ.js +0 -1
- package/dist/assets/Index-a__Lr50W.js +0 -1
- package/dist/assets/Tts-B9a3WBQB.js +0 -1
- package/dist/assets/codingBridge-BCdY-7LL.js +0 -1
- package/dist/assets/codingBridge-BFvinfZm.js +0 -1
- package/dist/assets/codingBridge-BIk_g6XI.js +0 -1
- package/dist/assets/codingBridge-BNLPQfcB.js +0 -1
- package/dist/assets/codingBridge-BQpL36C8.js +0 -1
- package/dist/assets/codingBridge-BmF1iiRA.js +0 -1
- package/dist/assets/codingBridge-C4SdYcxG.js +0 -1
- package/dist/assets/codingBridge-C_zYqcPg.js +0 -1
- package/dist/assets/codingBridge-CcD-p5UZ.js +0 -1
- package/dist/assets/codingBridge-Cks2hxaa.js +0 -1
- package/dist/assets/codingBridge-ClZoc5vq.js +0 -1
- package/dist/assets/codingBridge-D-iSlWtJ.js +0 -1
- package/dist/assets/codingBridge-D2GU6WEK.js +0 -2
- package/dist/assets/codingBridge-DRvMxeh3.js +0 -1
- package/dist/assets/codingBridge-DcNEFGfM.js +0 -1
- package/dist/assets/codingBridge-DkAMWy7B.js +0 -1
- package/dist/assets/codingBridge-aimgP5u6.js +0 -1
- package/dist/assets/codingBridge-f6O1bx99.js +0 -1
- package/dist/assets/codingBridge-qsb1Bcs4.js +0 -1
|
@@ -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.nodeId":{message:`ID пристрою`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID сеансу`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID трасування`,description:`Diagnostic label for the trace id`},"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`},"session.permissionModeLabel":{message:`Режим дозволів`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`За замовчуванням (запитувати щоразу)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Автоматично приймати зміни`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Режим планування (лише читання)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Обійти всі дозволи`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Бекенд`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(не встановлено)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} не встановлено на цьому пристрої.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Рівень міркувань`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`За замовчуванням`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Низький`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Середній`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Високий`,description:`Reasoning effort: high`},"session.effortMax":{message:`Максимальний`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Виберіть робочий каталог`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Використати цей каталог`,description:`Button: select the current directory`},"directory.up":{message:`Батьківський каталог`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Оновити`,description:`Button: reload the current directory`},"directory.loading":{message:`Завантаження…`,description:`Directory listing loading hint`},"directory.empty":{message:`Цей каталог порожній.`,description:`Empty directory hint`},"directory.truncated":{message:`Показано перші 1000 записів.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Прикріпити зображення`,description:`Attach image button title`},"session.removeImage":{message:`Видалити зображення`,description:`Remove attached image button title`},"session.imageAlt":{message:`Прикріплене зображення`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Зображення занадто велике; кожне має бути менше 12 МБ.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Можна прикріпити до {count} зображень.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} — інтерактивна команда, її не можна виконати у віддаленому сеансі.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} недоступна для Codex у віддаленому сеансі.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`Device ID`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`Session ID`,description:`Diagnostic label for the session id`},"session.traceId":{message:`Trace ID`,description:`Diagnostic label for the trace id`},"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:`History`,description:`Open the conversation history drawer`},"history.title":{message:`Conversation history`,description:`History drawer title`},"history.intro":{message:`Past Claude Code & Codex sessions on this device.`,description:`History drawer intro`},"history.refresh":{message:`Refresh`,description:`Reload the history list`},"history.loading":{message:`Loading history…`,description:`History loading message`},"history.empty":{message:`No history found on this device.`,description:`Empty history message`},"history.messages":{message:`{count} messages`,description:`History item message count`},"history.readonly":{message:`This Codex conversation is read-only and cannot be continued. Start a new session to keep coding.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Sending a message will resume this conversation on the device.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Claude history`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Codex history (read-only)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Permission mode`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Default (ask each time)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Auto-accept edits`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Plan mode (read-only)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Bypass all permissions`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(not installed)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} is not installed on this device.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Reasoning effort`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Default`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Low`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Medium`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`High`,description:`Reasoning effort: high`},"session.effortMax":{message:`Max`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Choose working directory`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Use this directory`,description:`Button: select the current directory`},"directory.up":{message:`Parent directory`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Refresh`,description:`Button: reload the current directory`},"directory.loading":{message:`Loading…`,description:`Directory listing loading hint`},"directory.empty":{message:`This directory is empty.`,description:`Empty directory hint`},"directory.truncated":{message:`Showing the first 1000 entries.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Attach image`,description:`Attach image button title`},"session.removeImage":{message:`Remove image`,description:`Remove attached image button title`},"session.imageAlt":{message:`Attached image`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Image is too large; keep each under 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`You can attach up to {count} images.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} is an interactive command and isn't available in a remote session.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} isn't available for Codex in a remote session.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`Identyfikator urządzenia`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`Identyfikator sesji`,description:`Diagnostic label for the session id`},"session.traceId":{message:`Identyfikator śledzenia`,description:`Diagnostic label for the trace id`},"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:`Historia`,description:`Open the conversation history drawer`},"history.title":{message:`Historia rozmów`,description:`History drawer title`},"history.intro":{message:`Poprzednie sesje Claude Code i Codex na tym urządzeniu.`,description:`History drawer intro`},"history.refresh":{message:`Odśwież`,description:`Reload the history list`},"history.loading":{message:`Ładowanie historii…`,description:`History loading message`},"history.empty":{message:`Nie znaleziono historii na tym urządzeniu.`,description:`Empty history message`},"history.messages":{message:`Wiadomości: {count}`,description:`History item message count`},"history.readonly":{message:`Ta rozmowa Codex jest tylko do odczytu i nie można jej kontynuować. Rozpocznij nową sesję, aby kontynuować kodowanie.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Wysłanie wiadomości wznowi tę rozmowę na urządzeniu.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Historia Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Historia Codex (tylko do odczytu)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Tryb uprawnień`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Domyślny (pytaj za każdym razem)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Automatycznie akceptuj zmiany`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Tryb planowania (tylko do odczytu)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Pomiń wszystkie uprawnienia`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(niezainstalowane)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} nie jest zainstalowany na tym urządzeniu.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Wysiłek rozumowania`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Domyślny`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Niski`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Średni`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Wysoki`,description:`Reasoning effort: high`},"session.effortMax":{message:`Maksymalny`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Wybierz katalog roboczy`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Użyj tego katalogu`,description:`Button: select the current directory`},"directory.up":{message:`Katalog nadrzędny`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Odśwież`,description:`Button: reload the current directory`},"directory.loading":{message:`Ładowanie…`,description:`Directory listing loading hint`},"directory.empty":{message:`Ten katalog jest pusty.`,description:`Empty directory hint`},"directory.truncated":{message:`Wyświetlono pierwsze 1000 pozycji.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Załącz obraz`,description:`Attach image button title`},"session.removeImage":{message:`Usuń obraz`,description:`Remove attached image button title`},"session.imageAlt":{message:`Załączony obraz`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Obraz jest za duży; każdy powinien mieć mniej niż 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Możesz załączyć maksymalnie {count} obrazów.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} to polecenie interaktywne i nie może działać w sesji zdalnej.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} nie jest dostępne dla Codex w sesji zdalnej.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`ID de l'appareil`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID de session`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID de trace`,description:`Diagnostic label for the trace id`},"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:`Historique`,description:`Open the conversation history drawer`},"history.title":{message:`Historique des conversations`,description:`History drawer title`},"history.intro":{message:`Sessions Claude Code et Codex précédentes sur cet appareil.`,description:`History drawer intro`},"history.refresh":{message:`Actualiser`,description:`Reload the history list`},"history.loading":{message:`Chargement de l’historique…`,description:`History loading message`},"history.empty":{message:`Aucun historique trouvé sur cet appareil.`,description:`Empty history message`},"history.messages":{message:`{count} messages`,description:`History item message count`},"history.readonly":{message:`Cette conversation Codex est en lecture seule et ne peut pas être poursuivie. Démarrez une nouvelle session pour continuer à coder.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Envoyer un message reprendra cette conversation sur l’appareil.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Historique Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Historique Codex (lecture seule)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Mode d'autorisation`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Par défaut (demander à chaque fois)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Accepter automatiquement les modifications`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Mode plan (lecture seule)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Ignorer toutes les autorisations`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(non installé)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} n'est pas installé sur cet appareil.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Effort de raisonnement`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Par défaut`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Faible`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Moyen`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Élevé`,description:`Reasoning effort: high`},"session.effortMax":{message:`Maximum`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Choisir le répertoire de travail`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Utiliser ce répertoire`,description:`Button: select the current directory`},"directory.up":{message:`Répertoire parent`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Actualiser`,description:`Button: reload the current directory`},"directory.loading":{message:`Chargement…`,description:`Directory listing loading hint`},"directory.empty":{message:`Ce répertoire est vide.`,description:`Empty directory hint`},"directory.truncated":{message:`Affichage des 1000 premières entrées.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Joindre une image`,description:`Attach image button title`},"session.removeImage":{message:`Supprimer l'image`,description:`Remove attached image button title`},"session.imageAlt":{message:`Image jointe`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`L'image est trop volumineuse ; gardez chacune sous 12 Mo.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Vous pouvez joindre jusqu'à {count} images.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} est une commande interactive et ne peut pas s'exécuter dans une session distante.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} n'est pas disponible pour Codex dans une session distante.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`معرّف الجهاز`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`معرّف الجلسة`,description:`Diagnostic label for the session id`},"session.traceId":{message:`معرّف التتبع`,description:`Diagnostic label for the trace id`},"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`},"session.permissionModeLabel":{message:`وضع الأذونات`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`افتراضي (السؤال في كل مرة)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`قبول التعديلات تلقائيًا`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`وضع التخطيط (للقراءة فقط)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`تجاوز كل الأذونات`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`الخلفية`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(غير مثبّت)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} غير مثبّت على هذا الجهاز.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`مستوى الاستدلال`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`افتراضي`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`منخفض`,description:`Reasoning effort: low`},"session.effortMedium":{message:`متوسط`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`مرتفع`,description:`Reasoning effort: high`},"session.effortMax":{message:`أقصى`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`اختر دليل العمل`,description:`Working-directory picker dialog title`},"directory.choose":{message:`استخدم هذا الدليل`,description:`Button: select the current directory`},"directory.up":{message:`الدليل الأصل`,description:`Button: go to the parent directory`},"directory.refresh":{message:`تحديث`,description:`Button: reload the current directory`},"directory.loading":{message:`جارٍ التحميل…`,description:`Directory listing loading hint`},"directory.empty":{message:`هذا الدليل فارغ.`,description:`Empty directory hint`},"directory.truncated":{message:`عرض أول 1000 عنصر.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`إرفاق صورة`,description:`Attach image button title`},"session.removeImage":{message:`إزالة الصورة`,description:`Remove attached image button title`},"session.imageAlt":{message:`الصورة المرفقة`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`الصورة كبيرة جدًا؛ يجب أن تكون كل صورة أقل من 12 ميغابايت.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`يمكنك إرفاق ما يصل إلى {count} صورة.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} أمر تفاعلي ولا يمكن تشغيله في جلسة عن بُعد.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} غير متاح لـ Codex في جلسة عن بُعد.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};export{e as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{A as e,C as t,D as n,E as r,Jr as i,M as a,N as o,O as s,P as c,S as l,T as u,_ as d,a as f,b as p,c as m,d as h,f as g,g as _,h as v,i as y,j as b,k as x,l as S,m as C,n as w,o as T,p as E,r as D,s as O,t as k,u as A,v as j,w as M,x as N,y as P}from"./constants-C2ehd_ov.js";import{Fn as F,Ut as I,gr as L}from"./index-BkE6zZfO.js";var R=()=>typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID().replace(/-/g,``):`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,z=()=>{try{return typeof localStorage<`u`&&localStorage.getItem(`cbDebug`)===`1`}catch{return!1}},B=(e,t)=>{if(!z())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})},V=class{ws;token;handlers;reconnectDelay=c;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=`${i}?token=${encodeURIComponent(this.token)}`,t;try{t=new WebSocket(e)}catch(e){console.warn(`[codingBridge] failed to open socket`,e),this.scheduleReconnect();return}this.ws=t,t.onopen=()=>{this.reconnectDelay=c,this.handlers.onOpen?.()},t.onmessage=e=>this.onMessage(e),t.onclose=()=>{this.handlers.onClose?.(),this.closedByUser||this.scheduleReconnect()},t.onerror=()=>{t.close()}}onMessage(t){let n;try{n=JSON.parse(t.data)}catch{return}let r=n?.payload??{};switch(B(`recv`,n),n?.type){case a:this.handlers.onEvent?.(r,n?.from_node);break;case e:this.handlers.onNodesSnapshot?.(r.nodes??[]);break;case b:this.handlers.onNodeStatus?.(r.node_id,r.status);break;case g: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,o)}sendEnvelope(e,t){if(!this.isOpen)return;let n={v:1,id:R(),ts:Date.now(),type:e,...t};B(`send`,n),this.ws?.send(JSON.stringify(n))}sendToNode(e,t){this.sendEnvelope(h,{node_id:e,payload:t})}listNodes(){this.sendEnvelope(A,{})}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}}},H,U=()=>typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID().replace(/-/g,``):`${Date.now().toString(16)}${Math.random().toString(16).slice(2)}`,W=(e,t,n)=>({id:U(),session_id:e,kind:t,ts:Date.now(),...n}),G=e=>{try{let t=JSON.parse(e);if(t&&typeof t==`object`)return t}catch{}return{answers:{}}},K=e=>{let t=G(e).answers??{};return Object.entries(t).map(([e,t])=>`${e} → ${Array.isArray(t)?t.join(`, `):t}`).join(`
|
|
2
|
+
`)},q=(e,i,a,o,c)=>{let f=o?.event,m=o?.session_id,h=o?.trace_id;switch(m&&h&&e(`updateSession`,{session_id:m,trace_id:h}),f){case M:e(`upsertSession`,{session_id:m,node_id:c,status:`idle`,cwd:o.cwd,model:o.model,trace_id:h});break;case r:{let t=o.id;t&&a.events[m]?.find(e=>e.kind===`text`&&e.stream_id===t)?e(`appendDelta`,{session_id:m,stream_id:t,text:o.text??``}):e(`appendEvent`,W(m,`text`,{text:o.text??``,stream_id:t,streaming:!0,trace_id:h}));break}case u:{let t=o.id;t&&a.events[m]?.find(e=>e.kind===`text`&&e.stream_id===t)?e(`finalizeStream`,{session_id:m,stream_id:t,text:o.text}):e(`appendEvent`,W(m,`text`,{text:o.text,trace_id:h}));break}case n:e(`appendEvent`,W(m,`thinking`,{text:o.text,trace_id:h}));break;case x:e(`appendEvent`,W(m,`tool_use`,{tool:o.tool,tool_use_id:o.tool_use_id,input:o.input,trace_id:h}));break;case s:e(`appendEvent`,W(m,`tool_result`,{tool_use_id:o.tool_use_id,content:o.content,is_error:o.is_error,trace_id:h}));break;case d:e(`addPermission`,{request_id:o.request_id,session_id:m,node_id:c,tool:o.tool,input:o.input,title:o.title,display_name:o.display_name,description:o.description});break;case j:e(`removePermission`,o.request_id);break;case t:e(`finalizeAllStreams`,{session_id:m}),e(`appendEvent`,W(m,`result`,{subtype:o.subtype,is_error:o.is_error,text:o.result,cost_usd:o.cost_usd,trace_id:h})),e(`updateSession`,{session_id:m,status:`idle`,cost_usd:o.cost_usd});break;case l:e(`appendEvent`,W(m,`notice`,{text:o.text,subtype:o.code,command:o.command,level:o.level}));break;case N:e(`finalizeAllStreams`,{session_id:m}),e(`appendEvent`,W(m,`error`,{text:o.message,trace_id:h})),e(`updateSession`,{session_id:m,status:`error`});break;case p:e(`finalizeAllStreams`,{session_id:m}),e(`updateSession`,{session_id:m,status:`closed`});break;case P:for(let t of o.sessions??[])e(`upsertSession`,{session_id:t.session_id,node_id:c,status:t.status??`idle`,cwd:t.cwd,model:t.model});break;case _:if(c){e(`setHistory`,{node_id:c,sessions:o.sessions??[]}),e(`updateStatus`,{key:`getHistory`,value:L.Success});let t=a.historyRef;t&&t.node_id===c&&!a.currentSessionId&&i(`getHistoryDetail`,t)}break;case v:J(e,o,c);break;case C:e(`setDirectory`,{path:o.path,parent:o.parent??null,sep:o.sep??`/`,entries:o.entries??[],truncated:o.truncated,error:o.error});break;case E:c&&e(`setCapabilities`,{node_id:c,capabilities:{providers:o.providers??[]}});break;default:break}},J=(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:U(),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})},Y={namespaced:!0,state:F,mutations:{resetAll:e=>{Object.assign(e,F())},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)},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},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],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:L.Request});try{let{data:t}=await I.getNodes({token:n});return e(`setNodes`,t.nodes??[]),e(`updateStatus`,{key:`getNodes`,value:L.Success}),t.nodes??[]}catch(t){throw e(`updateStatus`,{key:`getNodes`,value:L.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:L.Request});try{let{data:n}=await I.claimPair(r.trim(),{token:i});return e(`updateStatus`,{key:`claimPair`,value:L.Success}),await t(`getNodes`),n.node_name}catch(t){throw e(`updateStatus`,{key:`claimPair`,value:L.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:L.Request});try{await I.deleteNode(i,{token:a}),e(`removeNodeData`,i),n.currentNodeId===i&&(e(`setCurrentNode`,void 0),e(`setCurrentSession`,void 0)),e(`updateStatus`,{key:`deleteNode`,value:L.Success}),await t(`getNodes`)}catch(t){throw e(`updateStatus`,{key:`deleteNode`,value:L.Error}),t}},connect:({commit:e,dispatch:t,state:n,rootState:r})=>{let i=r.token?.access;i&&(H?.isOpen||(H?.close(),e(`setConnection`,`connecting`),H=new V(i,{onOpen:()=>{e(`setConnection`,`connected`),n.currentNodeId&&(t(`getHistory`,n.currentNodeId),t(`getCapabilities`,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))},onRelayError:(e,t)=>console.warn(`[codingBridge] relay error`,e,t)}),H.connect()))},disconnect:({commit:e})=>{H?.close(),H=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)},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||!H||!i&&!a&&!o)return;let s=U(),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})):(c=U(),e(`upsertSession`,{session_id:c,node_id:r,status:`starting`,cwd:n.cwd,model:n.model,provider:t,trace_id:s}),e(`setCurrentSession`,c)),e(`appendEvent`,W(c,`prompt`,{text:i,images:a,attachments:o,trace_id:s})),e(`updateSession`,{session_id:c,started:!0}),H.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||`default`,provider:t,effort:n.effort||void 0,images:a,attachments:o,resume_session_id:l?.resume_session_id||void 0})}else e(`updateSession`,{session_id:c,trace_id:s}),e(`appendEvent`,W(c,`prompt`,{text:i,images:a,attachments:o,trace_id:s})),e(`updateSession`,{session_id:c,status:`running`,model:n.model||void 0}),H.sendToNode(r,{action:m,session_id:c,trace_id:s,prompt:i,model:n.model??``,images:a,attachments:o})},interruptSession:({state:e})=>{let t=e.currentSessionId,n=e.currentNodeId;!t||!n||!H||H.sendToNode(n,{action:O,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&&H&&H.sendToNode(i,{action:T,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&&(H?.sendToNode(r.node_id,{action:f,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&&(H?.sendToNode(r.node_id,{action:f,request_id:n.request_id,decision:`allow`,answer:G(n.output),answer_text:K(n.output)}),e(`removePermission`,n.request_id))},getHistory:({commit:e,state:t},n)=>{let r=n??t.currentNodeId;!r||!H||(e(`updateStatus`,{key:`getHistory`,value:L.Request}),H.sendToNode(r,{action:y,limit:200}))},getHistoryDetail:(e,t)=>{!t?.node_id||!t?.session_id||!H||H.sendToNode(t.node_id,{action:D,provider:t.provider,session_id:t.session_id})},browseDir:({commit:e,state:t},n)=>{let r=t.currentNodeId;!r||!H||(e(`setDirectoryLoading`,!0),H.sendToNode(r,{action:w,path:n||void 0}))},clearDirectory:({commit:e})=>{e(`setDirectory`,void 0)},getCapabilities:({state:e},t)=>{let n=t??e.currentNodeId;!n||!H||H.sendToNode(n,{action:k})}}};export{Y as codingBridge,Y 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.nodeId":{message:`ID do dispositivo`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID da sessão`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID de rastreamento`,description:`Diagnostic label for the trace id`},"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:`Histórico`,description:`Open the conversation history drawer`},"history.title":{message:`Histórico de conversas`,description:`History drawer title`},"history.intro":{message:`Sessões anteriores do Claude Code e do Codex neste dispositivo.`,description:`History drawer intro`},"history.refresh":{message:`Atualizar`,description:`Reload the history list`},"history.loading":{message:`Carregando histórico…`,description:`History loading message`},"history.empty":{message:`Nenhum histórico encontrado neste dispositivo.`,description:`Empty history message`},"history.messages":{message:`{count} mensagens`,description:`History item message count`},"history.readonly":{message:`Esta conversa do Codex é somente leitura e não pode ser continuada. Inicie uma nova sessão para continuar programando.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Enviar uma mensagem retomará esta conversa no dispositivo.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Histórico do Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Histórico do Codex (somente leitura)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Modo de permissões`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Padrão (perguntar sempre)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Aceitar edições automaticamente`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Modo de planejamento (somente leitura)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Ignorar todas as permissões`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(não instalado)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} não está instalado neste dispositivo.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Esforço de raciocínio`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Padrão`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Baixo`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Médio`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Alto`,description:`Reasoning effort: high`},"session.effortMax":{message:`Máximo`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Escolher diretório de trabalho`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Usar este diretório`,description:`Button: select the current directory`},"directory.up":{message:`Diretório pai`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Atualizar`,description:`Button: reload the current directory`},"directory.loading":{message:`A carregar…`,description:`Directory listing loading hint`},"directory.empty":{message:`Este diretório está vazio.`,description:`Empty directory hint`},"directory.truncated":{message:`A mostrar as primeiras 1000 entradas.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Anexar imagem`,description:`Attach image button title`},"session.removeImage":{message:`Remover imagem`,description:`Remove attached image button title`},"session.imageAlt":{message:`Imagem anexada`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`A imagem é muito grande; mantenha cada uma abaixo de 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Você pode anexar até {count} imagens.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} é um comando interativo e não pode ser executado numa sessão remota.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} não está disponível para o Codex numa sessão remota.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`ID устройства`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID сессии`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID трассировки`,description:`Diagnostic label for the trace id`},"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`},"session.permissionModeLabel":{message:`Режим разрешений`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`По умолчанию (спрашивать каждый раз)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Автоматически принимать правки`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Режим планирования (только чтение)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Обойти все разрешения`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Бэкенд`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(не установлено)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} не установлен на этом устройстве.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Уровень рассуждений`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`По умолчанию`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Низкий`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Средний`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Высокий`,description:`Reasoning effort: high`},"session.effortMax":{message:`Максимальный`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Выберите рабочий каталог`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Использовать этот каталог`,description:`Button: select the current directory`},"directory.up":{message:`Родительский каталог`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Обновить`,description:`Button: reload the current directory`},"directory.loading":{message:`Загрузка…`,description:`Directory listing loading hint`},"directory.empty":{message:`Этот каталог пуст.`,description:`Empty directory hint`},"directory.truncated":{message:`Показаны первые 1000 записей.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Прикрепить изображение`,description:`Attach image button title`},"session.removeImage":{message:`Удалить изображение`,description:`Remove attached image button title`},"session.imageAlt":{message:`Прикреплённое изображение`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Изображение слишком большое; размер каждого должен быть меньше 12 МБ.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Можно прикрепить до {count} изображений.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} — интерактивная команда, её нельзя выполнить в удалённом сеансе.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} недоступна для Codex в удалённом сеансе.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`ID de dispositivo`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID de sesión`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID de seguimiento`,description:`Diagnostic label for the trace id`},"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:`Historial`,description:`Open the conversation history drawer`},"history.title":{message:`Historial de conversaciones`,description:`History drawer title`},"history.intro":{message:`Sesiones anteriores de Claude Code y Codex en este dispositivo.`,description:`History drawer intro`},"history.refresh":{message:`Actualizar`,description:`Reload the history list`},"history.loading":{message:`Cargando historial…`,description:`History loading message`},"history.empty":{message:`No se encontró historial en este dispositivo.`,description:`Empty history message`},"history.messages":{message:`{count} mensajes`,description:`History item message count`},"history.readonly":{message:`Esta conversación de Codex es de solo lectura y no se puede continuar. Inicia una nueva sesión para seguir programando.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Enviar un mensaje reanudará esta conversación en el dispositivo.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Historial de Claude`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Historial de Codex (solo lectura)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Modo de permisos`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Predeterminado (preguntar cada vez)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Aceptar cambios automáticamente`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Modo de planificación (solo lectura)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Omitir todos los permisos`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(no instalado)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} no está instalado en este dispositivo.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Esfuerzo de razonamiento`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Predeterminado`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Bajo`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Medio`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Alto`,description:`Reasoning effort: high`},"session.effortMax":{message:`Máximo`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Elegir directorio de trabajo`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Usar este directorio`,description:`Button: select the current directory`},"directory.up":{message:`Directorio superior`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Actualizar`,description:`Button: reload the current directory`},"directory.loading":{message:`Cargando…`,description:`Directory listing loading hint`},"directory.empty":{message:`Este directorio está vacío.`,description:`Empty directory hint`},"directory.truncated":{message:`Mostrando las primeras 1000 entradas.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Adjuntar imagen`,description:`Attach image button title`},"session.removeImage":{message:`Quitar imagen`,description:`Remove attached image button title`},"session.imageAlt":{message:`Imagen adjunta`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`La imagen es demasiado grande; mantén cada una por debajo de 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Puedes adjuntar hasta {count} imágenes.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} es un comando interactivo y no puede ejecutarse en una sesión remota.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} no está disponible para Codex en una sesión remota.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`Geräte-ID`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`Sitzungs-ID`,description:`Diagnostic label for the session id`},"session.traceId":{message:`Trace-ID`,description:`Diagnostic label for the trace id`},"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:`Verlauf`,description:`Open the conversation history drawer`},"history.title":{message:`Konversationsverlauf`,description:`History drawer title`},"history.intro":{message:`Frühere Claude-Code- und Codex-Sitzungen auf diesem Gerät.`,description:`History drawer intro`},"history.refresh":{message:`Aktualisieren`,description:`Reload the history list`},"history.loading":{message:`Verlauf wird geladen…`,description:`History loading message`},"history.empty":{message:`Kein Verlauf auf diesem Gerät gefunden.`,description:`Empty history message`},"history.messages":{message:`{count} Nachrichten`,description:`History item message count`},"history.readonly":{message:`Diese Codex-Konversation ist schreibgeschützt und kann nicht fortgesetzt werden. Starte eine neue Sitzung, um weiterzuarbeiten.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Eine Nachricht setzt diese Konversation auf dem Gerät fort.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Claude-Verlauf`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Codex-Verlauf (schreibgeschützt)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Berechtigungsmodus`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Standard (jedes Mal fragen)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Änderungen automatisch akzeptieren`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Planungsmodus (schreibgeschützt)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Alle Berechtigungen umgehen`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(nicht installiert)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} ist auf diesem Gerät nicht installiert.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Denkaufwand`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Standard`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Niedrig`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Mittel`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Hoch`,description:`Reasoning effort: high`},"session.effortMax":{message:`Maximal`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Arbeitsverzeichnis wählen`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Dieses Verzeichnis verwenden`,description:`Button: select the current directory`},"directory.up":{message:`Übergeordnetes Verzeichnis`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Aktualisieren`,description:`Button: reload the current directory`},"directory.loading":{message:`Wird geladen…`,description:`Directory listing loading hint`},"directory.empty":{message:`Dieses Verzeichnis ist leer.`,description:`Empty directory hint`},"directory.truncated":{message:`Die ersten 1000 Einträge werden angezeigt.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Bild anhängen`,description:`Attach image button title`},"session.removeImage":{message:`Bild entfernen`,description:`Remove attached image button title`},"session.imageAlt":{message:`Angehängtes Bild`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Bild ist zu groß; halte jedes unter 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Du kannst bis zu {count} Bilder anhängen.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} ist ein interaktiver Befehl und kann in einer Remote-Sitzung nicht ausgeführt werden.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} ist für Codex in einer Remote-Sitzung nicht verfügbar.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`ID dispositivo`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID sessione`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID traccia`,description:`Diagnostic label for the trace id`},"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`},"session.permissionModeLabel":{message:`Modalità autorizzazioni`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Predefinito (chiedi ogni volta)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Accetta automaticamente le modifiche`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Modalità pianificazione (sola lettura)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Ignora tutte le autorizzazioni`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Backend`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(non installato)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} non è installato su questo dispositivo.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Sforzo di ragionamento`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Predefinito`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Basso`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Medio`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Alto`,description:`Reasoning effort: high`},"session.effortMax":{message:`Massimo`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Scegli la directory di lavoro`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Usa questa directory`,description:`Button: select the current directory`},"directory.up":{message:`Directory superiore`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Aggiorna`,description:`Button: reload the current directory`},"directory.loading":{message:`Caricamento…`,description:`Directory listing loading hint`},"directory.empty":{message:`Questa directory è vuota.`,description:`Empty directory hint`},"directory.truncated":{message:`Mostrate le prime 1000 voci.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Allega immagine`,description:`Attach image button title`},"session.removeImage":{message:`Rimuovi immagine`,description:`Remove attached image button title`},"session.imageAlt":{message:`Immagine allegata`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`L'immagine è troppo grande; mantieni ciascuna sotto i 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Puoi allegare fino a {count} immagini.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} è un comando interattivo e non può essere eseguito in una sessione remota.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} non è disponibile per Codex in una sessione remota.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`デバイス ID`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`セッション ID`,description:`Diagnostic label for the session id`},"session.traceId":{message:`トレース ID`,description:`Diagnostic label for the trace id`},"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`},"session.permissionModeLabel":{message:`権限モード`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`デフォルト(毎回確認)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`編集を自動承認`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`プランモード(読み取り専用)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`すべての権限をバイパス`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`バックエンド`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(未インストール)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} はこのデバイスにインストールされていません。`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`推論の強度`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`デフォルト`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`低`,description:`Reasoning effort: low`},"session.effortMedium":{message:`中`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`高`,description:`Reasoning effort: high`},"session.effortMax":{message:`最大`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`作業ディレクトリを選択`,description:`Working-directory picker dialog title`},"directory.choose":{message:`このディレクトリを使用`,description:`Button: select the current directory`},"directory.up":{message:`親ディレクトリ`,description:`Button: go to the parent directory`},"directory.refresh":{message:`更新`,description:`Button: reload the current directory`},"directory.loading":{message:`読み込み中…`,description:`Directory listing loading hint`},"directory.empty":{message:`このディレクトリは空です。`,description:`Empty directory hint`},"directory.truncated":{message:`最初の 1000 件を表示しています。`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`画像を添付`,description:`Attach image button title`},"session.removeImage":{message:`画像を削除`,description:`Remove attached image button title`},"session.imageAlt":{message:`添付された画像`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`画像が大きすぎます。1 枚あたり 12 MB 以内にしてください。`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`画像は最大 {count} 枚まで添付できます。`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} は対話型コマンドのため、リモートセッションでは実行できません。`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} はリモートセッションの Codex では利用できません。`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`Laitetunnus`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`Istuntotunnus`,description:`Diagnostic label for the session id`},"session.traceId":{message:`Jäljitystunnus`,description:`Diagnostic label for the trace id`},"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:`Historia`,description:`Open the conversation history drawer`},"history.title":{message:`Keskusteluhistoria`,description:`History drawer title`},"history.intro":{message:`Aiemmat Claude Code- ja Codex-istunnot tällä laitteella.`,description:`History drawer intro`},"history.refresh":{message:`Päivitä`,description:`Reload the history list`},"history.loading":{message:`Ladataan historiaa…`,description:`History loading message`},"history.empty":{message:`Tältä laitteelta ei löytynyt historiaa.`,description:`Empty history message`},"history.messages":{message:`{count} viestiä`,description:`History item message count`},"history.readonly":{message:`Tämä Codex-keskustelu on vain luettavissa, eikä sitä voi jatkaa. Aloita uusi istunto jatkaaksesi koodausta.`,description:`Read-only replay notice`},"history.resumeHint":{message:`Viestin lähettäminen jatkaa tätä keskustelua laitteella.`,description:`Resume composer hint`},"history.claudeLabel":{message:`Claude-historia`,description:`Replayed Claude session label`},"history.codexLabel":{message:`Codex-historia (vain luku)`,description:`Replayed Codex session label`},"session.permissionModeLabel":{message:`Käyttöoikeustila`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Oletus (kysy joka kerta)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Hyväksy muokkaukset automaattisesti`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Suunnittelutila (vain luku)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Ohita kaikki käyttöoikeudet`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Taustajärjestelmä`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(ei asennettu)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} ei ole asennettu tähän laitteeseen.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Päättelyn taso`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Oletus`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Matala`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Keskitaso`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Korkea`,description:`Reasoning effort: high`},"session.effortMax":{message:`Maksimi`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Valitse työhakemisto`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Käytä tätä hakemistoa`,description:`Button: select the current directory`},"directory.up":{message:`Ylähakemisto`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Päivitä`,description:`Button: reload the current directory`},"directory.loading":{message:`Ladataan…`,description:`Directory listing loading hint`},"directory.empty":{message:`Tämä hakemisto on tyhjä.`,description:`Empty directory hint`},"directory.truncated":{message:`Näytetään ensimmäiset 1000 kohdetta.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Liitä kuva`,description:`Attach image button title`},"session.removeImage":{message:`Poista kuva`,description:`Remove attached image button title`},"session.imageAlt":{message:`Liitetty kuva`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Kuva on liian suuri; pidä jokainen alle 12 Mt.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Voit liittää enintään {count} kuvaa.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} on vuorovaikutteinen komento, eikä sitä voi suorittaa etäistunnossa.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} ei ole käytettävissä Codexille etäistunnossa.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};export{e as default};
|
|
@@ -0,0 +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.nodeId":{message:`裝置 ID`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`工作階段 ID`,description:`Diagnostic label for the session id`},"session.traceId":{message:`追蹤 ID`,description:`Diagnostic label for the trace id`},"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`},"session.permissionModeLabel":{message:`權限模式`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`預設(每次詢問)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`自動接受修改`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`規劃模式(唯讀)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`略過所有權限`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`後端`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(未安裝)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} 未安裝在此裝置上。`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`推理強度`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`預設`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`低`,description:`Reasoning effort: low`},"session.effortMedium":{message:`中`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`高`,description:`Reasoning effort: high`},"session.effortMax":{message:`最高`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`選擇工作目錄`,description:`Working-directory picker dialog title`},"directory.choose":{message:`使用此目錄`,description:`Button: select the current directory`},"directory.up":{message:`上層目錄`,description:`Button: go to the parent directory`},"directory.refresh":{message:`重新整理`,description:`Button: reload the current directory`},"directory.loading":{message:`正在載入…`,description:`Directory listing loading hint`},"directory.empty":{message:`此目錄為空。`,description:`Empty directory hint`},"directory.truncated":{message:`僅顯示前 1000 項。`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`新增圖片`,description:`Attach image button title`},"session.removeImage":{message:`移除圖片`,description:`Remove attached image button title`},"session.imageAlt":{message:`附加的圖片`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`圖片過大,單張請控制在 12 MB 以內。`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`最多可附加 {count} 張圖片。`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} 是互動式指令,無法在遠端工作階段中執行。`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} 在遠端工作階段中暫不支援 Codex。`,description:`Notice shown when a Codex slash command isn't supported remotely`}};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.nodeId":{message:`ID uređaja`,description:`Diagnostic label for the node id`},"session.sessionId":{message:`ID sesije`,description:`Diagnostic label for the session id`},"session.traceId":{message:`ID praćenja`,description:`Diagnostic label for the trace id`},"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`},"session.permissionModeLabel":{message:`Режим дозвола`,description:`Permission-mode selector label`},"session.permissionModeDefault":{message:`Подразумевано (питај сваки пут)`,description:`Permission mode: ask before each tool use`},"session.permissionModeAcceptEdits":{message:`Аутоматски прихватај измене`,description:`Permission mode: auto-accept file edits`},"session.permissionModePlan":{message:`Режим планирања (само за читање)`,description:`Permission mode: read-only planning`},"session.permissionModeBypass":{message:`Заобиђи све дозволе`,description:`Permission mode: bypass all permission prompts`},"session.providerLabel":{message:`Бекенд`,description:`Agent backend selector label`},"session.providerClaude":{message:`Claude Code`,description:`Backend option: Claude Code`},"session.providerCodex":{message:`Codex`,description:`Backend option: Codex`},"session.providerUnavailable":{message:`(није инсталирано)`,description:`Suffix shown next to a backend whose CLI is not installed on the node`},"session.providerUnavailableHint":{message:`{name} није инсталиран на овом уређају.`,description:`Composer hint shown when the selected backend is not installed on the node`},"session.effortLabel":{message:`Ниво размишљања`,description:`Reasoning-effort selector label`},"session.effortDefault":{message:`Подразумевано`,description:`Reasoning effort: backend default`},"session.effortLow":{message:`Низак`,description:`Reasoning effort: low`},"session.effortMedium":{message:`Средњи`,description:`Reasoning effort: medium`},"session.effortHigh":{message:`Висок`,description:`Reasoning effort: high`},"session.effortMax":{message:`Максималан`,description:`Reasoning effort: maximum (Claude only)`},"directory.title":{message:`Изаберите радни директоријум`,description:`Working-directory picker dialog title`},"directory.choose":{message:`Користи овај директоријум`,description:`Button: select the current directory`},"directory.up":{message:`Надређени директоријум`,description:`Button: go to the parent directory`},"directory.refresh":{message:`Освежи`,description:`Button: reload the current directory`},"directory.loading":{message:`Учитавање…`,description:`Directory listing loading hint`},"directory.empty":{message:`Овај директоријум је празан.`,description:`Empty directory hint`},"directory.truncated":{message:`Приказано првих 1000 ставки.`,description:`Hint shown when the listing was truncated`},"session.attachImage":{message:`Приложи слику`,description:`Attach image button title`},"session.removeImage":{message:`Уклони слику`,description:`Remove attached image button title`},"session.imageAlt":{message:`Приложена слика`,description:`Attached image thumbnail alt text`},"session.imageTooLarge":{message:`Слика је превелика; нека свака буде испод 12 MB.`,description:`Warning shown when an image exceeds the size limit`},"session.imageLimit":{message:`Можеш приложити највише {count} слика.`,description:`Warning shown when exceeding the max number of images`},"session.modelDefault":{message:`Default model`,description:`Default model`},"session.cwdDefault":{message:`Default directory`,description:`Default directory`},"session.settings":{message:`Session settings`,description:`Session settings`},"session.settingsLocked":{message:`Settings are locked for this session`,description:`Settings are locked for this session`},"session.attachFile":{message:`Attach file`,description:`Attach file`},"session.attachmentImageAlt":{message:`Attached image`,description:`Attached image`},"session.removeAttachment":{message:`Remove attachment`,description:`Remove attachment`},"session.uploadingAttachment":{message:`Uploading attachments…`,description:`Uploading attachments…`},"session.attachmentTooLarge":{message:`File is too large; keep each under 50 MB.`,description:`File is too large; keep each under 50 MB.`},"session.attachmentLimit":{message:`You can attach up to {count} files.`,description:`You can attach up to {count} files.`},"session.attachmentUploadError":{message:`Failed to upload attachment.`,description:`Failed to upload attachment.`},"notice.slashUnavailable":{message:`/{command} је интерактивна команда и не може да се изврши у удаљеној сесији.`,description:`Notice shown when a slash command can't run in a remote session`},"notice.slashCodexUnsupported":{message:`/{command} није доступна за Codex у удаљеној сесији.`,description:`Notice shown when a Codex slash command isn't supported remotely`}};export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,Bt as t,D as n,Dt as r,E as i,M as a,N as o,Nt as s,P as c,R as l,Rt as u,T as d,Ut as f,X as p,Z as m,_ as h,k as g,lt as _,nt as v,st as y,ut as b,v as x,y as S,yt as C,zt as w}from"./vendor-chart-Df3WBvr0.js";import{a as T,c as E,i as D,t as O}from"./install-CzQRVga2.js";import{i as k,n as A,r as j,s as M}from"./runtime-CWC3rvzM.js";import{Ct as N,St as P,_ as ee,l as F,m as I,tt as L}from"./use-deprecated-BhaeS12t.js";import{t as R}from"./castArray-C8iSMqbN.js";import{r as z,t as B}from"./event-BGnHezxC.js";import{t as V}from"./collapse-transition-ee9MUgpU.js";import{Rr as H}from"./index-
|
|
1
|
+
import{$ as e,Bt as t,D as n,Dt as r,E as i,M as a,N as o,Nt as s,P as c,R as l,Rt as u,T as d,Ut as f,X as p,Z as m,_ as h,k as g,lt as _,nt as v,st as y,ut as b,v as x,y as S,yt as C,zt as w}from"./vendor-chart-Df3WBvr0.js";import{a as T,c as E,i as D,t as O}from"./install-CzQRVga2.js";import{i as k,n as A,r as j,s as M}from"./runtime-CWC3rvzM.js";import{Ct as N,St as P,_ as ee,l as F,m as I,tt as L}from"./use-deprecated-BhaeS12t.js";import{t as R}from"./castArray-C8iSMqbN.js";import{r as z,t as B}from"./event-BGnHezxC.js";import{t as V}from"./collapse-transition-ee9MUgpU.js";import{Rr as H}from"./index-BkE6zZfO.js";var U=e=>M(e)||w(e)||s(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=C(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 y(()=>e.modelValue,()=>n.value=R(e.modelValue),{deep:!0}),m(K,{activeNames:n,handleItemClick:async t=>{let{beforeCollapse:n}=e;if(!n){i(t);return}let r=n(t);[u(r),k(r)].includes(!0)||N(q,"beforeCollapse must return type `Promise<boolean>` or `boolean`"),u(r)?r.then(e=>{e!==!1&&i(t)}).catch(e=>{P(q,`some error occurred: ${e}`)}):r&&i(t)}}),{activeNames:n,setActiveNames:r}},Y=e=>{let t=E(`collapse`);return{rootKls:d(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}},X=T(c({...c({name:`ElCollapse`}),props:W,emits:G,setup(n,{expose:i,emit:a}){let o=n,{activeNames:s,setActiveNames:c}=J(o,a),{rootKls:l}=Y(o);return i({activeNames:s,setActiveNames:c}),(n,i)=>(p(),g(`div`,{class:t(r(l))},[e(n.$slots,`default`)],2))}}),[[`__file`,`collapse.vue`]]),Z=A({title:{type:String,default:``},name:{type:j([String,Number]),default:void 0},icon:{type:I,default:ee},disabled:Boolean}),Q=e=>{let t=l(K),{namespace:n}=E(`collapse`),i=C(!1),a=C(!1),o=F(),s=d(()=>o.current++),c=d(()=>e.name??`${n.value}-id-${o.prefix}-${r(s)}`);return{focusing:i,id:s,isActive:d(()=>t?.activeNames.value.includes(r(c))),handleFocus:()=>{setTimeout(()=>{a.value?a.value=!1:i.value=!0},50)},handleHeaderClick:n=>{e.disabled||n.target?.closest(`input, textarea, select`)||(t?.handleItemClick(r(c)),i.value=!1,a.value=!0)},handleEnterClick:e=>{e.target?.closest(`input, textarea, select`)||(e.preventDefault(),t?.handleItemClick(r(c)))}}},te=(e,{focusing:t,isActive:n,id:i})=>{let a=E(`collapse`),o=d(()=>[a.b(`item`),a.is(`active`,r(n)),a.is(`disabled`,e.disabled)]),s=d(()=>[a.be(`item`,`header`),a.is(`active`,r(n)),{focusing:r(t)&&!e.disabled}]),c=d(()=>[a.be(`item`,`arrow`),a.is(`active`,r(n))]);return{itemTitleKls:d(()=>[a.be(`item`,`title`)]),arrowKls:c,headKls:s,rootKls:o,itemWrapperKls:d(()=>a.be(`item`,`wrap`)),itemContentKls:d(()=>a.be(`item`,`content`)),scopedContentId:d(()=>a.b(`content-${r(i)}`)),scopedHeadId:d(()=>a.b(`head-${r(i)}`))}},$=T(c({...c({name:`ElCollapseItem`}),props:Z,setup(s,{expose:c}){let l=s,{focusing:u,id:d,isActive:m,handleFocus:y,handleHeaderClick:C,handleEnterClick:w}=Q(l),{arrowKls:T,headKls:E,rootKls:D,itemTitleKls:O,itemWrapperKls:k,itemContentKls:A,scopedContentId:j,scopedHeadId:M}=te(l,{focusing:u,isActive:m,id:d});return c({isActive:m}),(s,c)=>(p(),g(`div`,{class:t(r(D))},[i(`div`,{id:r(M),class:t(r(E)),"aria-expanded":r(m),"aria-controls":r(j),"aria-describedby":r(j),tabindex:s.disabled?-1:0,role:`button`,onClick:r(C),onKeydown:x(S(r(w),[`stop`]),[`space`,`enter`]),onFocus:r(y),onBlur:e=>u.value=!1},[i(`span`,{class:t(r(O))},[e(s.$slots,`title`,{isActive:r(m)},()=>[a(f(s.title),1)])],2),e(s.$slots,`icon`,{isActive:r(m)},()=>[o(r(L),{class:t(r(T))},{default:_(()=>[(p(),n(v(s.icon)))]),_:1},8,[`class`])])],42,[`id`,`aria-expanded`,`aria-controls`,`aria-describedby`,`tabindex`,`onClick`,`onKeydown`,`onFocus`,`onBlur`]),o(r(V),null,{default:_(()=>[b(i(`div`,{id:r(j),role:`region`,class:t(r(k)),"aria-hidden":!r(m),"aria-labelledby":r(M)},[i(`div`,{class:t(r(A))},[e(s.$slots,`default`)],2)],10,[`id`,`aria-hidden`,`aria-labelledby`]),[[h,r(m)]])]),_:3})],2))}}),[[`__file`,`collapse-item.vue`]]),ne=O(X,{CollapseItem:$}),re=D($);export{re as n,ne as t};
|