@getpaseo/server 0.1.104-beta.1 → 0.1.104-beta.2

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.
@@ -15039,7 +15039,7 @@ __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{v
15039
15039
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"decodeOfferFragmentPayload",{enumerable:!0,get:function(){return n.decodeOfferFragmentPayload}}),Object.defineProperty(e,"buildDaemonWebSocketUrl",{enumerable:!0,get:function(){return t.buildDaemonWebSocketUrl}}),Object.defineProperty(e,"deriveLabelFromEndpoint",{enumerable:!0,get:function(){return t.deriveLabelFromEndpoint}}),Object.defineProperty(e,"extractHostPortFromWebSocketUrl",{enumerable:!0,get:function(){return t.extractHostPortFromWebSocketUrl}}),Object.defineProperty(e,"normalizeHostPort",{enumerable:!0,get:function(){return t.normalizeHostPort}}),Object.defineProperty(e,"parseConnectionUri",{enumerable:!0,get:function(){return t.parseConnectionUri}}),Object.defineProperty(e,"parseHostPort",{enumerable:!0,get:function(){return t.parseHostPort}}),Object.defineProperty(e,"serializeConnectionUri",{enumerable:!0,get:function(){return t.serializeConnectionUri}}),Object.defineProperty(e,"serializeConnectionUriForStorage",{enumerable:!0,get:function(){return t.serializeConnectionUriForStorage}}),Object.defineProperty(e,"shouldUseTlsForDefaultHostedRelay",{enumerable:!0,get:function(){return t.shouldUseTlsForDefaultHostedRelay}}),e.buildRelayWebSocketUrl=function(n){return(0,t.buildRelayWebSocketUrl)(Object.assign({},n,{role:"client"}))};var t=r(d[0]),n=r(d[1])},3394,[3374,3395]);
15040
15040
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"ConnectionOfferV2Schema",{enumerable:!0,get:function(){return t}}),Object.defineProperty(e,"ConnectionOfferSchema",{enumerable:!0,get:function(){return o}}),e.decodeOfferFragmentPayload=l,e.parseConnectionOfferFromUrl=function(n){const t=f(n);if(!t)return null;const c=l(t);return o.parse(c)};var n=r(d[0]);const t=n.z.object({v:n.z.literal(2),serverId:n.z.string().min(1),daemonPublicKeyB64:n.z.string().min(1),relay:n.z.object({endpoint:n.z.string().min(1),useTls:n.z.boolean().optional()})}),o=t;function c(n){const t=n.replace(/-/g,"+").replace(/_/g,"/"),o=t.padEnd(t.length+(4-t.length%4)%4,"="),c=globalThis.atob(o),l=Uint8Array.from(c,n=>n.charCodeAt(0));return new TextDecoder("utf-8",{fatal:!0}).decode(l)}function l(n){const t=c(n);return JSON.parse(t)}const u="#offer=";function f(n){const t=n.trim();if(!t)return null;const o=t.indexOf(u);if(-1===o)return null;const c=t.slice(o+u.length).trim();return c.length>0?c:null}},3395,[3267]);
15041
15041
  __d(function(g,r,i,a,m,_e,d){"use strict";function e(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(_e,'__esModule',{value:!0}),_e.resolveAppVersion=function(){const e=u(t.default?.version);if(e)return e;const o=u(n.default.expoConfig?.version);if(o)return o;const f=u(n.default.manifest?.version);if(f)return f;return null};var n=e(r(d[0])),t=e(r(d[1]));function u(e){if("string"!=typeof e)return null;const n=e.trim();return 0===n.length?null:n}},3396,[1005,3397]);
15042
- __d(function(e,t,r,a,i,o,n){i.exports={name:"@getpaseo/app",version:"0.1.104-beta.1",private:!0,main:"index.ts",scripts:{start:"npm run start:expo","start:expo":"cross-env APP_VARIANT=development expo start","reset-project":"node ./scripts/reset-project.js","eas-build-post-install":"npm --prefix ../.. run build:app-deps && npm run build:terminal-webview",android:"npm run android:development","android:development":"npm --prefix ../.. run build:client && cross-env APP_VARIANT=development expo prebuild --platform android --non-interactive && cross-env APP_VARIANT=development expo run:android --variant=debug","android:production":"npm --prefix ../.. run build:client && cross-env APP_VARIANT=production expo prebuild --platform android --non-interactive && cross-env APP_VARIANT=production expo run:android --variant=release","android:release":"npm run android:production","android:clear":"node -e \"require('node:fs').rmSync('android', { recursive: true, force: true })\"",ios:"npm --prefix ../.. run build:client && expo run:ios","ios:release":"npm --prefix ../.. run build:client && expo run:ios --configuration Release",web:"npm --prefix ../.. run build:client && concurrently --kill-others --names protocol,client,expo --prefix-colors yellow,blue,magenta \"npm --prefix ../.. run watch:protocol\" \"npm --prefix ../.. run watch:client\" \"npm run web:expo\"","web:expo":"expo start --web",lint:"expo lint",typecheck:"tsgo --noEmit",test:"vitest run","test:browser":"vitest run --project browser","test:e2e":"playwright test --project='Desktop Chrome'","test:e2e:real":"cross-env E2E_FORK_PASEO_HOME_FROM=../../.dev/paseo-home playwright test --project=real-provider","test:e2e:ui":"playwright test --ui",build:"npm run build:web","build:web":"npm --prefix ../.. run build:app-deps && expo export --platform web","profile:workspace-tabs":"node ./scripts/profile-workspace-tabs.mjs","deploy:web":"npm run build:web && wrangler pages deploy dist --project-name paseo-app --branch main","build:terminal-webview":"node ./scripts/build-terminal-webview-html.mjs"},dependencies:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@floating-ui/react-native":"^0.10.7","@getpaseo/client":"*","@getpaseo/expo-two-way-audio":"*","@getpaseo/highlight":"*","@getpaseo/protocol":"*","@gorhom/bottom-sheet":"^5.2.14","@gorhom/portal":"^1.0.14","@react-native-async-storage/async-storage":"2.2.0","@react-native-masked-view/masked-view":"^0.3.2","@react-native/normalize-colors":"^0.81.5","@react-navigation/native":"^7.1.8","@tanstack/react-query":"^5.90.11","@tanstack/react-virtual":"^3.13.21","@xterm/addon-clipboard":"^0.3.0-beta.213","@xterm/addon-fit":"^0.12.0-beta.213","@xterm/addon-image":"^0.10.0-beta.213","@xterm/addon-ligatures":"^0.11.0-beta.213","@xterm/addon-search":"^0.17.0-beta.213","@xterm/addon-unicode11":"^0.10.0-beta.213","@xterm/addon-web-links":"^0.13.0-beta.213","@xterm/addon-webgl":"^0.20.0-beta.212","@xterm/xterm":"^6.1.0-beta.213",buffer:"^6.0.3",expo:"^54.0.18","expo-asset":"~12.0.12","expo-audio":"~1.0.13","expo-build-properties":"^1.0.9","expo-camera":"~17.0.10","expo-clipboard":"~8.0.7","expo-constants":"~18.0.9","expo-crypto":"^15.0.8","expo-dev-client":"^6.0.15","expo-document-picker":"~14.0.8","expo-file-system":"~19.0.17","expo-haptics":"~15.0.7","expo-image":"~3.0.10","expo-image-manipulator":"~14.0.8","expo-image-picker":"^17.0.8","expo-keep-awake":"^15.0.7","expo-linking":"~8.0.8","expo-localization":"~17.0.9","expo-notifications":"^0.32.16","expo-router":"~6.0.13","expo-sharing":"^14.0.8","expo-splash-screen":"~31.0.10","expo-system-ui":"~6.0.7","expo-updates":"~29.0.12","fast-deep-equal":"^3.1.3",htmlparser2:"^12.0.0",i18next:"^26.3.0","lucide-react-native":"^0.546.0","markdown-it":"^10.0.0","mnemonic-id":"^3.2.7",qrcode:"^1.5.4",react:"19.1.0","react-dom":"19.1.0","react-i18next":"^17.0.8","react-native":"0.81.5","react-native-draggable-flatlist":"^4.0.3","react-native-edge-to-edge":"^1.7.0","react-native-gesture-handler":"~2.28.0","react-native-keyboard-controller":"^1.19.2","react-native-markdown-display":"^7.0.2","react-native-nitro-modules":"0.35.5","react-native-reanimated":"~4.3.1","react-native-safe-area-context":"~5.6.0","react-native-screens":"~4.16.0","react-native-svg":"^15.14.0","react-native-uitextview":"^2.2.0","react-native-unistyles":"^3.2.4","react-native-web":"~0.21.0","react-native-webview":"^13.16.0","react-native-worklets":"~0.8.3","tiny-invariant":"^1.3.3","use-sync-external-store":"^1.6.0",zod:"^4.4.3",zustand:"^5.0.9"},devDependencies:{"@playwright/test":"^1.56.1","@testing-library/dom":"^10.4.1","@testing-library/react":"^16.3.2","@types/markdown-it":"^14.1.2","@types/qrcode":"^1.5.6","@types/react":"~19.2.0","@types/ws":"^8.18.1","@vitest/browser":"^4.1.7","@vitest/browser-playwright":"^4.1.7","@xterm/headless":"^6.1.0-beta.213",dotenv:"^17.2.3","eas-cli":"^16.24.1",eslint:"^9.25.0","eslint-config-expo":"~10.0.0",jsdom:"^20.0.3","material-icon-theme":"^5.32.0",playwright:"^1.56.1","serve-sim":"^0.1.40",typescript:"~5.9.2",vitest:"^4.1.6",wrangler:"^4.105.0",ws:"^8.20.0"}}},3397,[]);
15042
+ __d(function(e,t,r,a,i,o,n){i.exports={name:"@getpaseo/app",version:"0.1.104-beta.2",private:!0,main:"index.ts",scripts:{start:"npm run start:expo","start:expo":"cross-env APP_VARIANT=development expo start","reset-project":"node ./scripts/reset-project.js","eas-build-post-install":"npm --prefix ../.. run build:app-deps && npm run build:terminal-webview",android:"npm run android:development","android:development":"npm --prefix ../.. run build:client && cross-env APP_VARIANT=development expo prebuild --platform android --non-interactive && cross-env APP_VARIANT=development expo run:android --variant=debug","android:production":"npm --prefix ../.. run build:client && cross-env APP_VARIANT=production expo prebuild --platform android --non-interactive && cross-env APP_VARIANT=production expo run:android --variant=release","android:release":"npm run android:production","android:clear":"node -e \"require('node:fs').rmSync('android', { recursive: true, force: true })\"",ios:"npm --prefix ../.. run build:client && expo run:ios","ios:release":"npm --prefix ../.. run build:client && expo run:ios --configuration Release",web:"npm --prefix ../.. run build:client && concurrently --kill-others --names protocol,client,expo --prefix-colors yellow,blue,magenta \"npm --prefix ../.. run watch:protocol\" \"npm --prefix ../.. run watch:client\" \"npm run web:expo\"","web:expo":"expo start --web",lint:"expo lint",typecheck:"tsgo --noEmit",test:"vitest run","test:browser":"vitest run --project browser","test:e2e":"playwright test --project='Desktop Chrome'","test:e2e:real":"cross-env E2E_FORK_PASEO_HOME_FROM=../../.dev/paseo-home playwright test --project=real-provider","test:e2e:ui":"playwright test --ui",build:"npm run build:web","build:web":"npm --prefix ../.. run build:app-deps && expo export --platform web","profile:workspace-tabs":"node ./scripts/profile-workspace-tabs.mjs","deploy:web":"npm run build:web && wrangler pages deploy dist --project-name paseo-app --branch main","build:terminal-webview":"node ./scripts/build-terminal-webview-html.mjs"},dependencies:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@floating-ui/react-native":"^0.10.7","@getpaseo/client":"*","@getpaseo/expo-two-way-audio":"*","@getpaseo/highlight":"*","@getpaseo/protocol":"*","@gorhom/bottom-sheet":"^5.2.14","@gorhom/portal":"^1.0.14","@react-native-async-storage/async-storage":"2.2.0","@react-native-masked-view/masked-view":"^0.3.2","@react-native/normalize-colors":"^0.81.5","@react-navigation/native":"^7.1.8","@tanstack/react-query":"^5.90.11","@tanstack/react-virtual":"^3.13.21","@xterm/addon-clipboard":"^0.3.0-beta.213","@xterm/addon-fit":"^0.12.0-beta.213","@xterm/addon-image":"^0.10.0-beta.213","@xterm/addon-ligatures":"^0.11.0-beta.213","@xterm/addon-search":"^0.17.0-beta.213","@xterm/addon-unicode11":"^0.10.0-beta.213","@xterm/addon-web-links":"^0.13.0-beta.213","@xterm/addon-webgl":"^0.20.0-beta.212","@xterm/xterm":"^6.1.0-beta.213",buffer:"^6.0.3",expo:"^54.0.18","expo-asset":"~12.0.12","expo-audio":"~1.0.13","expo-build-properties":"^1.0.9","expo-camera":"~17.0.10","expo-clipboard":"~8.0.7","expo-constants":"~18.0.9","expo-crypto":"^15.0.8","expo-dev-client":"^6.0.15","expo-document-picker":"~14.0.8","expo-file-system":"~19.0.17","expo-haptics":"~15.0.7","expo-image":"~3.0.10","expo-image-manipulator":"~14.0.8","expo-image-picker":"^17.0.8","expo-keep-awake":"^15.0.7","expo-linking":"~8.0.8","expo-localization":"~17.0.9","expo-notifications":"^0.32.16","expo-router":"~6.0.13","expo-sharing":"^14.0.8","expo-splash-screen":"~31.0.10","expo-system-ui":"~6.0.7","expo-updates":"~29.0.12","fast-deep-equal":"^3.1.3",htmlparser2:"^12.0.0",i18next:"^26.3.0","lucide-react-native":"^0.546.0","markdown-it":"^10.0.0","mnemonic-id":"^3.2.7",qrcode:"^1.5.4",react:"19.1.0","react-dom":"19.1.0","react-i18next":"^17.0.8","react-native":"0.81.5","react-native-draggable-flatlist":"^4.0.3","react-native-edge-to-edge":"^1.7.0","react-native-gesture-handler":"~2.28.0","react-native-keyboard-controller":"^1.19.2","react-native-markdown-display":"^7.0.2","react-native-nitro-modules":"0.35.5","react-native-reanimated":"~4.3.1","react-native-safe-area-context":"~5.6.0","react-native-screens":"~4.16.0","react-native-svg":"^15.14.0","react-native-uitextview":"^2.2.0","react-native-unistyles":"^3.2.4","react-native-web":"~0.21.0","react-native-webview":"^13.16.0","react-native-worklets":"~0.8.3","tiny-invariant":"^1.3.3","use-sync-external-store":"^1.6.0",zod:"^4.4.3",zustand:"^5.0.9"},devDependencies:{"@playwright/test":"^1.56.1","@testing-library/dom":"^10.4.1","@testing-library/react":"^16.3.2","@types/markdown-it":"^14.1.2","@types/qrcode":"^1.5.6","@types/react":"~19.2.0","@types/ws":"^8.18.1","@vitest/browser":"^4.1.7","@vitest/browser-playwright":"^4.1.7","@xterm/headless":"^6.1.0-beta.213",dotenv:"^17.2.3","eas-cli":"^16.24.1",eslint:"^9.25.0","eslint-config-expo":"~10.0.0",jsdom:"^20.0.3","material-icon-theme":"^5.32.0",playwright:"^1.56.1","serve-sim":"^0.1.40",typescript:"~5.9.2",vitest:"^4.1.6",wrangler:"^4.105.0",ws:"^8.20.0"}}},3397,[]);
15043
15043
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.shouldUseDesktopDaemon=function(){return(0,n.isElectronRuntime)()},e.getDesktopDaemonStatus=async function(){return c(await(0,t.invokeDesktopCommand)("desktop_daemon_status"))},e.startDesktopDaemon=async function(){return c(await(0,t.invokeDesktopCommand)("start_desktop_daemon"))},e.stopDesktopDaemon=async function(n="manual_ipc"){return c(await(0,t.invokeDesktopCommand)("stop_desktop_daemon",{reason:n}))},e.restartDesktopDaemon=async function(){return c(await(0,t.invokeDesktopCommand)("restart_desktop_daemon"))},e.getDesktopDaemonLogs=async function(){return p(await(0,t.invokeDesktopCommand)("desktop_daemon_logs"))},e.getDesktopDaemonPairing=async function(){return k(await(0,t.invokeDesktopCommand)("desktop_daemon_pairing"))},e.getCliDaemonStatus=async function(){const n=await(0,t.invokeDesktopCommand)("cli_daemon_status");if("string"!=typeof n)throw new Error("Unexpected CLI daemon status response.");return n},e.listenToLocalTransportEvents=async function(t){const u=(0,n.getDesktopHost)()?.events?.on;if("function"!=typeof u)throw new Error("Desktop events API is unavailable.");const c=await u("local-daemon-transport-event",n=>{o(n)&&t({sessionId:s(n.sessionId)??"",kind:s(n.kind)??"error",text:s(n.text),binaryBase64:s(n.binaryBase64),code:l(n.code),reason:s(n.reason),error:s(n.error)})});return"function"==typeof c?c:()=>{}},e.openLocalTransportSession=async function(n){const o=await(0,t.invokeDesktopCommand)("open_local_daemon_transport",n);if("string"!=typeof o||0===o.trim().length)throw new Error("Unexpected local transport session response.");return o},e.sendLocalTransportMessage=async function(n){await(0,t.invokeDesktopCommand)("send_local_daemon_transport_message",Object.assign({sessionId:n.sessionId},n.text?{text:n.text}:{},n.binaryBase64?{binaryBase64:n.binaryBase64}:{}))},e.closeLocalTransportSession=async function(n){await(0,t.invokeDesktopCommand)("close_local_daemon_transport",{sessionId:n})},e.getCliInstallStatus=async function(){return f(await(0,t.invokeDesktopCommand)("get_cli_install_status"))},e.installCli=async function(){return f(await(0,t.invokeDesktopCommand)("install_cli"))},e.getSkillsStatus=async function(){return y(await(0,t.invokeDesktopCommand)("get_skills_status"))},e.installSkills=async function(){return y(await(0,t.invokeDesktopCommand)("install_skills"))},e.updateSkills=async function(){return y(await(0,t.invokeDesktopCommand)("update_skills"))},e.uninstallSkills=async function(){return y(await(0,t.invokeDesktopCommand)("uninstall_skills"))};var n=r(d[0]),t=r(d[1]);function o(n){return"object"==typeof n&&null!==n}function s(n){return"string"==typeof n&&n.trim().length>0?n:null}function l(n){return"number"==typeof n&&Number.isFinite(n)?n:null}function u(n){const t=s(n)?.toLowerCase();switch(t){case"starting":return"starting";case"running":return"running";case"errored":case"error":return"errored";default:return"stopped"}}function c(n){if(!o(n))throw new Error("Unexpected desktop daemon status response.");return{serverId:s(n.serverId)??"",status:u(n.status),listen:s(n.listen),hostname:s(n.hostname),pid:l(n.pid),home:s(n.home)??"",version:s(n.version),desktopManaged:!0===n.desktopManaged,error:s(n.error)}}function p(n){if(!o(n))throw new Error("Unexpected desktop daemon logs response.");return{logPath:s(n.logPath)??"",contents:"string"==typeof n.contents?n.contents:""}}function k(n){if(!o(n))throw new Error("Unexpected desktop daemon pairing response.");return{relayEnabled:!0===n.relayEnabled,url:s(n.url),qr:s(n.qr)}}function f(n){if(!o(n))throw new Error("Unexpected install status response.");return{installed:!0===n.installed}}function w(n){switch(n){case"not-installed":case"up-to-date":case"drift":return n;default:throw new Error(`Unexpected skills status state: ${String(n)}`)}}function _(n){if(!o(n))throw new Error("Unexpected skill op response.");const t=s(n.name);if(!t)throw new Error("Skill op missing name.");switch(n.kind){case"add":return{kind:"add",name:t};case"update":return{kind:"update",name:t};case"delete":return{kind:"delete",name:t};default:throw new Error(`Unexpected skill op kind: ${String(n.kind)}`)}}function y(n){if(!o(n))throw new Error("Unexpected skills status response.");const t=Array.isArray(n.ops)?n.ops.map(_):[];return{state:w(n.state),ops:t}}},3398,[3399,3401]);
15044
15044
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.getDesktopHost=n,e.isElectronRuntime=o,e.isElectronRuntimeMac=function(){if(!o())return!1;if("undefined"==typeof navigator)return!1;const t=n()?.platform?.toLowerCase();if("darwin"===t||"mac"===t||"macos"===t)return!0;const u=navigator.userAgent;return u.includes("Mac OS")||u.includes("Macintosh")},r(d[0]);var t=r(d[1]);function n(){return(0,t.getElectronHost)()}function o(){return null!==n()}},3399,[25,3400]);
15045
15045
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.getElectronHost=function(){if("undefined"==typeof window)return null;const t=window.paseoDesktop;if(!t||"object"!=typeof t)return null;return t}},3400,[]);
@@ -15060,8 +15060,8 @@ __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{v
15060
15060
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.checkoutStatusQueryKey=n,e.checkoutDiffQueryKey=function(t,n,u,c,o){return["checkoutDiff",t,n,u,c??"",!0===o]},e.checkoutPrStatusQueryKey=function(t,n){return["checkoutPrStatus",t,n]},e.invalidateCheckoutGitQueriesForClient=async function(c,o){await Promise.all([c.invalidateQueries({queryKey:n(o.serverId,o.cwd)}),c.invalidateQueries({predicate:u("checkoutDiff",o)}),c.invalidateQueries({predicate:u("checkoutPrStatus",o)}),c.invalidateQueries({predicate:u(t.prPaneTimelineQueryKind,o)})])},e.invalidateCheckoutGitQueriesForServer=async function(n,c){const o=["checkoutStatus","checkoutPrStatus",t.prPaneTimelineQueryKind];await Promise.all(o.map(t=>n.invalidateQueries({predicate:u(t,{serverId:c})})))},e.invalidatePrPaneTimelineForCheckout=async function(n,c){await n.invalidateQueries({predicate:u(t.prPaneTimelineQueryKind,c)})};var t=r(d[0]);function n(t,n){return["checkoutStatus",t,n]}function u(t,n){return u=>{const o=u.queryKey;return c(o)&&o[0]===t&&o[1]===n.serverId&&(void 0===n.cwd||o[2]===n.cwd)}}function c(t){return t.length>=3&&"string"==typeof t[0]&&"string"==typeof t[1]&&"string"==typeof t[2]}},3415,[3416]);
15061
15061
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"prPaneTimelineQueryKind",{enumerable:!0,get:function(){return n}}),e.prPaneTimelineQueryKey=function({serverId:t,cwd:u,prNumber:c}){return[n,t,u,c]};const n="prPaneTimeline"},3416,[]);
15062
15062
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"queryClient",{enumerable:!0,get:function(){return t}});const t=new(r(d[0]).QueryClient)({defaultOptions:{queries:{staleTime:1/0,gcTime:1/0,refetchOnMount:!1,refetchOnReconnect:!1,refetchOnWindowFocus:!1}}})},3417,[915]);
15063
- __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.mountBrowserAutomationHandler=u,e.mountBrowserAutomationDaemonClientHandler=function(t,s){return u(Object.assign({client:t},s?.serverId?{serverId:s.serverId}:{}))};var t=r(d[0]),s=r(d[1]),o=r(d[2]),n=r(d[3]);function u(o){const n=o.getHost??t.getDesktopHost,u=(0,s.installResidentBrowserCaptureBridge)(),w=o.client.on("browser.automation.execute.request",t=>{c(Object.assign({client:o.client,getHost:n,request:t,serverId:o.serverId,ensureResidentBrowserWebview:o.ensureResidentBrowserWebview??s.ensureResidentBrowserWebview},void 0!==o.registrationWaitTimeoutMs?{registrationWaitTimeoutMs:o.registrationWaitTimeoutMs}:{},void 0!==o.registrationPollIntervalMs?{registrationPollIntervalMs:o.registrationPollIntervalMs}:{}))});return()=>{w(),u()}}async function c(t){const{client:s,getHost:o,request:n,serverId:u,ensureResidentBrowserWebview:c,registrationWaitTimeoutMs:l,registrationPollIntervalMs:b}=t,y=o()?.browser,q=y?.executeAutomationCommand;if("new_tab"!==n.command.command)if(q)try{const t=await q(n);s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:p(n.requestId,t)})}catch(t){s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:I(n.requestId,t)})}else s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:v({requestId:n.requestId,code:"browser_unsupported",message:"Desktop browser automation is not available in this app runtime."})});else try{s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:await w(Object.assign({request:n,serverId:u,browserHost:y,ensureResidentBrowserWebview:c},void 0!==l?{registrationWaitTimeoutMs:l}:{},void 0!==b?{registrationPollIntervalMs:b}:{}))})}catch(t){s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:I(n.requestId,t)})}}async function w(t){const{request:s,serverId:u,browserHost:c,ensureResidentBrowserWebview:w,registrationWaitTimeoutMs:b,registrationPollIntervalMs:p}=t,I=s.command,y=s.workspaceId;if(!u||!y)return v({requestId:s.requestId,code:"browser_unsupported",message:"Cannot create a browser tab without a workspace context."});const q=I.args.url??"https://example.com",{browserId:f,url:k}=(0,o.createWorkspaceBrowser)({initialUrl:q}),x=(0,n.buildWorkspaceTabPersistenceKey)({serverId:u,workspaceId:y});if(!x)return v({requestId:s.requestId,code:"browser_unsupported",message:"Cannot create a browser tab without a workspace context."});if(n.useWorkspaceLayoutStore.getState().openTabFocused(x,{kind:"browser",browserId:f}),await(c?.registerWorkspaceBrowser?.({browserId:f,workspaceId:y})),await(c?.setWorkspaceActiveBrowser?.({browserId:f,workspaceId:y})),c?.executeAutomationCommand){w({browserId:f,url:k});if(!await l(Object.assign({request:s,browserId:f,workspaceId:y,executeAutomationCommand:c.executeAutomationCommand},void 0!==b?{timeoutMs:b}:{},void 0!==p?{pollIntervalMs:p}:{})))return v({requestId:s.requestId,code:"browser_timeout",message:`Timed out waiting for browser tab ${f} to register with desktop automation. Try browser_new_tab again.`,retryable:!0})}return{requestId:s.requestId,ok:!0,result:{command:"new_tab",browserId:f,workspaceId:y,url:k}}}async function l(t){const s=Date.now()+(t.timeoutMs??5e3);for(;Date.now()<s;){const s=await t.executeAutomationCommand({type:"browser.automation.execute.request",requestId:`${t.request.requestId}:list_tabs`,agentId:t.request.agentId,cwd:t.request.cwd,workspaceId:t.workspaceId,command:{command:"list_tabs",args:{}}});if(s.ok&&"list_tabs"===s.result.command&&s.result.tabs.some(s=>s.browserId===t.browserId))return!0;await b(t.pollIntervalMs??100)}return!1}function b(t){return new Promise(s=>setTimeout(s,t))}function p(t,s){return Object.assign({},s,{requestId:t})}function I(t,s){const o=y(s);if(o)return v(Object.assign({requestId:t},o));const n=s instanceof Error?s.message:String(s);return n.includes("No handler registered")?v({requestId:t,code:"browser_unsupported",message:"Desktop browser automation is not implemented by this desktop build yet."}):v({requestId:t,code:"browser_unknown_error",message:n||"Desktop browser automation failed."})}function y(t){if("object"!=typeof t||null===t||Array.isArray(t))return null;const s=t;return"string"==typeof s.code&&s.code.startsWith("browser_")?"string"!=typeof s.message||0===s.message.length?null:Object.assign({code:s.code,message:s.message},"boolean"==typeof s.retryable?{retryable:s.retryable}:{}):null}function v(t){return{requestId:t.requestId,ok:!1,error:{code:t.code,message:t.message,retryable:t.retryable??!1}}}},3418,[3399,3419,3420,3422]);
15064
- __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.prepareBrowserWebview=z,e.ensureResidentBrowserWebview=function(t){const o=y(t.browserId);if(!o)return null;const s=b();if(!s)return null;const l=u.get(o)??null;if(l?.isConnected)return l;const c=B(o,s);if(c)return c.parentElement?.id===n&&u.set(o,c),c;const f=s.createElement("webview");return z(f,{browserId:o,initialUrl:t.url}),F(o,f),f},e.takeResidentBrowserWebview=function(t){const n=y(t);if(!n)return null;const o=u.get(n)??null;if(!o)return null;return u.delete(n),k(n),R(o),o},e.releaseResidentBrowserWebview=F,e.prepareResidentBrowserWebviewForPixelCapture=L,e.restoreResidentBrowserWebviewAfterPixelCapture=_,e.cancelResidentBrowserWebviewPixelCapture=U,e.installResidentBrowserCaptureBridge=function(){if(f+=1,!p){const n=(0,t.getDesktopHost)()?.browser,o=n?.onPrepareForPixelCapture?.(L),s=n?.onRestorePixelCapture?.(_),l=n?.onCancelPixelCapture?.(U);p=()=>{o?.(),s?.(),l?.()}}return()=>{f=Math.max(0,f-1),f>0||(p?.(),p=null,T())}},e.removeResidentBrowserWebview=function(t){const n=y(t);if(!n)return;const o=u.get(n)??null;u.delete(n),k(n),o?.remove()},e.clearResidentBrowserWebviewsForTests=function(){for(const t of u.values())t.remove();u.clear(),T(),w=0,b()?.getElementById(n)?.remove()};var t=r(d[0]);const n="paseo-browser-resident-webviews",o="data-paseo-browser-id",s=1280,l=800,u=new Map,c=new Map;let f=0,p=null,w=0;function y(t){if("string"!=typeof t)return null;const n=t.trim();return n.length>0?n:null}function b(){return"undefined"==typeof document?null:document}function v(t){t.setAttribute("aria-hidden","true"),t.style.position="fixed",t.style.left="-20000px",t.style.top="0",t.style.width=`${s}px`,t.style.height=`${l}px`,t.style.overflow="hidden",t.style.opacity="0",t.style.pointerEvents="none",t.style.zIndex="",t.style.clipPath="",t.style.visibility="",t.style.transform=""}function h(t){t.setAttribute("aria-hidden","true"),t.style.position="fixed",t.style.left="0",t.style.top="0",t.style.width="1px",t.style.height="1px",t.style.overflow="hidden",t.style.opacity="1",t.style.pointerEvents="none",t.style.zIndex="1",t.style.clipPath="",t.style.visibility="",t.style.transform=""}function x(t){const o=t.getElementById(n);if(o)return o;const s=t.createElement("div");return s.id=n,v(s),t.body.appendChild(s),s}function B(t,n){for(const s of n.querySelectorAll(`[${o}]`))if(s instanceof HTMLElement&&s.getAttribute(o)===t)return s;return null}function I(t,n){const o=u.get(t)??null;return o?.isConnected?o:B(t,n)}function E(t){t.style.display="inline-flex",t.style.flex="0 0 auto",t.style.width=`${s}px`,t.style.height=`${l}px`,t.style.border="0",t.style.background="transparent",t.style.position="absolute",t.style.left="0",t.style.top="0",t.style.marginTop="0",t.style.zIndex="0"}function R(t){t.style.position="",t.style.left="",t.style.top="",t.style.marginTop="",t.style.zIndex=""}function A(t){const n=[];for(const s of t.querySelectorAll(`[${o}]`))s instanceof HTMLElement&&n.push(s);return n}function C(t,n){for(const n of A(t))E(n);E(n),n.style.zIndex="2"}function P(){return"function"!=typeof requestAnimationFrame?Promise.resolve():new Promise(t=>{requestAnimationFrame(()=>{t()})})}async function q(t){await P(),await P(),t.getBoundingClientRect()}function W(t){const n=y(t.token);if(n&&c.has(n))return n;const o=y(t.requestId);if(!o)return null;for(const[t,n]of c.entries())if(n.requestId===o)return t;return null}function H(){let t=null;for(const n of c.values())n.preparesResidentHost&&(t=n);return t}function M(){const t=b()?.getElementById(n);if(!(t instanceof HTMLElement))return;const o=H();if(o)return h(t),void C(t,o.webview);v(t);for(const n of A(t))E(n)}function $(t){const o=c.get(t);if(o&&(c.delete(t),o.preparesResidentHost)){const t=b()?.getElementById(n);t instanceof HTMLElement&&o.webview.parentElement===t&&E(o.webview),M()}}function k(t){for(const[n,o]of c.entries())o.browserId===t&&c.delete(n);M()}function T(){c.clear(),M()}function z(t,n){t.setAttribute(o,n.browserId),t.setAttribute("partition",`persist:paseo-browser-${n.browserId}`),t.setAttribute("allowpopups","true"),t.setAttribute("spellcheck","false"),t.setAttribute("autosize","on"),n.initialUrl&&(t.src=n.initialUrl)}function F(t,n){const o=y(t);if(!o)return void n.remove();const s=b();s&&(u.set(o,n),E(n),x(s).appendChild(n))}async function L(t){const n=y(t.browserId);if(!n)throw new Error("Browser id is required for pixel capture preparation.");const o=b();if(!o)throw new Error("Browser pixel capture preparation requires a document.");const s=x(o),l=I(n,o);if(!l)throw new Error(`Browser webview ${n} is not mounted.`);const u="capture-"+ ++w,f=l.parentElement===s,p=y(t.requestId);c.set(u,Object.assign({browserId:n},p?{requestId:p}:{},{preparesResidentHost:f,webview:l}));try{if(f&&(h(s),C(s,l)),await q(l),!c.has(u))throw new Error("Browser pixel capture preparation was canceled.");return{token:u}}catch(t){throw $(u),t}}async function _(t){$(t.token)}async function U(t){const n=W(t);n&&$(n)}},3419,[3399]);
15063
+ __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.mountBrowserAutomationHandler=u,e.mountBrowserAutomationDaemonClientHandler=function(t,s){return u(Object.assign({client:t},s?.serverId?{serverId:s.serverId}:{}))};var t=r(d[0]),s=r(d[1]),o=r(d[2]),n=r(d[3]);function u(o){const n=o.getHost??t.getDesktopHost,u=o.client.on("browser.automation.execute.request",t=>{c(Object.assign({client:o.client,getHost:n,request:t,serverId:o.serverId,ensureResidentBrowserWebview:o.ensureResidentBrowserWebview??s.ensureResidentBrowserWebview},void 0!==o.registrationWaitTimeoutMs?{registrationWaitTimeoutMs:o.registrationWaitTimeoutMs}:{},void 0!==o.registrationPollIntervalMs?{registrationPollIntervalMs:o.registrationPollIntervalMs}:{}))});return()=>{u()}}async function c(t){const{client:s,getHost:o,request:n,serverId:u,ensureResidentBrowserWebview:c,registrationWaitTimeoutMs:l,registrationPollIntervalMs:b}=t,y=o()?.browser,q=y?.executeAutomationCommand;if("new_tab"!==n.command.command)if(q)try{const t=await q(n);s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:p(n.requestId,t)})}catch(t){s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:I(n.requestId,t)})}else s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:v({requestId:n.requestId,code:"browser_unsupported",message:"Desktop browser automation is not available in this app runtime."})});else try{s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:await w(Object.assign({request:n,serverId:u,browserHost:y,ensureResidentBrowserWebview:c},void 0!==l?{registrationWaitTimeoutMs:l}:{},void 0!==b?{registrationPollIntervalMs:b}:{}))})}catch(t){s.sendBrowserAutomationExecuteResponse({type:"browser.automation.execute.response",payload:I(n.requestId,t)})}}async function w(t){const{request:s,serverId:u,browserHost:c,ensureResidentBrowserWebview:w,registrationWaitTimeoutMs:b,registrationPollIntervalMs:p}=t,I=s.command,y=s.workspaceId;if(!u||!y)return v({requestId:s.requestId,code:"browser_unsupported",message:"Cannot create a browser tab without a workspace context."});const q=I.args.url??"https://example.com",{browserId:f,url:k}=(0,o.createWorkspaceBrowser)({initialUrl:q}),x=(0,n.buildWorkspaceTabPersistenceKey)({serverId:u,workspaceId:y});if(!x)return v({requestId:s.requestId,code:"browser_unsupported",message:"Cannot create a browser tab without a workspace context."});if(n.useWorkspaceLayoutStore.getState().openTabFocused(x,{kind:"browser",browserId:f}),await(c?.registerWorkspaceBrowser?.({browserId:f,workspaceId:y})),await(c?.setWorkspaceActiveBrowser?.({browserId:f,workspaceId:y})),c?.executeAutomationCommand){w({browserId:f,url:k});if(!await l(Object.assign({request:s,browserId:f,workspaceId:y,executeAutomationCommand:c.executeAutomationCommand},void 0!==b?{timeoutMs:b}:{},void 0!==p?{pollIntervalMs:p}:{})))return v({requestId:s.requestId,code:"browser_timeout",message:`Timed out waiting for browser tab ${f} to register with desktop automation. Try browser_new_tab again.`,retryable:!0})}return{requestId:s.requestId,ok:!0,result:{command:"new_tab",browserId:f,workspaceId:y,url:k}}}async function l(t){const s=Date.now()+(t.timeoutMs??5e3);for(;Date.now()<s;){const s=await t.executeAutomationCommand({type:"browser.automation.execute.request",requestId:`${t.request.requestId}:list_tabs`,agentId:t.request.agentId,cwd:t.request.cwd,workspaceId:t.workspaceId,command:{command:"list_tabs",args:{}}});if(s.ok&&"list_tabs"===s.result.command&&s.result.tabs.some(s=>s.browserId===t.browserId))return!0;await b(t.pollIntervalMs??100)}return!1}function b(t){return new Promise(s=>setTimeout(s,t))}function p(t,s){return Object.assign({},s,{requestId:t})}function I(t,s){const o=y(s);if(o)return v(Object.assign({requestId:t},o));const n=s instanceof Error?s.message:String(s);return n.includes("No handler registered")?v({requestId:t,code:"browser_unsupported",message:"Desktop browser automation is not implemented by this desktop build yet."}):v({requestId:t,code:"browser_unknown_error",message:n||"Desktop browser automation failed."})}function y(t){if("object"!=typeof t||null===t||Array.isArray(t))return null;const s=t;return"string"==typeof s.code&&s.code.startsWith("browser_")?"string"!=typeof s.message||0===s.message.length?null:Object.assign({code:s.code,message:s.message},"boolean"==typeof s.retryable?{retryable:s.retryable}:{}):null}function v(t){return{requestId:t.requestId,ok:!1,error:{code:t.code,message:t.message,retryable:t.retryable??!1}}}},3418,[3399,3419,3420,3422]);
15064
+ __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.prepareBrowserWebview=v,e.ensureResidentBrowserWebview=function(n){const s=u(n.browserId);if(!s)return null;const l=c();if(!l)return null;const f=o.get(s)??null;if(f?.isConnected)return h(s,f),f;const y=p(s,l);if(y)return y.parentElement?.id===t&&h(s,y),y;const b=l.createElement("webview");return v(b,{browserId:s,initialUrl:n.url}),h(s,b),b},e.takeResidentBrowserWebview=function(t){const n=u(t);if(!n)return null;const s=o.get(n)??null;if(!s)return null;return o.delete(n),w(s),s},e.releaseResidentBrowserWebview=h,e.removeResidentBrowserWebview=function(t){const n=u(t);if(!n)return;const s=o.get(n)??null;o.delete(n),s?.remove()},e.clearResidentBrowserWebviewsForTests=function(){for(const t of o.values())t.remove();o.clear(),c()?.getElementById(t)?.remove()};const t="paseo-browser-resident-webviews",n="data-paseo-browser-id",s=1280,l=800,o=new Map;function u(t){if("string"!=typeof t)return null;const n=t.trim();return n.length>0?n:null}function c(){return"undefined"==typeof document?null:document}function f(t){t.setAttribute("aria-hidden","true"),t.style.position="fixed",t.style.left="0",t.style.top="0",t.style.width="1px",t.style.height="1px",t.style.overflow="hidden",t.style.opacity="1",t.style.pointerEvents="none",t.style.display="block",t.style.zIndex="",t.style.clipPath="",t.style.visibility="visible",t.style.transform=""}function y(n){const s=n.getElementById(t);if(s)return f(s),s;const l=n.createElement("div");return l.id=t,f(l),n.body.appendChild(l),l}function p(t,s){for(const l of s.querySelectorAll(`[${n}]`))if(l instanceof HTMLElement&&l.getAttribute(n)===t)return l;return null}function b(t){t.style.display="inline-flex",t.style.flex="0 0 auto",t.style.width=`${s}px`,t.style.height=`${l}px`,t.style.border="0",t.style.background="transparent",t.style.position="absolute",t.style.left="0",t.style.top="0",t.style.marginTop="0",t.style.zIndex="0"}function w(t){t.style.position="",t.style.left="",t.style.top="",t.style.marginTop="",t.style.zIndex=""}function v(t,s){t.setAttribute(n,s.browserId),t.setAttribute("partition",`persist:paseo-browser-${s.browserId}`),t.setAttribute("allowpopups","true"),t.setAttribute("spellcheck","false"),t.setAttribute("autosize","on"),s.initialUrl&&(t.src=s.initialUrl)}function h(t,n){const s=u(t);if(!s)return void n.remove();const l=c();l&&(o.set(s,n),b(n),y(l).appendChild(n))}},3419,[]);
15065
15065
  __d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),Object.defineProperty(_e,"useBrowserStore",{enumerable:!0,get:function(){return w}}),_e.getBrowserRecord=B,_e.createWorkspaceBrowser=function(e){const o=w.getState().createBrowser(e),t=B(o);return{browserId:o,url:t?.url??(0,c.normalizeBrowserUrl)(e?.initialUrl)}},_e.normalizeWorkspaceBrowserUrl=function(e){return(0,c.normalizeBrowserUrl)(e)};var e,o=r(d[0]),t=(e=o)&&e.__esModule?e:{default:e},s=r(d[1]),n=r(d[2]),l=r(d[3]),c=r(d[4]);function u(){let e;if("function"==typeof globalThis.crypto?.randomUUID)e=globalThis.crypto.randomUUID();else{const o=Math.random().toString(16).slice(2)||"0";e=`${Date.now()}-${o}`}return s.BrowserAutomationBrowserIdSchema.parse(e)}const w=(0,n.create)()((0,l.persist)(e=>({browsersById:{},createBrowser:o=>{const t=u(),s=(0,c.createBrowserRecord)({browserId:t,initialUrl:o?.initialUrl,now:Date.now()});return e(e=>({browsersById:Object.assign({},e.browsersById,{[t]:s})})),t},updateBrowser:(o,t)=>{e(e=>(0,c.applyBrowserPatch)(e,o,t))},removeBrowser:o=>{e(e=>(0,c.removeBrowserFromIndex)(e,o))}}),{name:"workspace-browser-store",storage:(0,l.createJSONStorage)(()=>t.default),partialize:e=>(0,c.sanitizeBrowsersForPersist)(e)}));function B(e){const o=(0,c.trimNonEmpty)(e);return o?w.getState().browsersById[o]??null:null}},3420,[3352,3372,3255,3264,3421]);
15066
15066
  __d(function(g,r,i,a,m,e,d){"use strict";function t(t){if("string"!=typeof t)return null;const n=t.trim();return n.length>0?n:null}function n(n){const s=t(n);return s?/^(localhost|\d{1,3}(?:\.\d{1,3}){3}|\[[\da-fA-F:.]+])(?::\d+)?(?:[/?#]|$)/.test(s)?`http://${s}`:/^[a-zA-Z][a-zA-Z\d+.-]*:/.test(s)?s:s.startsWith("//")?`https:${s}`:`https://${s}`:"https://example.com"}Object.defineProperty(e,'__esModule',{value:!0}),e.trimNonEmpty=t,e.normalizeBrowserUrl=n,e.createBrowserRecord=function(t){return{browserId:t.browserId,url:n(t.initialUrl),title:"",isLoading:!1,canGoBack:!1,canGoForward:!1,faviconUrl:null,lastError:null,createdAt:t.now}},e.applyBrowserPatch=function(s,o,c){const l=t(o);if(!l)return s;const u=s.browsersById[l];if(!u)return s;const f=Object.assign({},u,c,{url:n(c.url??u.url)});if(f.url===u.url&&f.title===u.title&&f.isLoading===u.isLoading&&f.canGoBack===u.canGoBack&&f.canGoForward===u.canGoForward&&f.faviconUrl===u.faviconUrl&&f.lastError===u.lastError)return s;return Object.assign({},s,{browsersById:Object.assign({},s.browsersById,{[l]:f})})},e.removeBrowserFromIndex=function(n,s){const o=t(s);if(!o)return n;if(!n.browsersById[o])return n;const c=Object.assign({},n.browsersById);return delete c[o],Object.assign({},n,{browsersById:c})},e.sanitizeBrowsersForPersist=function(t){return{browsersById:Object.fromEntries(Object.entries(t.browsersById).map(([t,n])=>[t,Object.assign({},n,{isLoading:!1,lastError:null})]))}}},3421,[]);
15067
15067
  __d(function(g,_r,_i,a,m,_e,d){"use strict";function e(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(_e,'__esModule',{value:!0}),Object.defineProperty(_e,"buildWorkspaceTabPersistenceKey",{enumerable:!0,get:function(){return u.buildWorkspaceTabPersistenceKey}}),Object.defineProperty(_e,"collectAllPanes",{enumerable:!0,get:function(){return y.collectAllPanes}}),Object.defineProperty(_e,"collectAllTabs",{enumerable:!0,get:function(){return y.collectAllTabs}}),Object.defineProperty(_e,"createDefaultLayout",{enumerable:!0,get:function(){return y.createDefaultLayout}}),Object.defineProperty(_e,"findPaneById",{enumerable:!0,get:function(){return y.findPaneById}}),Object.defineProperty(_e,"findPaneContainingTab",{enumerable:!0,get:function(){return y.findPaneContainingTab}}),Object.defineProperty(_e,"getFocusedBrowserId",{enumerable:!0,get:function(){return y.getFocusedBrowserId}}),Object.defineProperty(_e,"getTreeDepth",{enumerable:!0,get:function(){return y.getTreeDepth}}),Object.defineProperty(_e,"insertSplit",{enumerable:!0,get:function(){return y.insertSplit}}),Object.defineProperty(_e,"normalizeLayout",{enumerable:!0,get:function(){return y.normalizeLayout}}),Object.defineProperty(_e,"removePaneFromTree",{enumerable:!0,get:function(){return y.removePaneFromTree}}),Object.defineProperty(_e,"removeTabFromTree",{enumerable:!0,get:function(){return y.removeTabFromTree}}),_e.createWorkspaceLayoutStore=P,Object.defineProperty(_e,"useWorkspaceLayoutStore",{enumerable:!0,get:function(){return O}}),_e.useWorkspaceLayoutStoreHydrated=function(){const e=(0,n.c)(2),[t,o]=(0,r.useState)(A);let s,c;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=()=>{if(!O.persist.hasHydrated())return O.persist.onFinishHydration(()=>{o(!0)});o(!0)},c=[],e[0]=s,e[1]=c):(s=e[0],c=e[1]);return(0,r.useEffect)(s,c),t};var t=e(_r(d[0])),n=_r(d[1]),o=e(_r(d[2])),r=_r(d[3]),s=_r(d[4]),c=_r(d[5]),u=_r(d[6]),i=_r(d[7]),y=_r(d[8]),l=_r(d[9]);function p(e){var t=k(e,"string");return"symbol"==typeof t?t:t+""}function k(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!=typeof o)return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}const b=4;function W(e){if("string"!=typeof e)return null;const t=e.trim();return t.length>0?t:null}function B(e,t,n){const o=e[t]??null;if(o?.has(n))return e;const r=new Set(o??[]);return r.add(n),Object.assign({},e,{[t]:r})}function f(e,t,n){const o=e[t]??null;if(!o?.has(n))return e;if(1===o.size){const n=Object.assign({},e);return delete n[t],n}const r=new Set(o);return r.delete(n),Object.assign({},e,{[t]:r})}function I(e,t){return(0,y.normalizeLayout)(e[t]??(0,y.createDefaultLayout)())}function T(e,n){if(!(n in e.focusRestorationByWorkspace))return null;const o=e.focusRestorationByWorkspace;return{focusRestorationByWorkspace:(0,t.default)(o,[n].map(p))}}function j(e){const t=W(e.childTabId),n=W(e.parentTabId);if(!t||!n||t===n)return(0,y.normalizeLayout)(e.layout);const o=new Set((0,y.collectAllTabs)(e.layout.root).map(e=>e.tabId));return o.has(t)&&o.has(n)?(0,y.normalizeLayout)(Object.assign({},e.layout,{parentTabIdByTabId:Object.assign({},e.layout.parentTabIdByTabId,{[t]:n})})):(0,y.normalizeLayout)(e.layout)}function P(e=i.defaultWorkspaceLayoutIds){return(0,s.create)()((0,c.persist)((n,o)=>({layoutByWorkspace:{},splitSizesByWorkspace:{},pinnedAgentIdsByWorkspace:{},hiddenAgentIdsByWorkspace:{},focusRestorationByWorkspace:{},openTabFocused:(e,t)=>{const r=W(e),s=(0,l.normalizeWorkspaceTabTarget)(t);if(!r||!s)return null;const c=(0,y.openTabInLayoutFocused)({layout:I(o().layoutByWorkspace,r),target:s,now:Date.now()});return n(e=>Object.assign({},T(e,r),{hiddenAgentIdsByWorkspace:"agent"!==s.kind?e.hiddenAgentIdsByWorkspace:f(e.hiddenAgentIdsByWorkspace,r,s.agentId),layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[r]:c.layout})})),c.tabId},openChildTabFocused:(e,t,r)=>{const s=W(e),c=W(r),u=(0,l.normalizeWorkspaceTabTarget)(t);if(!s||!c||!u)return null;const i=(0,y.openTabInLayoutFocused)({layout:I(o().layoutByWorkspace,s),target:u,now:Date.now()});return n(e=>{const t=j({layout:i.layout,childTabId:i.tabId,parentTabId:c});return Object.assign({},T(e,s),{hiddenAgentIdsByWorkspace:"agent"!==u.kind?e.hiddenAgentIdsByWorkspace:f(e.hiddenAgentIdsByWorkspace,s,u.agentId),layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[s]:t})})}),i.tabId},openTabInBackground:(e,t)=>{const r=W(e),s=(0,l.normalizeWorkspaceTabTarget)(t);if(!r||!s)return null;const c=(0,y.openTabInLayoutBackground)({layout:I(o().layoutByWorkspace,r),target:s,now:Date.now()});return n(e=>({hiddenAgentIdsByWorkspace:"agent"!==s.kind?e.hiddenAgentIdsByWorkspace:f(e.hiddenAgentIdsByWorkspace,r,s.agentId),layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[r]:c.layout})})),c.tabId},closeTab:(e,t)=>{const o=W(e),r=W(t);o&&r&&n(e=>{const t=(0,y.closeTabInLayout)({layout:I(e.layoutByWorkspace,o),tabId:r});return t?Object.assign({},T(e,o),{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[o]:t})}):e})},focusTab:(e,t)=>{const o=W(e),r=W(t);o&&r&&n(e=>{const t=(0,y.focusTabInLayout)({layout:I(e.layoutByWorkspace,o),tabId:r});return t?Object.assign({},T(e,o),{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[o]:t})}):e})},retargetTab:(e,t,r)=>{const s=W(e),c=W(t),u=(0,l.normalizeWorkspaceTabTarget)(r);if(!s||!c||!u)return null;const i=(0,y.retargetTabInLayout)({layout:I(o().layoutByWorkspace,s),tabId:c,target:u});return i?(n(e=>Object.assign({},null!==i.layout.focusedPaneId?T(e,s)??{}:{},{hiddenAgentIdsByWorkspace:"agent"!==u.kind?e.hiddenAgentIdsByWorkspace:f(e.hiddenAgentIdsByWorkspace,s,u.agentId),layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[s]:i.layout})})),i.tabId):null},convertDraftToAgent:(e,t,r)=>{const s=W(e),c=W(t),u=W(r);if(!s||!c||!u)return null;const i=(0,y.convertDraftToAgentInLayout)({layout:I(o().layoutByWorkspace,s),tabId:c,agentId:u});return i?(n(e=>Object.assign({},null!==i.layout.focusedPaneId?T(e,s)??{}:{},{hiddenAgentIdsByWorkspace:f(e.hiddenAgentIdsByWorkspace,s,u),layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[s]:i.layout})})),i.tabId):null},reconcileTabs:(e,t)=>{const o=W(e);o&&n(e=>{const n=I(e.layoutByWorkspace,o),r=(0,y.reconcileWorkspaceTabs)({layout:n,pinnedAgentIds:e.pinnedAgentIdsByWorkspace[o]??null,hiddenAgentIds:e.hiddenAgentIdsByWorkspace[o]??null},t);return r.layout===n?e:{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[o]:r.layout})}})},reorderTabs:(e,t)=>{const o=W(e);o&&n(e=>{const n=(0,y.reorderFocusedPaneTabsInLayout)({layout:I(e.layoutByWorkspace,o),tabIds:t});return n?{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[o]:n})}:e})},getWorkspaceTabs:e=>{const t=W(e);return t?(0,y.collectAllTabs)(I(o().layoutByWorkspace,t).root):[]},splitPane:(t,r)=>{const s=W(t),c=W(r.tabId),u=W(r.targetPaneId);if(!s||!c||!u)return null;const i=(0,y.splitPaneInLayout)({layout:I(o().layoutByWorkspace,s),tabId:c,targetPaneId:u,position:r.position,maxTreeDepth:b,createNodeId:e.createNodeId});return i?(n(e=>Object.assign({},T(e,s),{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[s]:i.layout})})),i.paneId):null},splitPaneEmpty:(t,r)=>{const s=W(t),c=W(r.targetPaneId);if(!s||!c)return null;const u=(0,y.splitPaneEmptyInLayout)({layout:I(o().layoutByWorkspace,s),targetPaneId:c,position:r.position,maxTreeDepth:b,createNodeId:e.createNodeId});return u?(n(e=>Object.assign({},T(e,s),{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[s]:u.layout})})),u.paneId):null},moveTabToPane:(e,t,o)=>{const r=W(e),s=W(t),c=W(o);r&&s&&c&&n(e=>{const t=(0,y.moveTabToPaneInLayout)({layout:I(e.layoutByWorkspace,r),tabId:s,toPaneId:c});return t?Object.assign({},T(e,r),{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[r]:t})}):e})},focusPane:(e,t)=>{const o=W(e),r=W(t);o&&r&&n(e=>{const t=(0,y.focusPaneInLayout)({layout:I(e.layoutByWorkspace,o),paneId:r});return t?Object.assign({},T(e,o),{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[o]:t})}):e})},unfocusPane:t=>{const o=W(t);if(!o)return null;const r=e.createFocusRestorationToken();return n(e=>{const t=I(e.layoutByWorkspace,o),n=e.focusRestorationByWorkspace[o],s=n?.restorePaneId??t.focusedPaneId;return{focusRestorationByWorkspace:Object.assign({},e.focusRestorationByWorkspace,{[o]:{restorePaneId:s,tokens:[...n?.tokens??[],r]}}),layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[o]:null===t.focusedPaneId?t:Object.assign({},t,{focusedPaneId:null})})}}),r},restorePaneFocus:(e,o)=>{const r=W(e),s=W(o);r&&s&&n(e=>{const n=e.focusRestorationByWorkspace[r];if(!n?.tokens.includes(s))return e;const o=n.tokens.filter(e=>e!==s),c=e.focusRestorationByWorkspace,u=(0,t.default)(c,[r].map(p)),i=I(e.layoutByWorkspace,r);if(null!==i.focusedPaneId)return{focusRestorationByWorkspace:u};if(o.length>0)return{focusRestorationByWorkspace:Object.assign({},u,{[r]:{restorePaneId:n.restorePaneId,tokens:o}})};const l=(0,y.findPaneById)(i.root,n.restorePaneId)?.id??null;return l?{focusRestorationByWorkspace:u,layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[r]:Object.assign({},i,{focusedPaneId:l})})}:{focusRestorationByWorkspace:u}})},resizeSplit:(e,t,o)=>{const r=W(e),s=W(t);r&&s&&n(e=>({splitSizesByWorkspace:Object.assign({},e.splitSizesByWorkspace,{[r]:Object.assign({},e.splitSizesByWorkspace[r],{[s]:(0,y.clampNormalizedSizes)(o)})})}))},reorderTabsInPane:(e,t,o)=>{const r=W(e),s=W(t);r&&s&&n(e=>{const t=(0,y.reorderPaneTabsInLayout)({layout:I(e.layoutByWorkspace,r),paneId:s,tabIds:o});return t?Object.assign({},T(e,r),{layoutByWorkspace:Object.assign({},e.layoutByWorkspace,{[r]:t})}):e})},pinAgent:(e,t)=>{const o=W(e),r=W(t);o&&r&&n(e=>{const t=e.pinnedAgentIdsByWorkspace[o]??null;if(t?.has(r))return e;const n=new Set(t??[]);return n.add(r),{hiddenAgentIdsByWorkspace:f(e.hiddenAgentIdsByWorkspace,o,r),pinnedAgentIdsByWorkspace:Object.assign({},e.pinnedAgentIdsByWorkspace,{[o]:n})}})},unpinAgent:(e,t)=>{const o=W(e),r=W(t);o&&r&&n(e=>{const t=e.pinnedAgentIdsByWorkspace[o]??null;if(!t?.has(r))return e;if(1===t.size){const t=Object.assign({},e.pinnedAgentIdsByWorkspace);return delete t[o],{pinnedAgentIdsByWorkspace:t}}const n=new Set(t);return n.delete(r),{pinnedAgentIdsByWorkspace:Object.assign({},e.pinnedAgentIdsByWorkspace,{[o]:n})}})},hideAgent:(e,t)=>{const o=W(e),r=W(t);o&&r&&n(e=>{const t=B(e.hiddenAgentIdsByWorkspace,o,r);return t===e.hiddenAgentIdsByWorkspace?e:{hiddenAgentIdsByWorkspace:t}})},unhideAgent:(e,t)=>{const o=W(e),r=W(t);o&&r&&n(e=>{const t=f(e.hiddenAgentIdsByWorkspace,o,r);return t===e.hiddenAgentIdsByWorkspace?e:{hiddenAgentIdsByWorkspace:t}})},purgeWorkspace:e=>{const o=W(e);o&&n(e=>{if(!(o in e.layoutByWorkspace||o in e.splitSizesByWorkspace||o in e.pinnedAgentIdsByWorkspace||o in e.hiddenAgentIdsByWorkspace||o in e.focusRestorationByWorkspace))return e;const n=e.layoutByWorkspace,r=(0,t.default)(n,[o].map(p)),s=e.splitSizesByWorkspace,c=(0,t.default)(s,[o].map(p)),u=e.pinnedAgentIdsByWorkspace,i=(0,t.default)(u,[o].map(p)),y=e.hiddenAgentIdsByWorkspace,l=(0,t.default)(y,[o].map(p)),k=e.focusRestorationByWorkspace;return{layoutByWorkspace:r,splitSizesByWorkspace:c,pinnedAgentIdsByWorkspace:i,hiddenAgentIdsByWorkspace:l,focusRestorationByWorkspace:(0,t.default)(k,[o].map(p))}})}}),{name:"workspace-layout-state",version:1,storage:(0,c.createJSONStorage)(()=>o.default),partialize:e=>{const t={};for(const n in e.layoutByWorkspace)t[n]=(0,y.normalizeLayout)(e.layoutByWorkspace[n]);return{layoutByWorkspace:t,splitSizesByWorkspace:e.splitSizesByWorkspace}}}))}const O=P();function A(){return O.persist.hasHydrated()}},3422,[35,348,3352,36,3255,3264,3423,3428,3429,3425]);
@@ -85,6 +85,6 @@
85
85
  <body>
86
86
  <noscript>You need to enable JavaScript to run this app.</noscript>
87
87
  <div id="root"></div>
88
- <script src="/_expo/static/js/web/index-b4e3ea2d8f703955e56f4dab0779ee1a.js" defer></script>
88
+ <script src="/_expo/static/js/web/index-9f718c794c8b2995afa4a8f14218e814.js" defer></script>
89
89
  </body>
90
90
  </html>
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getpaseo/server",
3
- "version": "0.1.104-beta.1",
3
+ "version": "0.1.104-beta.2",
4
4
  "description": "Paseo backend server",
5
5
  "files": [
6
6
  "dist/server",
@@ -65,10 +65,10 @@
65
65
  "@agentclientprotocol/sdk": "^0.17.1",
66
66
  "@anthropic-ai/claude-agent-sdk": "^0.3.195",
67
67
  "@anthropic-ai/sdk": "^0.104.2",
68
- "@getpaseo/client": "0.1.104-beta.1",
69
- "@getpaseo/highlight": "0.1.104-beta.1",
70
- "@getpaseo/protocol": "0.1.104-beta.1",
71
- "@getpaseo/relay": "0.1.104-beta.1",
68
+ "@getpaseo/client": "0.1.104-beta.2",
69
+ "@getpaseo/highlight": "0.1.104-beta.2",
70
+ "@getpaseo/protocol": "0.1.104-beta.2",
71
+ "@getpaseo/relay": "0.1.104-beta.2",
72
72
  "@isaacs/ttlcache": "^2.1.4",
73
73
  "@modelcontextprotocol/sdk": "^1.20.1",
74
74
  "@opencode-ai/sdk": "1.14.46",