@xopcai/xopc 0.0.272 → 0.0.274
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/README.md +1 -5
- package/README.zh-CN.md +1 -5
- package/dist/browser-ext/dist/assets/{auth-C1QI-uMG.js → auth-O8RiOF3l.js} +265 -100
- package/dist/browser-ext/dist/background.js +1 -22
- package/dist/browser-ext/dist/sidepanel.html +1 -1
- package/dist/browser-ext/dist/sidepanel.js +68 -36
- package/dist/browser-ext/manifest.json +1 -12
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/gateway/static/root/assets/{activity-store-DffqjeqQ.js → activity-store-SJZ5fS17.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-Cwj4HCYY.js → agent-avatar-dicebear-BckaANxj.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-6CLfLxVc.js → agent-defaults-settings-panel-B8eyC6K1.js} +1 -1
- package/dist/gateway/static/root/assets/agents-CSWj_yo1.js +1 -0
- package/dist/gateway/static/root/assets/{api-CGLdye4i.js → api-CnJAVHBu.js} +1 -1
- package/dist/gateway/static/root/assets/app-link-BiBXVEvp.js +1 -0
- package/dist/gateway/static/root/assets/{app-management-settings-panel-BLujSbaw.js → app-management-settings-panel-DY-Zbgmt.js} +1 -1
- package/dist/gateway/static/root/assets/{appearance-settings-BXMcueb8.js → appearance-settings-CoJR7ZRl.js} +1 -1
- package/dist/gateway/static/root/assets/{apps-page-BEgy4hY3.js → apps-page-CSMvkuot.js} +1 -1
- package/dist/gateway/static/root/assets/{archive-plugin-D4bUampf.js → archive-plugin-BwAlRT53.js} +1 -1
- package/dist/gateway/static/root/assets/attachment-load-R835uxgL.js +1 -0
- package/dist/gateway/static/root/assets/{attachment-preview-renderer-BDTD8YUe.js → attachment-preview-renderer-CfEDFYPE.js} +1 -1
- package/dist/gateway/static/root/assets/attachment-process-heavy-C5CqLCsX.js +5 -0
- package/dist/gateway/static/root/assets/{automations-page-dQyolNmy.js → automations-page-BEZy0P_u.js} +1 -1
- package/dist/gateway/static/root/assets/automations-workspace-CpaI13J7.js +6 -0
- package/dist/gateway/static/root/assets/{binary-plugins-bbvp81h2.js → binary-plugins-CESFx3yb.js} +2 -2
- package/dist/gateway/static/root/assets/{block-editor-C8e6Wri4.js → block-editor-DDJcf2wR.js} +3 -3
- package/dist/gateway/static/root/assets/{browser-automation-inputs-oJWJtQa6.js → browser-automation-inputs-DGCqIPXT.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-automations-page-CAcJQSjN.js → browser-automations-page-BH4lSfr5.js} +2 -2
- package/dist/gateway/static/root/assets/browser-settings-page-CbTooPd2.js +8 -0
- package/dist/gateway/static/root/assets/capabilities-settings-panel-C4LZWHhv.js +8 -0
- package/dist/gateway/static/root/assets/channels-settings-BAljmSa7.js +1 -0
- package/dist/gateway/static/root/assets/{channels-status-swr-CfOPNnVr.js → channels-status-swr-BTT2sIGg.js} +1 -1
- package/dist/gateway/static/root/assets/{chat-terminal-dock-9ZOl92kh.js → chat-terminal-dock-D8U97O95.js} +2 -2
- package/dist/gateway/static/root/assets/connectors-page-CVRMjNNr.js +2 -0
- package/dist/gateway/static/root/assets/{date-picker-Dj6FRLF9.js → date-picker-7sDSMswL.js} +1 -1
- package/dist/gateway/static/root/assets/{dependency-picker-D1q89tVc.js → dependency-picker-DMIC86ZW.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-DfqZBvhp.js → desktop-pet-BtdiY5jK.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-settings-HCEh2MOm.js → desktop-pet-settings-D_B8azDH.js} +1 -1
- package/dist/gateway/static/root/assets/device-pairing-wizard-Dmh3Nh4d.js +1 -0
- package/dist/gateway/static/root/assets/excel-worksheet-utils-DpdB-DjU.js +1 -0
- package/dist/gateway/static/root/assets/{extension-debug-page-C8cAWVoK.js → extension-debug-page-CoFKb01d.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-5N87Vaym.js → extension-page-CEkNsCAY.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-D85SAUFP.js → extension-settings-page-Bi2R8P5j.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-swr-BjsDnB_n.js → gateway-config-swr-cd8owslz.js} +1 -1
- package/dist/gateway/static/root/assets/gateway-settings-q9p3sduo.js +1 -0
- package/dist/gateway/static/root/assets/{gateway-startup-retry-BIf0eLWX.js → gateway-startup-retry-CVTa5HSS.js} +1 -1
- package/dist/gateway/static/root/assets/{heartbeat-settings-BpDWGE1a.js → heartbeat-settings-DQtelFiU.js} +1 -1
- package/dist/gateway/static/root/assets/home-page-COpGnTFZ.js +1 -0
- package/dist/gateway/static/root/assets/{image-generation-api-1m8xTVS_.js → image-generation-api-DtMRG1oF.js} +1 -1
- package/dist/gateway/static/root/assets/{index-C6PmD0cK.js → index-SxqsTD4i.js} +35 -35
- package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-Byy8mCSq.js → keyboard-shortcuts-settings-BuYmZS1K.js} +1 -1
- package/dist/gateway/static/root/assets/local-app-workbench-page-DV_17Zxc.js +2 -0
- package/dist/gateway/static/root/assets/{local-apps-page-BPo0wBgM.js → local-apps-page-CExnZyGZ.js} +1 -1
- package/dist/gateway/static/root/assets/{locale-store-CRNble2Z.js → locale-store-BkJ7g35d.js} +1 -1
- package/dist/gateway/static/root/assets/{logs-page-X5FdLlXK.js → logs-page-CA5ArMoN.js} +2 -2
- package/dist/gateway/static/root/assets/management-settings-1UiJPrkX.js +1 -0
- package/dist/gateway/static/root/assets/markdown-view-B2IR4E2r.js +201 -0
- package/dist/gateway/static/root/assets/{media-plugins-Bzka9qXu.js → media-plugins-nNFOk9HL.js} +1 -1
- package/dist/gateway/static/root/assets/{messages-DH_HCgmw.js → messages-BGc-OJWg.js} +2 -2
- package/dist/gateway/static/root/assets/note-detail-panel-B5OQ0fBY.js +5 -0
- package/dist/gateway/static/root/assets/notes-page-CVPPMVDl.js +8 -0
- package/dist/gateway/static/root/assets/{page-tabs-Ys0p65Lt.js → page-tabs-CRombigq.js} +1 -1
- package/dist/gateway/static/root/assets/{preview-open-alternatives-iknB5xEp.js → preview-open-alternatives-Bcuj43lk.js} +1 -1
- package/dist/gateway/static/root/assets/{proactive-card-BPZDgNNR.js → proactive-card-Cb3Xeoyx.js} +1 -1
- package/dist/gateway/static/root/assets/{proactive-page-CxdZR-p2.js → proactive-page-TbF9KVpm.js} +1 -1
- package/dist/gateway/static/root/assets/{product-open-page-W1o3f-kz.js → product-open-page-DsQcgZkI.js} +1 -1
- package/dist/gateway/static/root/assets/project-detail-page-B9OQ2l9x.js +1 -0
- package/dist/gateway/static/root/assets/projects-page-DCqSTNkY.js +1 -0
- package/dist/gateway/static/root/assets/{registry-api-DmYFpjsH.js → registry-api-CTq8EECj.js} +1 -1
- package/dist/gateway/static/root/assets/remote-access-hub-d9Fg70gX.js +1 -0
- package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-DP1XyYO8.js → runtime-tools-settings-panel-BudlvBu-.js} +2 -2
- package/dist/gateway/static/root/assets/{schema-form-BMYKdzsH.js → schema-form-Ch3MEX4h.js} +1 -1
- package/dist/gateway/static/root/assets/sessions-page-D8RiQ-ag.js +1 -0
- package/dist/gateway/static/root/assets/settings-advanced-gate-DVH_l6Hr.js +1 -0
- package/dist/gateway/static/root/assets/{settings-form-section-2LGjz7bu.js → settings-form-section-CIA1AA-A.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-7DjpC9_C.js → settings-page-B0Khoduh.js} +1 -1
- package/dist/gateway/static/root/assets/{setup-status-panel-Dj9jFWJt.js → setup-status-panel-COJFl4N_.js} +1 -1
- package/dist/gateway/static/root/assets/share-preview-page-Cj9XWg-X.js +2 -0
- package/dist/gateway/static/root/assets/shares-settings-_OuE6A0G.js +1 -0
- package/dist/gateway/static/root/assets/skill-reload-api-BM4Ezjbx.js +1 -0
- package/dist/gateway/static/root/assets/{skills-page-DNEScMZH.js → skills-page-Dyh1kf9t.js} +1 -1
- package/dist/gateway/static/root/assets/{skills-page.utils-q88l65YU.js → skills-page.utils-DsQZkMti.js} +1 -1
- package/dist/gateway/static/root/assets/{system-settings-panel-8NIssGKj.js → system-settings-panel-BSho_Tpk.js} +1 -1
- package/dist/gateway/static/root/assets/task-detail-page-B5HWM12k.js +1 -0
- package/dist/gateway/static/root/assets/{theme-store-BXZG3S25.js → theme-store-mV6Cm2vj.js} +1 -1
- package/dist/gateway/static/root/assets/{tunnel-api-CWsRPM84.js → tunnel-api-4DUHxSQG.js} +1 -1
- package/dist/gateway/static/root/assets/{use-autosave-BwQuoTQU.js → use-autosave-BG8Yx7hj.js} +1 -1
- package/dist/gateway/static/root/assets/user-model-page-IjVyv5jj.js +2 -0
- package/dist/gateway/static/root/assets/{voice-api-key-field-Bd03Ic0s.js → voice-api-key-field-DYXwDhHq.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-config-api-gggUp3u9.js → voice-config-api-D3DdcH4H.js} +1 -1
- package/dist/gateway/static/root/assets/{work-discovery-overlay-DF8PR_pK.js → work-discovery-overlay-CQqjzaRo.js} +1 -1
- package/dist/gateway/static/root/assets/{workflow-run-setup-panel-BiAAWlir.js → workflow-run-setup-panel-C5H-Fd-U.js} +2 -2
- package/dist/gateway/static/root/assets/workflows-page-D1hMyPsY.js +6 -0
- package/dist/gateway/static/root/index.html +10 -9
- package/dist/package.js +1 -1
- package/dist/packages/gateway-contract/src/device-pairing.js +41 -2
- package/dist/src/agent/service.js +20 -16
- package/dist/src/browser/native-messaging-host.d.ts +1 -1
- package/dist/src/browser/native-messaging-host.js +3 -2
- package/dist/src/browser/providers/browser-ext-install.d.ts +6 -0
- package/dist/src/browser/providers/browser-ext-install.js +16 -1
- package/dist/src/cli/commands/gateway/run-foreground.js +8 -5
- package/dist/src/cli/commands/gateway/service.js +4 -3
- package/dist/src/cli/commands/gateway/token.js +28 -1
- package/dist/src/gateway/device-routes.js +4 -3
- package/dist/src/gateway/hono/app.js +5 -2
- package/dist/src/gateway/hono/routes/agent-stream.js +1 -1
- package/dist/src/gateway/hono/routes/browser.js +26 -0
- package/dist/src/gateway/hono/routes/device-pairing-approval.d.ts +9 -2
- package/dist/src/gateway/hono/routes/device-pairing-approval.js +50 -10
- package/dist/src/gateway/hono/routes/devices.d.ts +2 -1
- package/dist/src/gateway/hono/routes/devices.js +33 -16
- package/dist/src/gateway/hono/routes/session-input-handler.d.ts +1 -1
- package/dist/src/gateway/hono/routes/session-input-handler.js +1 -1
- package/dist/src/gateway/hono/routes/side-chats.js +1 -1
- package/dist/src/gateway/hono/routes/tunnel.js +34 -2
- package/dist/src/gateway/rate-limit/buckets.js +2 -1
- package/dist/src/gateway/service/run-gateway-agent.js +1 -1
- package/dist/src/storage/sqlite/device-pairing-approval.js +4 -4
- package/dist/src/tui/tui.js +1 -1
- package/dist/src/tunnel/xopc-cloud-registration.d.ts +5 -0
- package/dist/src/tunnel/xopc-cloud-registration.js +17 -11
- package/package.json +3 -3
- package/dist/browser-ext/dist/pairing-handoff.js +0 -51
- package/dist/gateway/static/root/assets/agents-B6mu64fY.js +0 -1
- package/dist/gateway/static/root/assets/attachment-load-CBGNA2Ys.js +0 -2
- package/dist/gateway/static/root/assets/attachment-process-heavy-B2_kr5EA.js +0 -11
- package/dist/gateway/static/root/assets/automations-workspace-DxRFrmrV.js +0 -6
- package/dist/gateway/static/root/assets/browser-settings-page-TLAlqcPo.js +0 -8
- package/dist/gateway/static/root/assets/capabilities-settings-panel-z-K_jrZz.js +0 -8
- package/dist/gateway/static/root/assets/channels-settings-Dzrk33aB.js +0 -1
- package/dist/gateway/static/root/assets/connectors-page-B1dIoRNi.js +0 -2
- package/dist/gateway/static/root/assets/device-pairing-wizard-CPth92s6.js +0 -1
- package/dist/gateway/static/root/assets/excel-worksheet-utils-EyvwNT4X.js +0 -1
- package/dist/gateway/static/root/assets/gateway-settings-Dqx8PmcT.js +0 -1
- package/dist/gateway/static/root/assets/home-page-DJaqpC8-.js +0 -1
- package/dist/gateway/static/root/assets/local-app-workbench-page-l2AEiG2C.js +0 -2
- package/dist/gateway/static/root/assets/management-settings-DT6NoIjm.js +0 -1
- package/dist/gateway/static/root/assets/markdown-view-AglreSOj.js +0 -201
- package/dist/gateway/static/root/assets/note-detail-panel-BUJPoaGZ.js +0 -5
- package/dist/gateway/static/root/assets/notes-page-BwFpWRuo.js +0 -8
- package/dist/gateway/static/root/assets/project-detail-page-BU1RKAcy.js +0 -1
- package/dist/gateway/static/root/assets/projects-page-z0X0tL8G.js +0 -1
- package/dist/gateway/static/root/assets/remote-access-hub-NNTut2I8.js +0 -1
- package/dist/gateway/static/root/assets/sessions-page-B6SsHlz5.js +0 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-BQu8bAcN.js +0 -1
- package/dist/gateway/static/root/assets/share-preview-page-BxYdSi8c.js +0 -2
- package/dist/gateway/static/root/assets/shares-settings-CMqE0KuK.js +0 -1
- package/dist/gateway/static/root/assets/skill-reload-api-BXqSJymN.js +0 -1
- package/dist/gateway/static/root/assets/task-detail-page-L6dp9v2y.js +0 -1
- package/dist/gateway/static/root/assets/user-model-page-D4BucMrZ.js +0 -2
- package/dist/gateway/static/root/assets/workflows-page-DryKUMfA.js +0 -6
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{h as i}from"./chunk-KS7C4IRE-Cq1tE_3b.js";import{t as a}from"./messages-DH_HCgmw.js";import{i as o,n as s,r as c}from"./locale-store-CRNble2Z.js";import{t as l}from"./cn-JdwAhgNB.js";import{i as u}from"./vendor-swr-BIWyz7Rc.js";import{t as d}from"./button-B11EPpor.js";import{t as f}from"./skeleton-BwbyijEw.js";import{Ic as p,ac as m,bc as h,cc as g,qi as _}from"./index-C6PmD0cK.js";import{n as v,r as y}from"./settings-page-layout-DYelDcMV.js";import{d as b,m as x}from"./tunnel-api-CWsRPM84.js";import{t as S}from"./device-pairing-wizard-CPth92s6.js";import{n as C}from"./settings-loading-skeleton-CAmWMaOT.js";var w=e(t(),1),T=n();async function E(e){let t=await e.json().catch(()=>null);if(!e.ok||t?.payload===void 0)throw Error(t?.error?.message??`Endpoint management request failed: ${e.status}`);return t.payload}function D(){return c(`/api/endpoint-tools/principals`)}function O(){return c(`/api/endpoint-tools/invocations?limit=50`)}async function k(){return E(await o(D()))}async function A(){return E(await o(O()))}async function j(e){await E(await o(c(`/api/endpoint-tools/principals/${encodeURIComponent(e)}`),{method:`DELETE`}))}var M=r();function N(){let[e,t]=i(),n=s(e=>e.language),r=a(n).endpointToolsSettings.deviceAccess,o=u(`connected-devices`,b,{refreshInterval:1e4}),[c,l]=(0,w.useState)(!1),[h,v]=(0,w.useState)(),[y,C]=(0,w.useState)(),[T,E]=(0,w.useState)(!1),[D,O]=(0,w.useState)(!1);(0,w.useEffect)(()=>{let n=e.get(`startDevicePairing`);n!==`mobile`&&n!==`browser`||(v(n),l(!0),t(e=>{let t=new URLSearchParams(e);return t.delete(`startDevicePairing`),t},{replace:!0}))},[e,t]);let k=(0,w.useCallback)(()=>{o.mutate()},[o]),A=async()=>{if(!(!y||T)){E(!0),O(!1);try{await x(y.id),C(void 0),await o.mutate()}catch{O(!0)}finally{E(!1)}}},j=o.data?.filter(e=>!e.revokedAt)??[];return(0,M.jsxs)(`section`,{className:`rounded-xl border border-edge bg-surface-panel p-5`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-4`,children:[(0,M.jsxs)(`div`,{children:[(0,M.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:r.title}),(0,M.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:r.hint})]}),(0,M.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,M.jsxs)(d,{variant:`secondary`,onClick:()=>{v(`mobile`),l(!0)},children:[(0,M.jsx)(m,{className:`size-4`}),r.addMobile]}),(0,M.jsxs)(d,{variant:`primary`,onClick:()=>{v(`browser`),l(!0)},children:[(0,M.jsx)(p,{className:`size-4`}),r.addBrowser]})]})]}),D?(0,M.jsx)(`p`,{role:`alert`,className:`mt-3 text-sm text-danger`,children:r.revokeFailed}):null,(0,M.jsx)(`div`,{className:`mt-5 divide-y divide-edge-subtle`,children:o.isLoading?(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(f,{className:`h-16`}),(0,M.jsx)(f,{className:`h-16`})]}):j.length===0?(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:r.empty}):j.map(e=>(0,M.jsxs)(`div`,{className:`flex items-center justify-between gap-3 py-4`,children:[(0,M.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,M.jsx)(`span`,{className:`flex size-9 shrink-0 items-center justify-center rounded-lg bg-surface-subtle text-fg-muted`,children:e.platform===`chrome`?(0,M.jsx)(p,{className:`size-4`}):(0,M.jsx)(m,{className:`size-4`})}),(0,M.jsxs)(`div`,{className:`min-w-0`,children:[(0,M.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:e.displayName}),(0,M.jsxs)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:[e.platform===`chrome`?r.browserTitle:r.mobileTitle,` · `,r.lastSeen,`: `,e.lastSeenAt?new Intl.DateTimeFormat(n,{dateStyle:`medium`,timeStyle:`short`}).format(e.lastSeenAt):r.never]})]})]}),(0,M.jsxs)(d,{variant:`ghost`,onClick:()=>C(e),children:[(0,M.jsx)(g,{className:`size-4`}),r.revoke]})]},e.id))}),(0,M.jsx)(S,{open:c,onOpenChange:l,onPaired:k,targetKind:h}),(0,M.jsx)(_,{open:!!y,title:r.revokeTitle,description:r.revokeDescription.replace(`{{name}}`,y?.displayName??``),confirmLabel:T?r.revoking:r.revoke,cancelLabel:r.cancel,destructive:!0,onConfirm:()=>void A(),onCancel:()=>{T||C(void 0)}})]})}var P=5e3;function F(e){return e===`online`||e===`succeeded`?`bg-success-soft text-success`:e===`running`?`bg-accent-soft text-accent-fg`:e===`failed`||e===`revoked`?`bg-danger-soft text-danger`:`bg-surface-hover text-fg-muted`}function I(e){let t=(0,T.c)(5),{status:n,label:r}=e,i;t[0]===n?i=t[1]:(i=l(`rounded-full px-2 py-0.5 text-xs font-medium`,F(n)),t[0]=n,t[1]=i);let a;return t[2]!==r||t[3]!==i?(a=(0,M.jsx)(`span`,{className:i,children:r}),t[2]=r,t[3]=i,t[4]=a):a=t[4],a}function L(){let e=s(e=>e.language),t=a(e).endpointToolsSettings,n=u(D(),k,{refreshInterval:P}),r=u(O(),A,{refreshInterval:P}),[i,o]=(0,w.useState)(),[c,l]=(0,w.useState)(!1),[f,p]=(0,w.useState)(!1),m=(0,w.useMemo)(()=>new Intl.DateTimeFormat(e===`zh`?`zh-CN`:`en`,{dateStyle:`medium`,timeStyle:`short`}),[e]);if(n.isLoading&&!n.data||r.isLoading&&!r.data)return(0,M.jsx)(y,{children:(0,M.jsx)(C,{sections:2})});let b=n.data??[],x=r.data??[],S=b.reduce((e,t)=>e+t.endpoints.length,0),T=()=>void Promise.all([n.mutate(),r.mutate()]),E=async()=>{if(!(!i||c)){l(!0),p(!1);try{await j(i.id),o(void 0),await Promise.all([n.mutate(),r.mutate()])}catch{p(!0)}finally{l(!1)}}};return(0,M.jsxs)(y,{children:[(0,M.jsx)(v,{title:t.title,actions:(0,M.jsxs)(d,{variant:`secondary`,onClick:T,children:[(0,M.jsx)(h,{className:`size-4`,"aria-hidden":!0}),t.refresh]})}),n.error||r.error?(0,M.jsx)(`div`,{className:`rounded-xl border border-danger/30 bg-danger-soft px-4 py-3 text-sm text-danger`,children:t.loadError}):null,(0,M.jsx)(N,{}),(0,M.jsx)(`div`,{className:`grid gap-3 sm:grid-cols-3`,children:[[t.registered,b.length],[t.online,S],[t.recentCalls,x.length]].map(([e,t])=>(0,M.jsxs)(`div`,{className:`rounded-xl border border-edge bg-surface-base px-4 py-3`,children:[(0,M.jsx)(`p`,{className:`text-xs text-fg-muted`,children:e}),(0,M.jsx)(`p`,{className:`mt-1 text-2xl font-semibold text-fg`,children:t})]},String(e)))}),(0,M.jsxs)(`section`,{className:`rounded-2xl border border-edge bg-surface-base p-4`,children:[(0,M.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:t.devicesTitle}),(0,M.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:t.devicesHint}),(0,M.jsxs)(`div`,{className:`mt-4 space-y-3`,children:[b.length===0?(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:t.noDevices}):null,b.map(e=>{let n=e.revokedAt?`revoked`:e.endpoints.length>0?`online`:`offline`;return(0,M.jsxs)(`article`,{className:`rounded-xl border border-edge-subtle bg-surface-panel p-4`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,M.jsxs)(`div`,{className:`min-w-0`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,M.jsx)(`h3`,{className:`font-medium text-fg`,children:e.displayName}),(0,M.jsx)(I,{status:n,label:t.status[n]})]}),(0,M.jsxs)(`p`,{className:`mt-1 break-all text-xs text-fg-muted`,children:[e.kind,` · `,e.platform,` · `,e.id]}),(0,M.jsxs)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:[t.lastSeen,`: `,e.lastSeenAt?m.format(e.lastSeenAt):t.never]})]}),e.revokedAt?null:(0,M.jsxs)(d,{variant:`secondary`,className:`text-danger`,onClick:()=>{p(!1),o(e)},children:[(0,M.jsx)(g,{className:`size-4`,"aria-hidden":!0}),t.revoke]})]}),e.endpoints.map(e=>(0,M.jsxs)(`div`,{className:`mt-3 rounded-lg bg-surface-base p-3`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2 text-xs text-fg-muted`,children:[(0,M.jsx)(`span`,{children:e.endpointId}),(0,M.jsxs)(`span`,{children:[t.status[e.availability],` · v`,e.appVersion]})]}),(0,M.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:e.tools.map(({descriptor:e})=>(0,M.jsxs)(`span`,{className:`rounded-md border border-edge-subtle bg-surface-panel px-2 py-1 text-xs text-fg-muted`,title:e.requiredPermissions.join(`, `)||t.noPermissions,children:[e.name,(0,M.jsxs)(`span`,{className:`ml-1 text-fg-subtle`,children:[`· `,e.requiredPermissions.join(`, `)||t.noPermissions]})]},e.name))})]},e.connectionId))]},e.id)})]})]}),(0,M.jsxs)(`section`,{className:`rounded-2xl border border-edge bg-surface-base p-4`,children:[(0,M.jsx)(`h2`,{className:`text-sm font-semibold text-fg`,children:t.callsTitle}),(0,M.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:t.callsHint}),(0,M.jsxs)(`div`,{className:`mt-4 space-y-2`,children:[x.length===0?(0,M.jsx)(`p`,{className:`text-sm text-fg-muted`,children:t.noCalls}):null,x.map(e=>(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 rounded-lg border border-edge-subtle bg-surface-panel px-3 py-2.5`,children:[(0,M.jsxs)(`div`,{className:`min-w-0`,children:[(0,M.jsx)(`p`,{className:`break-all text-sm font-medium text-fg`,children:e.toolName}),(0,M.jsxs)(`p`,{className:`mt-0.5 text-xs text-fg-muted`,children:[m.format(e.startedAt),` · `,e.effect,` · `,e.endpointId]}),e.errorMessage?(0,M.jsx)(`p`,{className:`mt-1 text-xs text-danger`,children:e.errorMessage}):null]}),(0,M.jsx)(I,{status:e.status,label:t.status[e.status]})]},e.id))]})]}),(0,M.jsx)(_,{open:!!i,title:t.revokeTitle,description:`${t.revokeDescription.replace(`{{name}}`,i?.displayName??``)}${f?`\n\n${t.revokeError}`:``}`,confirmLabel:c?t.revoking:t.revoke,cancelLabel:t.cancel,destructive:!0,onConfirm:()=>void E(),onCancel:()=>{c||o(void 0)}})]})}export{L as EndpointToolsManagementSettings};
|