@camerontaylor/paseo-server 0.11.1-fork.2 → 0.11.2-fork.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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camerontaylor/paseo-builtin-plugins",
3
- "version": "0.11.1",
3
+ "version": "0.11.2",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "scripts": {
@@ -670,7 +670,6 @@ export declare class ACPAgentSession implements AgentSession, ACPClient {
670
670
  private isStaleFeatureValueError;
671
671
  private warnInvalidSelection;
672
672
  private modelSelectionUnavailableMessage;
673
- private isModelSelectionUnavailableError;
674
673
  private featureUnavailableMessage;
675
674
  private isFeatureUnavailableError;
676
675
  private translateSessionUpdate;
@@ -82,7 +82,7 @@ export function summarizeACPRequestError(error) {
82
82
  if (error instanceof Error) {
83
83
  return { message: error.message };
84
84
  }
85
- return { message: String(error) };
85
+ return { message: toDiagnosticErrorMessage(error) };
86
86
  }
87
87
  // Keeps the JSON-RPC code so callers can still tell invalid params from other failures.
88
88
  class ACPRequestError extends Error {
@@ -94,7 +94,7 @@ class ACPRequestError extends Error {
94
94
  }
95
95
  function toACPRequestError(error) {
96
96
  if (!isACPError(error)) {
97
- return error instanceof Error ? error : new Error(String(error));
97
+ return error instanceof Error ? error : new Error(toDiagnosticErrorMessage(error));
98
98
  }
99
99
  return new ACPRequestError(error);
100
100
  }
@@ -1937,18 +1937,15 @@ export class ACPAgentSession {
1937
1937
  throw new Error("ACP session not initialized");
1938
1938
  }
1939
1939
  if (selection.hasAvailableModels && !selection.availableModel) {
1940
- this.warnInvalidSelection(modelId, `is not a valid ${this.provider} model. Available options: ${this.availableModels
1940
+ throw new Error(`Model '${modelId}' is not a valid ${this.provider} model. Available options: ${this.availableModels
1941
1941
  ?.map((model) => model.modelId)
1942
1942
  .join(", ")}`);
1943
- return;
1944
1943
  }
1945
1944
  if (selection.availableModel &&
1946
1945
  typeof this.connection.unstable_setSessionModel === "function") {
1947
1946
  try {
1948
- await this.connection.unstable_setSessionModel({
1949
- sessionId: this.sessionId,
1950
- modelId,
1951
- });
1947
+ const { connection, sessionId } = this;
1948
+ await this.runACPRequest(() => connection.unstable_setSessionModel({ sessionId, modelId }));
1952
1949
  this.currentModel = modelId;
1953
1950
  this.pushEvent({
1954
1951
  type: "model_changed",
@@ -1957,8 +1954,11 @@ export class ACPAgentSession {
1957
1954
  });
1958
1955
  return;
1959
1956
  }
1960
- catch {
1961
- // Fall through to config option path.
1957
+ catch (error) {
1958
+ if (!isACPError(error) || error.code !== -32601) {
1959
+ throw error;
1960
+ }
1961
+ // Agents may expose model selection only through session config options.
1962
1962
  }
1963
1963
  }
1964
1964
  const modelOption = selection.configOption;
@@ -1966,10 +1966,9 @@ export class ACPAgentSession {
1966
1966
  throw new Error(this.modelSelectionUnavailableMessage());
1967
1967
  }
1968
1968
  if (!selection.configChoice) {
1969
- this.warnInvalidSelection(modelId, `is not a valid ${this.provider} model config option. Available options: ${flattenSelectOptions(modelOption.options)
1969
+ throw new Error(`Model '${modelId}' is not a valid ${this.provider} model config option. Available options: ${flattenSelectOptions(modelOption.options)
1970
1970
  .map((option) => option.value)
1971
1971
  .join(", ")}`);
1972
- return;
1973
1972
  }
1974
1973
  const { connection, sessionId } = this;
1975
1974
  const response = await this.runACPRequest(() => connection.setSessionConfigOption({
@@ -2554,19 +2553,11 @@ export class ACPAgentSession {
2554
2553
  const configuredModelId = this.config.model;
2555
2554
  let switchedModel = false;
2556
2555
  if (configuredModelId && configuredModelId !== this.currentModel) {
2557
- try {
2558
- await this.setModelWithSelection({
2559
- modelId: configuredModelId,
2560
- selection: this.resolveModelSelection(configuredModelId),
2561
- });
2562
- switchedModel = true;
2563
- }
2564
- catch (error) {
2565
- if (!this.isModelSelectionUnavailableError(error)) {
2566
- throw error;
2567
- }
2568
- this.logger.warn({ value: configuredModelId }, `${this.provider} does not expose ACP model selection; using provider default model`);
2569
- }
2556
+ await this.setModelWithSelection({
2557
+ modelId: configuredModelId,
2558
+ selection: this.resolveModelSelection(configuredModelId),
2559
+ });
2560
+ switchedModel = true;
2570
2561
  }
2571
2562
  if (this.config.thinkingOptionId && this.config.thinkingOptionId !== this.thinkingOptionId) {
2572
2563
  await this.setThinkingOption(this.config.thinkingOptionId);
@@ -2607,9 +2598,6 @@ export class ACPAgentSession {
2607
2598
  modelSelectionUnavailableMessage() {
2608
2599
  return `${this.provider} does not expose ACP model selection`;
2609
2600
  }
2610
- isModelSelectionUnavailableError(error) {
2611
- return error instanceof Error && error.message === this.modelSelectionUnavailableMessage();
2612
- }
2613
2601
  featureUnavailableMessage(featureId) {
2614
2602
  return `${this.provider} does not expose ACP feature '${featureId}'`;
2615
2603
  }
@@ -3,6 +3,7 @@ import { mkdir, readFile, writeFile } from "node:fs/promises";
3
3
  import { join } from "node:path";
4
4
  import { z } from "zod";
5
5
  import { CreationSnapshotSchema, } from "@camerontaylor/paseo-protocol/messages";
6
+ import { toDiagnosticErrorMessage } from "../agent/providers/diagnostic-utils.js";
6
7
  import { writeFileAtomic } from "../atomic-file.js";
7
8
  import { generateWorkspaceId } from "../workspace-registry-model.js";
8
9
  const RecordSchema = z.object({
@@ -157,7 +158,7 @@ export class CreationService {
157
158
  record.inFlight = null;
158
159
  await this.publish(identity, record, {
159
160
  phase: "failed",
160
- error: error instanceof Error ? error.message : String(error),
161
+ error: toDiagnosticErrorMessage(error),
161
162
  errorCode: code,
162
163
  failedStage: stage,
163
164
  outcomeUnknown: unknown,
@@ -824,7 +824,7 @@ __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,"__esModule",{v
824
824
  __d(function(g,r,i,a,m,e,d){"use strict";var t=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.shouldAppendSitemap=u,e.shouldAppendNotFound=s,e.getRootStackRouteNames=function(){const t=[n.INTERNAL_SLOT_NAME];s()&&t.push(n.NOT_FOUND_ROUTE_NAME);u()&&t.push(n.SITEMAP_ROUTE_NAME);return t};const o=t(r(d[0])),n=r(d[1]);function u(){const t=o.default.expoConfig?.extra?.router;return!1!==t?.sitemap}function s(){const t=o.default.expoConfig?.extra?.router;return!1!==t?.notFound}},702,[703,706]);
825
825
  __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,"default",{enumerable:!0,get:function(){return N}}),Object.defineProperty(_e,"AppOwnership",{enumerable:!0,get:function(){return l.AppOwnership}}),Object.defineProperty(_e,"ExecutionEnvironment",{enumerable:!0,get:function(){return l.ExecutionEnvironment}}),Object.defineProperty(_e,"UserInterfaceIdiom",{enumerable:!0,get:function(){return l.UserInterfaceIdiom}});var n=e(r(d[0])),t=r(d[1]);r(d[2]);var u=e(r(d[3])),l=r(d[4]),o=e(r(d[5]));o.default||console.warn("No native ExponentConstants module found, are you sure the expo-constants's module is linked properly?");const s=(0,t.requireOptionalNativeModule)('ExpoUpdates');let f=null;if(s){let e;s.manifest?e=s.manifest:s.manifestString&&(e=JSON.parse(s.manifestString)),e&&Object.keys(e).length>0&&(f=e)}let c=null;if(u.default.EXDevLauncher){let e;u.default.EXDevLauncher.manifestString&&(e=JSON.parse(u.default.EXDevLauncher.manifestString)),e&&Object.keys(e).length>0&&(c=e)}let p=null;if(o.default&&o.default.manifest){const e=o.default.manifest;p='string'==typeof e?JSON.parse(e):e}let b=f??c??p;const E=o.default||{},{appOwnership:O}=E,x=(0,n.default)(E,["name","appOwnership"]),v=Object.assign({},x,{appOwnership:O??null});function _(e){return!h(e)}function h(e){return'metadata'in e}function S(e=!1){if(!b){const e=null===b?'null':'undefined';if(x.executionEnvironment,l.ExecutionEnvironment.Bare,x.executionEnvironment===l.ExecutionEnvironment.StoreClient||x.executionEnvironment===l.ExecutionEnvironment.Standalone)throw new t.CodedError('ERR_CONSTANTS_MANIFEST_UNAVAILABLE',`Constants.manifest is ${e}, must be an object.`)}return b}Object.defineProperties(v,{__unsafeNoWarnManifest:{get(){const e=S(!0);return e&&_(e)?e:null},enumerable:!1},__unsafeNoWarnManifest2:{get(){const e=S(!0);return e&&h(e)?e:null},enumerable:!1},manifest:{get(){const e=S();return e&&_(e)?e:null},enumerable:!0},manifest2:{get(){const e=S();return e&&h(e)?e:null},enumerable:!0},expoConfig:{get(){const e=S(!0);return e?s&&s.isEmbeddedLaunch?p:h(e)?e.extra?.expoClient??null:_(e)?e:null:null},enumerable:!0},expoGoConfig:{get(){const e=S(!0);return e?h(e)?e.extra?.expoGo??null:_(e)?e:null:null},enumerable:!0},easConfig:{get(){const e=S(!0);return e?h(e)?e.extra?.eas??null:_(e)?e:null:null},enumerable:!0},__rawManifest_TEST:{get:()=>b,set(e){b=e},enumerable:!1}});var N=v},703,[35,4,25,395,704,705]);
826
826
  __d(function(g,r,i,a,m,e,d){"use strict";var t,n,o;Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"AppOwnership",{enumerable:!0,get:function(){return t}}),Object.defineProperty(e,"ExecutionEnvironment",{enumerable:!0,get:function(){return n}}),Object.defineProperty(e,"UserInterfaceIdiom",{enumerable:!0,get:function(){return o}}),(function(t){t.Expo="expo"})(t||(t={})),(function(t){t.Bare="bare",t.Standalone="standalone",t.StoreClient="storeClient"})(n||(n={})),(function(t){t.Handset="handset",t.Tablet="tablet",t.Desktop="desktop",t.TV="tv",t.Unsupported="unsupported"})(o||(o={}))},704,[]);
827
- __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return s}});var n=r(d[0]);const t=(Date.now()+'-'+Math.floor(1e9*Math.random())).toString();function o(){if('undefined'!=typeof navigator&&'string'==typeof navigator.userAgent){const n=navigator.userAgent.toLowerCase();if(n.includes('edge'))return'Edge';if(n.includes('edg'))return'Chromium Edge';if(n.includes('opr')&&'opr'in window&&window.opr)return'Opera';if(n.includes('chrome')&&'chrome'in window&&window.chrome)return'Chrome';if(n.includes('trident'))return'IE';if(n.includes('firefox'))return'Firefox';if(n.includes('safari'))return'Safari'}}var s={get appOwnership(){return null},get executionEnvironment(){return n.ExecutionEnvironment.Bare},get sessionId(){return t},get isHeadless(){return'undefined'==typeof navigator||/\bHeadlessChrome\//.test(navigator.userAgent)},get expoVersion(){return this.manifest.sdkVersion||null},get linkingUri(){return'undefined'!=typeof location?location.origin:''},get expoRuntimeVersion(){return this.expoVersion},get deviceName(){return o()},get systemFonts(){return[]},get statusBarHeight(){return 0},get deviceYearClass(){return null},get manifest(){return"{\"name\":\"Paseo\",\"slug\":\"voice-mobile\",\"version\":\"0.11.1\",\"orientation\":\"portrait\",\"icon\":\"./assets/images/icon.png\",\"scheme\":\"paseo\",\"userInterfaceStyle\":\"automatic\",\"newArchEnabled\":true,\"web\":{\"output\":\"single\",\"favicon\":\"./assets/images/favicon.png\",\"shortName\":\"Paseo\",\"orientation\":\"portrait\",\"name\":\"Paseo\"},\"autolinking\":{\"searchPaths\":[\"../../node_modules\",\"./node_modules\"]},\"experiments\":{\"typedRoutes\":true,\"reactCompiler\":true,\"autolinkingModuleResolution\":true},\"extra\":{\"fdroidBuild\":false,\"profileBuild\":false,\"router\":{},\"eas\":{\"projectId\":\"0e7f65ce-0367-46c8-a238-2b65963d235a\"}},\"owner\":\"getpaseo\",\"sdkVersion\":\"54.0.0\",\"platforms\":[\"ios\",\"android\",\"web\"]}"},get manifest2(){return null},get experienceUrl(){return'undefined'!=typeof location?location.origin:''},get debugMode(){return!1},getWebViewUserAgentAsync:async()=>'undefined'!=typeof navigator?navigator.userAgent:null}},705,[704]);
827
+ __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return s}});var n=r(d[0]);const t=(Date.now()+'-'+Math.floor(1e9*Math.random())).toString();function o(){if('undefined'!=typeof navigator&&'string'==typeof navigator.userAgent){const n=navigator.userAgent.toLowerCase();if(n.includes('edge'))return'Edge';if(n.includes('edg'))return'Chromium Edge';if(n.includes('opr')&&'opr'in window&&window.opr)return'Opera';if(n.includes('chrome')&&'chrome'in window&&window.chrome)return'Chrome';if(n.includes('trident'))return'IE';if(n.includes('firefox'))return'Firefox';if(n.includes('safari'))return'Safari'}}var s={get appOwnership(){return null},get executionEnvironment(){return n.ExecutionEnvironment.Bare},get sessionId(){return t},get isHeadless(){return'undefined'==typeof navigator||/\bHeadlessChrome\//.test(navigator.userAgent)},get expoVersion(){return this.manifest.sdkVersion||null},get linkingUri(){return'undefined'!=typeof location?location.origin:''},get expoRuntimeVersion(){return this.expoVersion},get deviceName(){return o()},get systemFonts(){return[]},get statusBarHeight(){return 0},get deviceYearClass(){return null},get manifest(){return"{\"name\":\"Paseo\",\"slug\":\"voice-mobile\",\"version\":\"0.11.2\",\"orientation\":\"portrait\",\"icon\":\"./assets/images/icon.png\",\"scheme\":\"paseo\",\"userInterfaceStyle\":\"automatic\",\"newArchEnabled\":true,\"web\":{\"output\":\"single\",\"favicon\":\"./assets/images/favicon.png\",\"shortName\":\"Paseo\",\"orientation\":\"portrait\",\"name\":\"Paseo\"},\"autolinking\":{\"searchPaths\":[\"../../node_modules\",\"./node_modules\"]},\"experiments\":{\"typedRoutes\":true,\"reactCompiler\":true,\"autolinkingModuleResolution\":true},\"extra\":{\"fdroidBuild\":false,\"profileBuild\":false,\"router\":{},\"eas\":{\"projectId\":\"0e7f65ce-0367-46c8-a238-2b65963d235a\"}},\"owner\":\"getpaseo\",\"sdkVersion\":\"54.0.0\",\"platforms\":[\"ios\",\"android\",\"web\"]}"},get manifest2(){return null},get experienceUrl(){return'undefined'!=typeof location?location.origin:''},get debugMode(){return!1},getWebViewUserAgentAsync:async()=>'undefined'!=typeof navigator?navigator.userAgent:null}},705,[704]);
828
828
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SITEMAP_ROUTE_NAME=e.NOT_FOUND_ROUTE_NAME=e.INTERNAL_SLOT_NAME=void 0,e.INTERNAL_SLOT_NAME='__root',e.NOT_FOUND_ROUTE_NAME='+not-found',e.SITEMAP_ROUTE_NAME='_sitemap'},706,[]);
829
829
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.resolveHref=void 0,e.resolveHrefStringWithSegments=function(t,{segments:n=[],params:s={}}={},{relativeToDirectory:o}={}){if(t.startsWith('.')){let c=n?.map(t=>{if(!t.startsWith('['))return t;if(t.startsWith('[...')){t=t.slice(4,-1);const n=s[t];return Array.isArray(n)?n.join('/'):n?.split(',')?.join('/')??''}return t=t.slice(1,-1),s[t]}).filter(Boolean).join('/')??'/';o&&(c=`${c}/`);const f=new URL(t,`http://hostname/${c}`);t=`${f.pathname}${f.search}`}return t};function t(t,s){for(const[o,c=""]of Object.entries(s)){const f=`[${o}]`,l=`[...${o}]`;if(t.includes(f))t=t.replace(f,n(c));else{if(!t.includes(l))continue;t=t.replace(l,n(c))}delete s[o]}return{pathname:t,params:s}}function n(t){return Array.isArray(t)?t.map(t=>n(t)).join('/'):encodeURIComponent(t.toString())}function s(t){return Object.entries(t).filter(([,t])=>null!=t).map(([t,n])=>`${t}=${encodeURIComponent(n.toString())}`).join('&')}e.resolveHref=n=>{if('string'==typeof n)return(0,e.resolveHref)({pathname:n});const o=n.pathname??'';if(!n?.params)return o;const{pathname:c,params:f}=t(o,Object.assign({},n.params)),l=s(f);return c+(l?`?${l}`:'')}},707,[]);
830
830
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.isRoutePreloadedInStack=function(t,o){if(!t||'stack'!==t.type)return!1;return t.preloadedRoutes.some(t=>t.key===o.key)}},708,[]);
@@ -17017,7 +17017,7 @@ __d(function(g,r,i,_a,m,e,d){'use strict';const t=r(d[0]);m.exports=(s,c,n)=>t(s
17017
17017
  __d(function(g,r,i,_a,m,e,d){'use strict';const t=r(d[0]);m.exports=(s,c,n)=>t(s,c,n)<=0},3757,[3752]);
17018
17018
  __d(function(g,r,i,a,m,e,d){'use strict';const t=r(d[0]);m.exports=(n,c,s)=>{try{c=new t(c,s)}catch(t){return!1}return c.test(n)}},3758,[3747]);
17019
17019
  __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}},3759,[703,3760]);
17020
- __d(function(e,t,r,o,a,i,n){a.exports={name:"@camerontaylor/paseo-app",version:"0.11.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 --clean --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 --clean --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",pretypecheck:"npm run build --workspace=@getpaseo/expo-two-way-audio",typecheck:"tsgo --noEmit",test:"vitest run","test:browser":"vitest run --project browser","test:e2e":"playwright test --project=browser","test:e2e:diff-performance":"cross-env PASEO_DIFF_PERF_E2E=1 playwright test --project=browser e2e/browser/diff-performance.spec.ts","test:e2e:stream-smoothness":"cross-env PASEO_AGENT_STREAM_PERF_E2E=1 playwright test --project=browser e2e/browser/agent-stream-smoothness.spec.ts","test:e2e:real":"cross-env E2E_FORK_PASEO_HOME_FROM=../../.dev/paseo-home playwright test --project=real-provider","test:e2e:relay-deployment":"npm --prefix ../.. run build:server && npm --prefix ../.. run build:daemon-web-ui && cross-env E2E_FORK_PASEO_HOME_FROM=../../.dev/paseo-home playwright test --project=relay-deployment e2e/browser/relay-deployment-reconnect.real.spec.ts","test:e2e:ui":"playwright test --ui",build:"npm run build:web","build:web":"npm --prefix ../.. run build:app-deps && expo export --platform web","profile:composer-typing":"node ./scripts/profile-composer-typing.mjs","profile:explorer-toggle":"node ./scripts/profile-explorer-toggle.mjs","profile:side-pane":"playwright test --config playwright.profile.config.ts side-pane-performance.spec.ts","profile:workspace-switching":"node ./scripts/profile-workspace-switching.mjs","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","build:mermaid-runtime":"node ./src/components/markdown/fence/mermaid/build-runtime.mjs"},dependencies:{"@codemirror/commands":"6.10.4","@codemirror/language":"6.12.4","@codemirror/search":"6.7.1","@codemirror/state":"6.7.1","@codemirror/view":"6.43.6","@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","@camerontaylor/paseo-client":"*","@camerontaylor/paseo-expo-two-way-audio":"*","@camerontaylor/paseo-highlight":"*","@camerontaylor/paseo-plugin":"*","@camerontaylor/paseo-protocol":"*","@gorhom/bottom-sheet":"^5.2.14","@gorhom/portal":"^1.0.14","@marijn/find-cluster-break":"^1.0.2","@mattermost/react-native-paste-input":"2.0.1","@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","@replit/codemirror-vim":"6.3.0","@shopify/react-native-skia":"2.2.12","@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-sqlite":"~16.0.10","expo-system-ui":"~6.0.7","fast-deep-equal":"^3.1.3",htmlparser2:"^12.0.0",i18next:"^26.3.0","lucide-react-native":"^1.50.0","markdown-it":"^10.0.0",mermaid:"^11.16.0","mnemonic-id":"^3.2.7",qrcode:"^1.5.4",react:"19.1.0","react-dom":"19.1.0","react-freeze":"1.0.4","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.21.12","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",turndown:"^7.2.4","turndown-plugin-gfm":"^1.0.2","use-sync-external-store":"^1.6.0",yaml:"^2.8.4",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/node":"~22.19.0","@types/qrcode":"^1.5.6","@types/react":"~19.2.0","@types/turndown":"^5.0.6","@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",esbuild:"0.28.1",eslint:"^9.25.0","eslint-config-expo":"~10.0.0","expo-gradle-jvmargs":"^1.1.2","fake-indexeddb":"^6.2.5",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"},reanimated:{staticFeatureFlags:{FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS:!1}}}},3760,[]);
17020
+ __d(function(e,t,r,o,a,i,n){a.exports={name:"@camerontaylor/paseo-app",version:"0.11.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 --clean --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 --clean --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",pretypecheck:"npm run build --workspace=@getpaseo/expo-two-way-audio",typecheck:"tsgo --noEmit",test:"vitest run","test:browser":"vitest run --project browser","test:e2e":"playwright test --project=browser","test:e2e:diff-performance":"cross-env PASEO_DIFF_PERF_E2E=1 playwright test --project=browser e2e/browser/diff-performance.spec.ts","test:e2e:stream-smoothness":"cross-env PASEO_AGENT_STREAM_PERF_E2E=1 playwright test --project=browser e2e/browser/agent-stream-smoothness.spec.ts","test:e2e:real":"cross-env E2E_FORK_PASEO_HOME_FROM=../../.dev/paseo-home playwright test --project=real-provider","test:e2e:relay-deployment":"npm --prefix ../.. run build:server && npm --prefix ../.. run build:daemon-web-ui && cross-env E2E_FORK_PASEO_HOME_FROM=../../.dev/paseo-home playwright test --project=relay-deployment e2e/browser/relay-deployment-reconnect.real.spec.ts","test:e2e:ui":"playwright test --ui",build:"npm run build:web","build:web":"npm --prefix ../.. run build:app-deps && expo export --platform web","profile:composer-typing":"node ./scripts/profile-composer-typing.mjs","profile:explorer-toggle":"node ./scripts/profile-explorer-toggle.mjs","profile:side-pane":"playwright test --config playwright.profile.config.ts side-pane-performance.spec.ts","profile:workspace-switching":"node ./scripts/profile-workspace-switching.mjs","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","build:mermaid-runtime":"node ./src/components/markdown/fence/mermaid/build-runtime.mjs"},dependencies:{"@codemirror/commands":"6.10.4","@codemirror/language":"6.12.4","@codemirror/search":"6.7.1","@codemirror/state":"6.7.1","@codemirror/view":"6.43.6","@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","@camerontaylor/paseo-client":"*","@camerontaylor/paseo-expo-two-way-audio":"*","@camerontaylor/paseo-highlight":"*","@camerontaylor/paseo-plugin":"*","@camerontaylor/paseo-protocol":"*","@gorhom/bottom-sheet":"^5.2.14","@gorhom/portal":"^1.0.14","@marijn/find-cluster-break":"^1.0.2","@mattermost/react-native-paste-input":"2.0.1","@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","@replit/codemirror-vim":"6.3.0","@shopify/react-native-skia":"2.2.12","@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-sqlite":"~16.0.10","expo-system-ui":"~6.0.7","fast-deep-equal":"^3.1.3",htmlparser2:"^12.0.0",i18next:"^26.3.0","lucide-react-native":"^1.50.0","markdown-it":"^10.0.0",mermaid:"^11.16.0","mnemonic-id":"^3.2.7",qrcode:"^1.5.4",react:"19.1.0","react-dom":"19.1.0","react-freeze":"1.0.4","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.21.12","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",turndown:"^7.2.4","turndown-plugin-gfm":"^1.0.2","use-sync-external-store":"^1.6.0",yaml:"^2.8.4",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/node":"~22.19.0","@types/qrcode":"^1.5.6","@types/react":"~19.2.0","@types/turndown":"^5.0.6","@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",esbuild:"0.28.1",eslint:"^9.25.0","eslint-config-expo":"~10.0.0","expo-gradle-jvmargs":"^1.1.2","fake-indexeddb":"^6.2.5",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"},reanimated:{staticFeatureFlags:{FORCE_REACT_RENDER_FOR_SETTLED_ANIMATIONS:!1}}}},3760,[]);
17021
17021
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.createPluginClientRuntime=function(P,I){const v=(0,s.createPluginClientStateSource)(P.serverId),f=(0,l.createPluginCapabilities)(P,(0,u.createPluginNavigation)({serverId:P.serverId,workspaceId:null}));return Object.assign({},f,{playAudio:(0,t.createPlayAudio)(I,P.lifetime.signal),hosts:(0,o.createPluginHosts)((0,n.getHostRuntimeStore)(),P.lifetime.signal),addComposerPill:t=>c.pluginButtonStore.addComposerPill(P,t),addHeaderButton:t=>c.pluginButtonStore.addHeaderButton(P,t),openPanel(t,n){p({installation:P,state:v,panelId:t,options:n})}})};var t=r(d[0]),n=r(d[1]),o=r(d[2]),l=r(d[3]),s=r(d[4]),u=r(d[5]),c=r(d[6]);function p(t){const{installation:n,state:o,panelId:s,options:c}=t,p=c.workspaceId.trim(),P=c.agentId?.trim(),I=(0,u.createPluginNavigation)({serverId:n.serverId,workspaceId:p}),v=P?(0,l.createPluginAgentActionContext)({plugin:n,navigation:I,state:o,workspaceId:p,agentId:P}):(0,l.createPluginWorkspaceActionContext)({plugin:n,navigation:I,state:o,workspaceId:p});if(!v)throw new Error("Plugin panel context is unavailable");v.openPanel(s,{location:c.location})}},3761,[3762,3767,3886,3887,3898,3903,3914]);
17022
17022
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"createAudioEngine",{enumerable:!0,get:function(){return t.createAudioEngine}}),Object.defineProperty(e,"createPlayAudio",{enumerable:!0,get:function(){return n.createPlayAudio}});var t=r(d[0]),n=r(d[1])},3762,[3763,3766]);
17023
17023
  __d(function(g,r,_i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.createAudioEngine=function(u,l){const p={playbackContext:null,captureContext:null,stream:null,source:null,processor:null,gain:null,started:!1,muted:!1};async function f(){if(!p.playbackContext){const t=c();if(!t)throw new Error("AudioContext unavailable");p.playbackContext=new t}const t=p.playbackContext;if("suspended"===t.state){let n;try{await Promise.race([t.resume(),new Promise((t,o)=>{n=setTimeout(()=>o(new Error("Audio playback requires a user interaction")),2e3)})])}finally{clearTimeout(n)}}return t}async function w(){if(p.captureContext)return"suspended"===p.captureContext.state&&await p.captureContext.resume().catch(()=>{}),p.captureContext;const t=c();if(!t)throw new Error("AudioContext unavailable");const n=new t;return"suspended"===n.state&&await n.resume().catch(()=>{}),p.captureContext=n,n}const y=(0,o.createPlaybackQueue)(async function(n,o){const c=await f(),u=await n.arrayBuffer(),l=(n.type||"").toLowerCase(),p=l.startsWith("audio/pcm")?i(c,new Uint8Array(u),(0,t.parsePcmSampleRate)(l)??24e3):await s(c,u);if(o.aborted)throw new Error("Playback stopped");const w=p.duration,y=c.createBufferSource();return y.buffer=p,y.connect(c.destination),await new Promise((t,n)=>{const c=()=>{y.stop(),y.disconnect(),n(new Error("Playback stopped"))};o.addEventListener("abort",c,{once:!0}),y.addEventListener("ended",()=>{o.removeEventListener("abort",c),y.disconnect(),t(w)},{once:!0});try{y.start()}catch(t){o.removeEventListener("abort",c),y.disconnect(),n(t)}})});async function h(){p.started=!1;try{p.processor?.disconnect(),p.source?.disconnect(),p.gain?.disconnect()}catch{}if(p.stream)for(const t of p.stream.getTracks())try{t.stop()}catch{}p.stream=null,p.source=null,p.processor=null,p.gain=null,p.muted=!1,u.onVolumeLevel(0);const t=p.captureContext;p.captureContext=null,t&&"closed"!==t.state&&await t.close().catch(()=>{})}return{async initialize(){await f()},async destroy(){y.destroy(),await h();const t=p.playbackContext;p.playbackContext=null,t&&"closed"!==t.state&&await t.close().catch(()=>{})},async startCapture(){if(p.started)return;const o="undefined"==typeof navigator||!navigator.mediaDevices||"function"!=typeof navigator.mediaDevices.getUserMedia,c="undefined"==typeof window||"boolean"!=typeof window.isSecureContext||window.isSecureContext,i="undefined"!=typeof window&&window.location?window.location.origin:"unknown",s=(0,n.isElectronRuntime)();if(o)throw new Error("Microphone capture is not supported in this environment");if(!c&&!s)throw new Error(`Microphone access requires HTTPS or localhost. Current origin: ${i}`);try{const n=await w(),o=await navigator.mediaDevices.getUserMedia({audio:{channelCount:1,noiseSuppression:!0,echoCancellation:!0,autoGainControl:!0}}),c=n.createMediaStreamSource(o),i=n.createScriptProcessor(4096,1,1),s=n.createGain();s.gain.value=0,i.onaudioprocess=o=>{if(!p.started)return;const c=o.inputBuffer.getChannelData(0);let i=0;for(let t=0;t<c.length;t+=1){const n=c[t];i+=n*n}const s=Math.sqrt(i/Math.max(1,c.length)),l=Math.min(1,Math.max(0,2*s));if(u.onVolumeLevel(l),p.muted)return;const f=(0,t.resampleToPcm16)(c,n.sampleRate,16e3);u.onCaptureData(new Uint8Array(f.buffer,f.byteOffset,f.byteLength))},c.connect(i),i.connect(s),s.connect(n.destination);for(const t of o.getAudioTracks())t.addEventListener("ended",()=>{p.stream===o&&u.onInterruption?.()});p.started=!0,p.stream=o,p.source=c,p.processor=i,p.gain=s}catch(t){await h();const n=t instanceof Error?t:new Error(String(t));throw u.onError?.(n),n}},async stopCapture(){await h()},toggleMute:()=>(p.muted=!p.muted,p.muted&&u.onVolumeLevel(0),p.muted),isMuted:()=>p.muted,play:y.play,stop:y.stop,clearQueue:y.clearQueue,isPlaying:y.isPlaying}};var t=r(d[0]),n=r(d[1]),o=r(d[2]);function c(){if("undefined"==typeof window)return null;const t=window;return t.AudioContext??t.webkitAudioContext??null}function i(t,n,o){const c=Math.floor(n.length/2),i=t.createBuffer(1,c,o),s=i.getChannelData(0);for(let t=0;t<c;t+=1){const o=n[2*t];let c=n[2*t+1]<<8|o;32768&c&&(c-=65536),s[t]=c/32768}return i}async function s(t,n){const o=t.decodeAudioData(n.slice(0));return o&&"function"==typeof o.then?o:await new Promise((o,c)=>{t.decodeAudioData(n.slice(0),o,c)})}},3763,[3764,883,3765]);
@@ -18163,7 +18163,7 @@ __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{v
18163
18163
  __d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),_e.buildWorkspacePaneContentModel=function({tab:e,normalizedServerId:t,normalizedWorkspaceId:n,host:s,fileNavigationRevision:p,onOpenTab:c,onOpenPreferredTarget:b,onOpenTargetToSide:v,onCloseCurrentTab:T,onRetargetCurrentTab:I,onSetCurrentTabState:S,onOpenWorkspaceFile:k,onOpenImportSheet:C}){(0,l.ensurePanelsRegistered)();const P=(0,u.getPanelRegistration)(e.kind);return(0,o.default)(P,`No panel registration for kind: ${e.kind}`),{key:`${t}:${n}:${e.tabId}`,Component:P.component,paneContextValue:{serverId:t,workspaceId:n,host:s,tabId:e.tabId,target:e.target,state:e.state,fileNavigationRevision:p,openTab:c,openPreferredTarget:b,openTargetToSide:v,closeCurrentTab:T,retargetCurrentTab:I,setCurrentTabState:S,openFileInWorkspace:k,openImportSheet:C}}},_e.WorkspacePaneContent=function(t){const n=(0,e.c)(32),{content:o,isWorkspaceFocused:u,isPaneFocused:l,onFocusPane:T}=t,{Component:I,key:S,paneContextValue:k}=o,C=(0,p.useStableEvent)(k.openTab),P=(0,p.useStableEvent)(k.openPreferredTarget),f=(0,p.useStableEvent)(k.openTargetToSide??v),h=(0,p.useStableEvent)(k.closeCurrentTab),F=(0,p.useStableEvent)(k.retargetCurrentTab),R=(0,p.useStableEvent)(k.setCurrentTabState),W=(0,p.useStableEvent)(k.openFileInWorkspace),E=(0,p.useStableEvent)(k.openImportSheet),x=k.openTargetToSide?f:void 0;let N;n[0]!==h||n[1]!==W||n[2]!==E||n[3]!==P||n[4]!==C||n[5]!==k.fileNavigationRevision||n[6]!==k.host||n[7]!==k.serverId||n[8]!==k.state||n[9]!==k.tabId||n[10]!==k.target||n[11]!==k.workspaceId||n[12]!==F||n[13]!==R||n[14]!==x?(N={serverId:k.serverId,workspaceId:k.workspaceId,host:k.host,tabId:k.tabId,target:k.target,state:k.state,fileNavigationRevision:k.fileNavigationRevision,openTab:C,openPreferredTarget:P,openTargetToSide:x,closeCurrentTab:h,retargetCurrentTab:F,setCurrentTabState:R,openFileInWorkspace:W,openImportSheet:E},n[0]=h,n[1]=W,n[2]=E,n[3]=P,n[4]=C,n[5]=k.fileNavigationRevision,n[6]=k.host,n[7]=k.serverId,n[8]=k.state,n[9]=k.tabId,n[10]=k.target,n[11]=k.workspaceId,n[12]=F,n[13]=R,n[14]=x,n[15]=N):N=n[15];const O=N;let $;n[16]!==l||n[17]!==u||n[18]!==T?($=(0,s.createPaneFocusContextValue)({isWorkspaceFocused:u,isPaneFocused:l,onFocusPane:T}),n[16]=l,n[17]=u,n[18]=T,n[19]=$):$=n[19];const _=$,j=`WorkspacePaneContent:${k.target.kind}:${k.tabId}`;let w,y,M,V;n[20]!==I||n[21]!==S?(w=(0,b.jsx)(I,{},S),n[20]=I,n[21]=S,n[22]=w):w=n[22];n[23]!==_||n[24]!==w?(y=(0,b.jsx)(s.PaneFocusProvider,{value:_,children:w}),n[23]=_,n[24]=w,n[25]=y):y=n[25];n[26]!==O||n[27]!==y?(M=(0,b.jsx)(s.PaneProvider,{value:O,children:y}),n[26]=O,n[27]=y,n[28]=M):M=n[28];n[29]!==j||n[30]!==M?(V=(0,b.jsx)(c.RenderProfile,{id:j,children:M}),n[29]=j,n[30]=M,n[31]=V):V=n[31];return V};var e=r(d[0]);r(d[1]);var t,n=r(d[2]),o=(t=n)&&t.__esModule?t:{default:t},s=r(d[3]),p=r(d[4]),u=r(d[5]),l=r(d[6]),c=r(d[7]),b=r(d[8]);function v(){}},4893,[455,36,3812,4625,4141,4894,4895,4564,279]);
18164
18164
  __d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),_e.definePanel=function(e,n){let l=n.useDescriptor;l||((0,o.default)(n.presentation,`Panel ${e} requires a presentation`),u=n.presentation,l=function(){const{t:e}=(0,t.useTranslation)();return{label:u.label(e),subtitle:u.subtitle(e),tooltip:u.tooltip(e),titleState:"ready",icon:u.icon,statusBucket:null}});var u;return Object.assign({},(0,s.getPanelManifest)(e),{component:n.component,presentation:n.presentation,useDescriptor:l})},_e.registerPanel=function(e){l.set(e.kind,e)},_e.getPanelRegistration=function(e){return l.get(e)};var e,t=r(d[0]),n=r(d[1]),o=(e=n)&&e.__esModule?e:{default:e},s=r(d[2]);const l=new Map},4894,[855,3812,3814]);
18165
18165
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.ensurePanelsRegistered=function(){if(w)return;(0,R.registerPanel)(l.draftPanelRegistration),(0,R.registerPanel)(_.newTabPanelRegistration),(0,R.registerPanel)(n.agentPanelRegistration),(0,R.registerPanel)(c.providerSubagentPanelRegistration),(0,R.registerPanel)(p.sideConversationPanelRegistration),(0,R.registerPanel)(u.setupPanelRegistration),(0,R.registerPanel)(f.terminalPanelRegistration),(0,R.registerPanel)(t.browserPanelRegistration),(0,R.registerPanel)(P.filePanelRegistration),(0,R.registerPanel)(o.filesPanelRegistration),(0,R.registerPanel)(b.pullRequestPanelRegistration),(0,R.registerPanel)(s.commitDiffPanelRegistration),(0,R.registerPanel)(s.workingDiffPanelRegistration),(0,R.registerPanel)(s.changesTreePanelRegistration),(0,R.registerPanel)(v.pluginPanelRegistration),w=!0};var n=r(d[0]),t=r(d[1]),s=r(d[2]),l=r(d[3]),P=r(d[4]),o=r(d[5]),R=r(d[6]),u=r(d[7]),f=r(d[8]),c=r(d[9]),p=r(d[10]),b=r(d[11]),v=r(d[12]),_=r(d[13]);let w=!1},4895,[4896,5069,5071,5075,5076,5174,4894,5175,5176,5211,5212,5214,5215,5216]);
18166
- __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.AgentConversationPanel=ke,Object.defineProperty(_e,"agentPanelRegistration",{enumerable:!0,get:function(){return Pe}}),_e.useDraftPanelDescriptor=function(e,t){const n=(0,s.c)(5);let o;n[0]!==t.serverId||n[1]!==e.draftId?(o=n=>{const s=n.pendingByDraftId[e.draftId];return s?.serverId!==t.serverId||"active"!==s.lifecycle?{isCreating:!1,pendingPrompt:null}:{isCreating:!0,pendingPrompt:s.text}},n[0]=t.serverId,n[1]=e.draftId,n[2]=o):o=n[2];const a=(0,te.useCreateFlowStore)((0,I.useShallow)(o));let c;n[3]!==a?(c=(0,G.buildDraftPanelDescriptor)(Object.assign({},a,{icon:l.SquarePen})),n[3]=a,n[4]=c):c=n[4];return c};var t=r(d[0]),n=r(d[1]),s=r(d[2]),o=r(d[3]),a=r(d[4]),c=r(d[5]),l=r(d[6]),u=r(d[7]),p=r(d[8]),f=e(r(d[9]));r(d[10]),r(d[11]);var h=r(d[12]),S=e(r(d[13])),I=r(d[14]),v=r(d[15]),y=r(d[16]),A=r(d[17]),x=r(d[18]),w=r(d[19]),C=r(d[20]),b=r(d[21]),k=r(d[22]),P=r(d[23]),j=r(d[24]),T=r(d[25]),R=r(d[26]),F=r(d[27]),_=r(d[28]),D=r(d[29]),O=r(d[30]),W=r(d[31]),H=r(d[32]),V=r(d[33]),M=r(d[34]),z=r(d[35]),B=r(d[36]),E=r(d[37]),q=r(d[38]),L=r(d[39]),K=r(d[40]),$=r(d[41]),U=r(d[42]),N=r(d[43]),J=r(d[44]),G=r(d[45]),Z=r(d[46]),Q=r(d[47]),X=r(d[48]),Y=r(d[49]),ee=r(d[50]),te=r(d[51]),ne=r(d[52]),se=r(d[53]),re=r(d[54]),ie=r(d[55]),oe=r(d[56]),ae=r(d[57]),ce=r(d[58]),le=r(d[59]),de=r(d[60]),ue=r(d[61]),ge=r(d[62]),pe=r(d[63]),fe=r(d[64]);function he(e,t,n){if(!n)return null;const s=e.sessions[t];return s?.agents?.get(n)??s?.agentDetails?.get(n)??null}const me={serverId:null,id:null,status:null,cwd:null,lastError:null,archivedAt:null,requiresAttention:!1,attentionReason:null};function Se(e,t,n){const s=he(e,t,n);return s?{serverId:s.serverId,id:s.id,provider:s.provider,status:s.status,cwd:s.cwd,workspaceId:s.workspaceId,capabilities:s.capabilities,currentModeId:s.currentModeId,model:s.model,thinkingOptionId:s.thinkingOptionId,runtimeInfo:s.runtimeInfo,features:s.features,lastError:s.lastError??null,artifacts:s.artifacts,companionEntries:s.companionEntries,archivedAt:s.archivedAt??null,requiresAttention:s.requiresAttention??!1,attentionReason:s.attentionReason??null}:me}function Ie(e,t){return e.serverId&&e.id&&e.status&&e.cwd?{serverId:e.serverId,id:e.id,provider:e.provider,status:e.status,cwd:e.cwd,workspaceId:e.workspaceId,capabilities:e.capabilities,currentModeId:e.currentModeId,model:e.model,thinkingOptionId:e.thinkingOptionId,runtimeInfo:e.runtimeInfo,features:e.features,lastError:e.lastError??null,projectPlacement:t}:null}function ve(e){const o=(0,s.c)(15),{message:c,onRetry:l}=e,{t:u}=(0,p.useTranslation)();let f,h,S,I,v,y;return o[0]!==u?(f=u("agentPanel.states.failedToLoad"),o[0]=u,o[1]=f):f=o[1],o[2]!==f?(h=(0,fe.jsx)(n.Text,{style:nt.errorText,children:f}),o[2]=f,o[3]=h):h=o[3],o[4]!==c?(S=(0,fe.jsx)(n.Text,{style:nt.statusText,children:c}),o[4]=c,o[5]=S):S=o[5],o[6]!==u?(I=u("common.actions.retry"),o[6]=u,o[7]=I):I=o[7],o[8]!==l||o[9]!==I?(v=(0,fe.jsx)(t.View,{style:nt.errorAction,children:(0,fe.jsx)(a.Button,{size:"sm",variant:"secondary",onPress:l,testID:"agent-load-error-retry",children:I})}),o[8]=l,o[9]=I,o[10]=v):v=o[10],o[11]!==h||o[12]!==S||o[13]!==v?(y=(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-load-error",children:(0,fe.jsxs)(t.View,{style:nt.errorContainer,children:[h,S,v]})}),o[11]=h,o[12]=S,o[13]=v,o[14]=y):y=o[14],y}function ye(e){const{viewState:s,effectiveAgent:o,t:a,onRetryLoad:c}=e;return"not_found"===s.tag?(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-not-found",children:(0,fe.jsx)(t.View,{style:nt.errorContainer,children:(0,fe.jsx)(n.Text,{style:nt.errorText,children:a("agentPanel.states.notFound")})})}):"error"===s.tag?(0,fe.jsx)(ve,{message:s.message,onRetry:c}):"boot"!==s.tag&&o?null:(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-loading",children:(0,fe.jsx)(t.View,{style:nt.errorContainer,children:(0,fe.jsx)(Xe,{size:"large",uniProps:Ye})})})}function Ae(e){return e?e.split(/[-_\s]+/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "):"Agent"}function xe(e){if("string"!=typeof e)return null;const t=e.trim();return t?"new agent"===t.toLowerCase()?null:t:null}function we(e){const t=(0,de.normalizeAgentSnapshot)(e.result.agent,e.serverId),n=(0,ue.applyLegacyDaemonWorkspaceOwnership)({serverId:e.serverId,agent:Object.assign({},t,{projectPlacement:e.result.project})}),s=se.useSessionStore.getState();var a;return!(a=n).archivedAt&&Boolean(a.projectPlacement)?(0,o.getHostRuntimeStore)().acceptAgentSnapshot(e.serverId,n):s.setAgentDetails(e.serverId,e=>{const t=new Map(e);return t.set(n.id,n),t}),s.setPendingPermissions(e.serverId,e=>{const t=new Map(e);for(const[e,s]of t.entries())s.agentId===n.id&&t.delete(e);for(const e of n.pendingPermissions){const s=(0,de.derivePendingPermissionKey)(n.id,e);t.set(s,{key:s,agentId:n.id,request:e})}return t}),n}function Ce(){const e=(0,s.c)(6),{serverId:t,workspaceId:n,target:o,openFileInWorkspace:a}=(0,$.usePaneContext)(),{isInteractive:c}=(0,$.usePaneFocus)();let l;return(0,S.default)("agent"===o.kind,"AgentPanel requires agent target"),e[0]!==c||e[1]!==a||e[2]!==t||e[3]!==o.agentId||e[4]!==n?(l=(0,fe.jsx)(k.RetainedChatContent,{children:(0,fe.jsx)(He,{serverId:t,workspaceId:n,agentId:o.agentId,isPaneFocused:c,onOpenWorkspaceFile:a})}),e[0]=c,e[1]=a,e[2]=t,e[3]=o.agentId,e[4]=n,e[5]=l):l=e[5],l}function be(){const e=(0,s.c)(13),{serverId:t,workspaceId:n,tabId:a,target:c,openFileInWorkspace:l,openImportSheet:u,retargetCurrentTab:p}=(0,$.usePaneContext)(),{isInteractive:f}=(0,$.usePaneFocus)();let h;(0,S.default)("draft"===c.kind,"DraftPanel requires draft target"),e[0]!==p||e[1]!==t?(h=e=>{const n=(0,de.normalizeAgentSnapshot)(e,t),s=(0,ue.applyLegacyDaemonWorkspaceOwnership)({serverId:t,agent:n});(0,o.getHostRuntimeStore)().acceptAgentSnapshot(t,s),p({kind:"agent",agentId:e.id})},e[0]=p,e[1]=t,e[2]=h):h=e[2];const I=h;let v;return e[3]!==I||e[4]!==f||e[5]!==l||e[6]!==u||e[7]!==t||e[8]!==a||e[9]!==c.draftId||e[10]!==c.setup||e[11]!==n?(v=(0,fe.jsx)(X.WorkspaceDraftAgentTab,{serverId:t,workspaceId:n,tabId:a,draftId:c.draftId,initialSetup:c.setup,isPaneFocused:f,onOpenWorkspaceFile:l,onCreated:I,onOpenImportSheet:u}),e[3]=I,e[4]=f,e[5]=l,e[6]=u,e[7]=t,e[8]=a,e[9]=c.draftId,e[10]=c.setup,e[11]=n,e[12]=v):v=e[12],v}function ke(){const e=(0,s.c)(2),{target:t}=(0,$.usePaneContext)();if("draft"===t.kind){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=(0,fe.jsx)(be,{}),e[0]=t):t=e[0],t}if("agent"===t.kind){let t;return e[1]===Symbol.for("react.memo_cache_sentinel")?(t=(0,fe.jsx)(Ce,{}),e[1]=t):t=e[1],t}(0,S.default)(!1,"AgentConversationPanel requires an agent or draft target")}const Pe=(0,U.definePanel)("agent",{component:ke,useDescriptor:function(e,t){const n=(0,s.c)(23);let o;n[0]!==t.serverId||n[1]!==e.agentId?(o=n=>{const s=n.sessions[t.serverId],o=s?.agents?.get(e.agentId)??s?.agentDetails?.get(e.agentId)??null;return{provider:o?.provider??"codex",title:o?.title??null,status:o?.status??null,pendingPermissionCount:o?.pendingPermissions.length??0,requiresAttention:o?.requiresAttention??!1,attentionReason:o?.attentionReason??null,isTurnActive:(0,se.selectAgentTurnPresentation)(s,e.agentId).isActive}},n[0]=t.serverId,n[1]=e.agentId,n[2]=o):o=n[2];const a=(0,se.useSessionStore)((0,I.useShallow)(o)),c=a.provider;let l;n[3]!==a.title?(l=xe(a.title),n[3]=a.title,n[4]=l):l=n[4];const u=l,p=(0,D.useProviderIcon)(c,t.serverId),f=u??"";let h;n[5]!==c?(h=Ae(c),n[5]=c,n[6]=h):h=n[6];const S=`${h} agent`;let v;n[7]!==u||n[8]!==c?(v=u??`${Ae(c)} agent`,n[7]=u,n[8]=c,n[9]=v):v=n[9];const y=u?"ready":"loading";let A,x;return n[10]!==a.attentionReason||n[11]!==a.isTurnActive||n[12]!==a.pendingPermissionCount||n[13]!==a.requiresAttention||n[14]!==a.status?(A=a.status?(0,ge.deriveSidebarStateBucket)({status:a.isTurnActive?"running":a.status,pendingPermissionCount:a.pendingPermissionCount,requiresAttention:a.requiresAttention,attentionReason:a.attentionReason}):null,n[10]=a.attentionReason,n[11]=a.isTurnActive,n[12]=a.pendingPermissionCount,n[13]=a.requiresAttention,n[14]=a.status,n[15]=A):A=n[15],n[16]!==p||n[17]!==f||n[18]!==S||n[19]!==v||n[20]!==y||n[21]!==A?(x={label:f,subtitle:S,tooltip:v,titleState:y,icon:p,statusBucket:A},n[16]=p,n[17]=f,n[18]=S,n[19]=v,n[20]=y,n[21]=A,n[22]=x):x=n[22],x}});const je=[],Te=[],Re=new Map,Fe=[];function De(e){return!!e.agentId&&Object.values(e.pendingByDraftId).some(t=>"sent"===t.lifecycle&&t.serverId===e.serverId&&t.agentId===e.agentId)}function Oe(e){return e instanceof Error?e.message:String(e)}function We(e){return/agent not found|not found/i.test(e)}function He(e){const t=(0,s.c)(28),{serverId:n,workspaceId:a,agentId:c,isPaneFocused:l,onOpenWorkspaceFile:u}=e,{t:f}=(0,p.useTranslation)();let h;t[0]!==c?(h=c.trim()||void 0,t[0]=c,t[1]=h):h=t[1];const S=h;let I;t[2]!==n?(I=n.trim()||void 0,t[2]=n,t[3]=I):I=t[3];const v=I,y=(0,o.useHosts)(),A=v??"",x=(0,o.useHostRuntimeClient)(A),w=(0,o.useHostRuntimeIsConnected)(A),C=(0,o.useHostRuntimeConnectionStatus)(A),b=(0,o.useHostRuntimeLastError)(A);let k;t[4]!==S||t[5]!==v?(k=e=>{if(!v||!S)return!1;const t=e.sessions[v];return Boolean(t?.agents.has(S)||t?.agentDetails.has(S))},t[4]=S,t[5]=v,t[6]=k):k=t[6];const P=(0,se.useSessionStore)(k),j=v??null;let T;t[7]!==j||t[8]!==y?(T=j?y.find(e=>e.serverId===j)??null:null,t[7]=j,t[8]=y,t[9]=T):T=t[9];const R=T;let F;t[10]!==j||t[11]!==R?.label||t[12]!==f?(F=R?.label??j??f("agentPanel.unavailable.selectedHost"),t[10]=j,t[11]=R?.label,t[12]=f,t[13]=F):F=t[13];const _=F,D=Boolean(j&&!R),O=D&&"connecting"===C?"offline":C,W=b;if(!v||!x&&!P){let e;return t[14]!==O||t[15]!==D||t[16]!==W||t[17]!==_||t[18]!==f?(e=(0,fe.jsx)(Qe,{serverLabel:_,connectionStatus:O,lastError:W,isUnknownDaemon:D,t:f}),t[14]=O,t[15]=D,t[16]=W,t[17]=_,t[18]=f,t[19]=e):e=t[19],e}let H;return t[20]!==l||t[21]!==u||t[22]!==S||t[23]!==v||t[24]!==x||t[25]!==w||t[26]!==a?(H=(0,fe.jsx)(Ve,{serverId:v,workspaceId:a,agentId:S,isPaneFocused:l,client:x,isConnected:w,onOpenWorkspaceFile:u}),t[20]=l,t[21]=u,t[22]=S,t[23]=v,t[24]=x,t[25]=w,t[26]=a,t[27]=H):H=t[27],H}function Ve({serverId:e,workspaceId:s,agentId:o,isPaneFocused:a,client:c,isConnected:l,onOpenWorkspaceFile:f}){const{t:h}=(0,p.useTranslation)(),{isArchivingAgent:S}=(0,E.useArchiveAgent)(),y=(0,se.useSessionStore)(t=>Boolean(t.sessions[e])),A=(0,v.useStoreWithEqualityFn)(se.useSessionStore,t=>{if(!o)return null;const n=t.sessions[e];return n?.agents?.get(o)?.projectPlacement??n?.agentDetails?.get(o)?.projectPlacement??null},(e,t)=>e===t||JSON.stringify(e)===JSON.stringify(t)),x=(0,se.useSessionStore)((0,I.useShallow)(t=>Se(t,e,o))),[w,C]=(0,u.useState)({tag:"idle"}),b=(0,u.useRef)(0),k=(0,u.useCallback)(()=>C({tag:"idle"}),[]);if((0,u.useEffect)(()=>{b.current+=1,C({tag:"idle"})},[o,e]),(0,u.useEffect)(()=>{if(!o)return;if(x.id)return void("idle"!==w.tag&&C({tag:"idle"}));if(!c||!l||!y)return;if("loading"===w.tag||"not_found"===w.tag)return;C({tag:"loading"});const t=++b.current;c.fetchAgent({agentId:o}).then(n=>{t===b.current&&(n?(we({serverId:e,result:n}),C({tag:"idle"})):C({tag:"not_found",message:`Agent not found: ${o}`}))}).catch(e=>{if(t!==b.current)return;const n=Oe(e);We(n)?C({tag:"not_found",message:n}):C({tag:"error",message:n})})},[o,x.id,c,y,l,w.tag,e]),"not_found"===w.tag)return(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-not-found",children:(0,fe.jsx)(t.View,{style:nt.errorContainer,children:(0,fe.jsx)(n.Text,{style:nt.errorText,children:h("agentPanel.states.notFound")})})});if("error"===w.tag)return(0,fe.jsx)(ve,{message:w.message,onRetry:k});return(x.serverId&&x.id&&x.status&&x.cwd?{serverId:x.serverId,id:x.id,provider:x.provider,status:x.status,cwd:x.cwd,workspaceId:x.workspaceId,capabilities:x.capabilities,currentModeId:x.currentModeId,model:x.model,thinkingOptionId:x.thinkingOptionId,runtimeInfo:x.runtimeInfo,features:x.features,lastError:x.lastError??null,projectPlacement:A}:null)?(0,fe.jsx)(Me,{serverId:e,workspaceId:s,agentId:o,isPaneFocused:a,client:c,isConnected:l,onOpenWorkspaceFile:f}):(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-loading",children:(0,fe.jsx)(t.View,{style:nt.errorContainer,children:(0,fe.jsx)(Xe,{size:"large",uniProps:Ye})})})}function Me({serverId:e,workspaceId:t,agentId:n,isPaneFocused:s,client:o,isConnected:a,onOpenWorkspaceFile:c}){const{t:l}=(0,p.useTranslation)(),f=(0,b.useRetainedPanelActive)(),{api:h,toast:y,dismiss:A}=(0,O.useToastHost)(),{isArchivingAgent:x}=(0,E.useArchiveAgent)(),w=(0,u.useRef)(null),C=(0,u.useRef)(()=>{}),k=(0,u.useRef)(s),P=(0,u.useRef)(0),j=(0,u.useRef)(null),T=(0,se.useSessionStore)((0,I.useShallow)(t=>Se(t,e,n))),R=(0,v.useStoreWithEqualityFn)(se.useSessionStore,t=>{if(!n)return null;const s=t.sessions[e];return s?.agents?.get(n)?.projectPlacement??s?.agentDetails?.get(n)?.projectPlacement??null},(e,t)=>e===t||JSON.stringify(e)===JSON.stringify(t)),F=(0,se.useSessionStore)(t=>!!n&&(t.sessions[e]?.initializingAgents?.get(n)??!1)),_=(0,se.useSessionStore)(t=>t.sessions[e]?.historySyncGeneration??0),D=(0,se.useSessionStore)(t=>n?(0,se.selectAgentTimelineState)(t.sessions[e],n).status:"cold"),W="synced"===D,H=(0,se.useSessionStore)(t=>n?t.sessions[e]?.agentHistorySyncGeneration?.get(n)??-1:-1),V=(0,se.useSessionStore)(t=>t.sessions[e]?.viewedTimelineSync??null),z=(0,u.useCallback)(e=>V?.subscribe(e)??(()=>{}),[V]),q=(0,u.useCallback)(()=>n&&V?V.getAgentTimelineStatus(n):"ready",[n,V]),K=(0,u.useSyncExternalStore)(z,q,q),$=f?K:"ready",U=(N={agentId:n,status:$,sync:V}).agentId&&"error"===N.status&&N.sync?N.sync.getAgentTimelineError(N.agentId):null;var N;const J=(0,te.useCreateFlowStore)(t=>De({pendingByDraftId:t.pendingByDraftId,serverId:e,agentId:n})),G=(0,se.useSessionStore)(t=>Boolean(t.sessions[e])),[Z,X]=(0,u.useState)({kind:"idle"}),Y=W||"painted"===D,ee=(0,M.useAgentAttentionClear)({agentId:n,client:o,isConnected:a,requiresAttention:T.requiresAttention,attentionReason:T.attentionReason,isScreenFocused:s});(0,u.useEffect)(()=>{C.current=ee.clearOnAgentBlur},[ee.clearOnAgentBlur]);const ne=Boolean(n&&x({serverId:e,agentId:n}));(0,u.useEffect)(()=>{k.current&&!s&&C.current(),k.current=s},[s]),(0,u.useEffect)(()=>()=>{k.current&&C.current()},[]);const re=!!n&&F,ie=(0,u.useMemo)(()=>{if(!n||!re)return!1;const t=(0,le.getInitKey)(e,n);return Boolean((0,le.getInitDeferred)(t))},[n,re,e]),oe=(0,u.useMemo)(()=>!!n&&H<_,[H,n,_]),ae=(0,u.useMemo)(()=>Ie(T,R),[T,R]),ce=(0,u.useMemo)(()=>J&&n?{kind:"optimistic-create",agent:{serverId:e,id:n,status:"running",cwd:ae?.cwd??".",projectPlacement:ae?.projectPlacement??null}}:{kind:"none"},[ae,n,J,e]),de=(0,B.useAgentScreenStateMachine)({routeKey:`${e}:${n??""}`,input:{agent:ae??null,isArchived:null!==T.archivedAt,missingAgentState:Z,isConnected:a,isArchivingCurrentAgent:ne,isHistorySyncing:ie,needsAuthoritativeSync:oe,visibilityCatchUpStatus:$,visibilityCatchUpError:U,continuity:ce,hasHydratedHistoryBefore:Y}}),ue="ready"===de.tag?de.agent:null,ge=n?`${e}:${n}`:null;j.current=(0,Q.deriveRouteBottomAnchorIntent)({cachedIntent:j.current,routeKey:ge,hasAppliedAuthoritativeHistoryAtEntry:W});const pe=(0,u.useMemo)(()=>(0,Q.deriveRouteBottomAnchorRequest)({intent:j.current,effectiveAgentId:ue?.id??null}),[ue?.id]),he=(0,u.useCallback)(e=>{n&&w.current?.prepareForViewportChange()},[n]),me=(0,u.useCallback)(()=>{n&&w.current?.scrollToBottom("message-sent")},[n]),ve=(0,u.useCallback)(()=>{w.current?.scrollToBottom("rewind")},[]),Ae=(0,u.useCallback)(()=>{X({kind:"idle"}),n&&V&&V.retryVisibleAgentTimeline(n)},[n,V]),xe=(0,u.useCallback)(()=>{n&&V&&V.retryVisibleAgentTimeline(n)},[n,V]);(0,u.useEffect)(()=>{P.current+=1,X({kind:"idle"})},[n,e]),(0,u.useEffect)(()=>{if(!n)return;if(T.archivedAt)return;if(T.id&&W)return void("resolving"!==Z.kind&&"not_found"!==Z.kind&&"error"!==Z.kind||X(L.reconcileMissingAgentStateWithPresentAgent));if(!(o&&V&&f&&a&&G&&"ready"===$))return;if("resolving"===Z.kind||"not_found"===Z.kind||"error"===Z.kind)return;X({kind:"resolving"});const t=++P.current;Promise.resolve().then(async()=>{if(t!==P.current)return;const s=se.useSessionStore.getState().sessions[e];if(!(s?.agents.get(n)??s?.agentDetails.get(n))){const s=await o.fetchAgent({agentId:n});if(t!==P.current)return;if(!s)return void X({kind:"not_found",message:`Agent not found: ${n}`});we({serverId:e,result:s})}t===P.current&&X({kind:"idle"})}).catch(e=>{if(t!==P.current)return;const n=Oe(e);We(n)?X({kind:"not_found",message:n}):X({kind:"error",message:n})})},[T.id,T.archivedAt,W,n,o,G,a,f,Z.kind,e,V,$]);const Ce=ye({viewState:de,effectiveAgent:ue,t:l,onRetryLoad:Ae});if(Ce)return Ce;(0,S.default)(n,"agent id is defined when agent content is ready"),(0,S.default)(ue,"effectiveAgent is defined when the non-ready view is absent");const be=T.cwd;(0,S.default)(be,"agent cwd is defined when agent content is ready");const ke="ready"===de.tag&&"catching_up"===de.sync.status&&"overlay"===de.sync.ui,Pe="ready"===de.tag&&"sync_error"===de.sync.status,je="ready"===de.tag&&"sync_error"===de.sync.status&&de.sync.isRetrying;return(0,fe.jsx)(Be,{serverId:e,workspaceId:t,agentId:n,isPaneFocused:s,isArchivingCurrentAgent:ne,agentState:T,effectiveAgent:ue,routeBottomAnchorRequest:pe,hasAppliedAuthoritativeHistory:W,toastApi:h,toast:y,dismiss:A,streamViewRef:w,handleComposerHeightChange:he,handleMessageSent:me,handleRewindComplete:ve,timelineSync:f&&"ready"===de.tag?de.sync:null,showHistorySyncOverlay:ke,showHistorySyncError:Pe,isRetryingHistorySync:je,cwd:be,retryTimelineSync:xe,onAttentionInputFocus:ee.clearOnInputFocus,onAttentionPromptSend:ee.clearOnPromptSend,onOpenWorkspaceFile:c})}const ze=[],Be=(0,u.memo)(function(e){const n=(0,s.c)(164),{serverId:o,workspaceId:a,agentId:c,isPaneFocused:l,isArchivingCurrentAgent:u,agentState:f,effectiveAgent:h,routeBottomAnchorRequest:S,hasAppliedAuthoritativeHistory:I,toastApi:v,toast:y,dismiss:A,streamViewRef:w,handleComposerHeightChange:C,handleMessageSent:k,handleRewindComplete:j,timelineSync:T,showHistorySyncOverlay:R,showHistorySyncError:F,isRetryingHistorySync:D,retryTimelineSync:O,cwd:W,onAttentionInputFocus:V,onAttentionPromptSend:M,onOpenWorkspaceFile:B}=e,{t:E}=(0,p.useTranslation)();let q;n[0]!==c||n[1]!==o?(q=e=>e.selectedViews[`${o}:${c}`]||"chat",n[0]=c,n[1]=o,n[2]=q):q=n[2];const L=(0,ee.useAgentViewStore)(q),$=(0,ee.useAgentViewStore)(st),U="artifacts"!==L;let G;n[3]!==c||n[4]!==o||n[5]!==$?(G=e=>{$(o,c,e)},n[3]=c,n[4]=o,n[5]=$,n[6]=G):G=n[6];const Q=G;let X;n[7]!==Q?(X=()=>{Q("chat")},n[7]=Q,n[8]=X):X=n[8];const te=X;let re;n[9]!==te||n[10]!==w?(re=()=>{te(),w.current?.scrollToBottom("jump-to-bottom")},n[9]=te,n[10]=w,n[11]=re):re=n[11];const ie=re,oe=(0,Z.useHostFeature)(o,"companionStreamPortV1"),ae=(0,H.useIsCompactFormFactor)();let le;n[12]!==c||n[13]!==o?(le={serverId:o,parentAgentId:c},n[12]=c,n[13]=o,n[14]=le):le=n[14];const de=(0,ce.useSubagentsForParent)(le);let ue;n[15]!==c||n[16]!==o?(ue=e=>e.sessions[o]?.agentTasks.get(c),n[15]=c,n[16]=o,n[17]=ue):ue=n[17];const ge=(0,se.useSessionStore)(ue);let pe;n[18]!==c||n[19]!==o||n[20]!==de?(pe={serverId:o,parentAgentId:c,rows:de},n[18]=c,n[19]=o,n[20]=de,n[21]=pe):pe=n[21];const he=(0,ce.useArchiveFinishedSubagents)(pe),me=(0,J.useHasPluginComposerPills)(o,a,c),Se=!f.archivedAt&&!u;let Ie;n[22]!==he.status||n[23]!==me||n[24]!==de||n[25]!==ge?(Ie=(0,Y.hasAgentTracks)({subagentRows:de,tasks:ge,archiveFinishedStatus:he.status,hasPluginComposerPills:me}),n[22]=he.status,n[23]=me,n[24]=de,n[25]=ge,n[26]=Ie):Ie=n[26];const ve=Ie;let ye,Ae;n[27]!==c||n[28]!==o?(ye=(0,ne.buildDraftStoreKey)({serverId:o,agentId:c}),n[27]=c,n[28]=o,n[29]=ye):ye=n[29],n[30]!==ye?(Ae={draftKey:ye},n[30]=ye,n[31]=Ae):Ae=n[31];const xe=(0,z.useAgentInputDraft)(Ae),{textSource:we,editText:Ce,replaceText:be,textReplacement:ke,attachments:Pe,setAttachments:je,clear:Te,isHydrated:Re,attachmentFocusRequestId:Fe,composerState:De}=xe;let Oe;n[32]!==Fe||n[33]!==Pe||n[34]!==Te||n[35]!==De||n[36]!==Ce||n[37]!==Re||n[38]!==be||n[39]!==je||n[40]!==ke||n[41]!==we?(Oe={textSource:we,editText:Ce,replaceText:be,textReplacement:ke,attachments:Pe,setAttachments:je,clear:Te,isHydrated:Re,attachmentFocusRequestId:Fe,composerState:De},n[32]=Fe,n[33]=Pe,n[34]=Te,n[35]=De,n[36]=Ce,n[37]=Re,n[38]=be,n[39]=je,n[40]=ke,n[41]=we,n[42]=Oe):Oe=n[42];const We=Oe,He=`AgentComposerSection:${c}`,Ve=l&&U;let Me,Be;n[43]!==c||n[44]!==We||n[45]!==f.archivedAt||n[46]!==W||n[47]!==C||n[48]!==k||n[49]!==u||n[50]!==V||n[51]!==M||n[52]!==o||n[53]!==Ve?(Me=(0,fe.jsx)($e,{agentId:c,serverId:o,isPaneFocused:Ve,isArchivingCurrentAgent:u,archivedAt:f.archivedAt,cwd:W,isSubmitLoading:!1,agentInputDraft:We,onAttentionInputFocus:V,onAttentionPromptSend:M,onComposerHeightChange:C,onMessageSent:k}),n[43]=c,n[44]=We,n[45]=f.archivedAt,n[46]=W,n[47]=C,n[48]=k,n[49]=u,n[50]=V,n[51]=M,n[52]=o,n[53]=Ve,n[54]=Me):Me=n[54],n[55]!==He||n[56]!==Me?(Be=(0,fe.jsx)(N.RenderProfile,{id:He,children:Me}),n[55]=He,n[56]=Me,n[57]=Be):Be=n[57];const Ue=Be,Ne=`AgentStreamSection:${c}`;let Je,Ge,Ze,Qe,et;n[58]!==c||n[59]!==h||n[60]!==Se||n[61]!==I||n[62]!==ve||n[63]!==B||n[64]!==S||n[65]!==o||n[66]!==w||n[67]!==v||n[68]!==a?(Je=(0,fe.jsx)(Ke,{streamViewRef:w,serverId:o,workspaceId:a,agentId:c,agent:h,routeBottomAnchorRequest:S,hasAppliedAuthoritativeHistory:I,hasActiveComposer:Se,hasVisibleAgentTracks:ve,toast:v,onOpenWorkspaceFile:B}),n[58]=c,n[59]=h,n[60]=Se,n[61]=I,n[62]=ve,n[63]=B,n[64]=S,n[65]=o,n[66]=w,n[67]=v,n[68]=a,n[69]=Je):Je=n[69],n[70]!==Ne||n[71]!==Je?(Ge=(0,fe.jsx)(N.RenderProfile,{id:Ne,children:Je}),n[70]=Ne,n[71]=Je,n[72]=Ge):Ge=n[72],n[73]!==c||n[74]!==he.archiveFinished||n[75]!==he.status||n[76]!==W||n[77]!==Se||n[78]!==me||n[79]!==o||n[80]!==de||n[81]!==ge||n[82]!==a?(Ze=Se?(0,fe.jsx)(Y.AgentTracks,{serverId:o,workspaceId:a,agentId:c,cwd:W,subagentRows:de,tasks:ge,archiveFinishedStatus:he.status,onArchiveFinished:he.archiveFinished,hasPluginComposerPills:me}):null,n[73]=c,n[74]=he.archiveFinished,n[75]=he.status,n[76]=W,n[77]=Se,n[78]=me,n[79]=o,n[80]=de,n[81]=ge,n[82]=a,n[83]=Ze):Ze=n[83],n[84]!==Ge||n[85]!==Ze?(Qe=(0,fe.jsxs)(t.View,{style:tt.content,children:[Ge,Ze]}),n[84]=Ge,n[85]=Ze,n[86]=Qe):Qe=n[86],n[87]!==U||n[88]!==Qe?(et=(0,fe.jsx)(b.RetainedPanel,{active:U,children:Qe}),n[87]=U,n[88]=Qe,n[89]=et):et=n[89];const ot=et;let at,ct,lt,dt,ut;n[90]!==E?(at=E("agentPanel.artifacts.chatTab"),n[90]=E,n[91]=at):at=n[91],n[92]!==at?(ct={value:"chat",label:at,icon:rt,testID:"agent-view-chat"},n[92]=at,n[93]=ct):ct=n[93],n[94]!==E?(lt=E("agentPanel.stream.tab"),n[94]=E,n[95]=lt):lt=n[95],n[96]!==lt?(dt={value:"artifacts",label:lt,icon:it,testID:"agent-view-artifacts"},n[96]=lt,n[97]=dt):dt=n[97],n[98]!==ct||n[99]!==dt?(ut=[ct,dt],n[98]=ct,n[99]=dt,n[100]=ut):ut=n[100];const gt=ut,pt=ae?"md":"xs",ft=ae&&nt.mobileSegmentedControl;let ht;n[101]!==ft?(ht=[nt.viewSwitcher,ft],n[101]=ft,n[102]=ht):ht=n[102];const mt=ae?nt.compactSegment:void 0;let St,It,vt,yt;n[103]!==Q||n[104]!==ae||n[105]!==L||n[106]!==pt||n[107]!==ht||n[108]!==mt||n[109]!==gt?(St=(0,fe.jsx)(P.SegmentedControl,{options:gt,value:L,onValueChange:Q,size:pt,textWrap:ae,testID:"agent-view-switcher",style:ht,segmentStyle:mt}),n[103]=Q,n[104]=ae,n[105]=L,n[106]=pt,n[107]=ht,n[108]=mt,n[109]=gt,n[110]=St):St=n[110],n[111]!==c||n[112]!==f.artifacts||n[113]!==f.companionEntries||n[114]!==oe||n[115]!==W||n[116]!==ie||n[117]!==te||n[118]!==U||n[119]!==B||n[120]!==o||n[121]!==v?(It=U?null:(0,fe.jsx)(x.CompanionFeed,{serverId:o,agentId:c,cwd:W,entries:f.companionEntries??ze,artifacts:f.artifacts??[],isSupported:oe,artifactsSupported:oe,onOpenWorkspaceFile:B,onReturnToChat:te,onReplyInChat:ie,toast:v}),n[111]=c,n[112]=f.artifacts,n[113]=f.companionEntries,n[114]=oe,n[115]=W,n[116]=ie,n[117]=te,n[118]=U,n[119]=B,n[120]=o,n[121]=v,n[122]=It):It=n[122],n[123]!==U||n[124]!==D||n[125]!==O||n[126]!==F?(vt=F&&U?(0,fe.jsx)(Le,{isRetrying:D,onRetry:O}):null,n[123]=U,n[124]=D,n[125]=O,n[126]=F,n[127]=vt):vt=n[127],n[128]!==ot||n[129]!==St||n[130]!==It||n[131]!==vt?(yt=(0,fe.jsxs)(t.View,{style:nt.contentContainer,children:[St,ot,It,vt]}),n[128]=ot,n[129]=St,n[130]=It,n[131]=vt,n[132]=yt):yt=n[132];const At=yt;let xt,wt,Ct;n[133]!==U||n[134]!==R?(xt=R&&U?(0,fe.jsx)(t.View,{style:nt.historySyncOverlay,testID:"agent-history-overlay",children:(0,fe.jsx)(Xe,{size:"large",uniProps:Ye})}):null,n[133]=U,n[134]=R,n[135]=xt):xt=n[135],n[136]!==A||n[137]!==T||n[138]!==y?(wt=(0,fe.jsx)(K.TimelineSyncStatus,{sync:T,toast:y,onDismiss:A}),n[136]=A,n[137]=T,n[138]=y,n[139]=wt):wt=n[139],n[140]!==xt||n[141]!==wt?(Ct=(0,fe.jsxs)(fe.Fragment,{children:[xt,wt]}),n[140]=xt,n[141]=wt,n[142]=Ct):Ct=n[142];const bt=Ct,kt=U?void 0:nt.hiddenPane;let Pt,jt;n[143]!==Ue||n[144]!==kt?(Pt=(0,fe.jsx)(t.View,{collapsable:!1,style:kt,children:Ue}),n[143]=Ue,n[144]=kt,n[145]=Pt):Pt=n[145],n[146]!==U||n[147]!==Pt?(jt=(0,fe.jsx)(b.RetainedPanelActivity,{active:U,children:Pt}),n[146]=U,n[147]=Pt,n[148]=jt):jt=n[148];const Tt=jt;let Rt;n[149]!==Tt||n[150]!==At||n[151]!==bt||n[152]!==u?(Rt=(0,fe.jsxs)(qe,{disabled:u,children:[At,Tt,bt]}),n[149]=Tt,n[150]=At,n[151]=bt,n[152]=u,n[153]=Rt):Rt=n[153];const Ft=Rt;let _t,Dt,Ot;return n[154]!==u?(_t=(0,fe.jsx)(Ee,{isArchivingCurrentAgent:u}),n[154]=u,n[155]=_t):_t=n[155],n[156]!==Ft||n[157]!==_t?(Dt=(0,fe.jsxs)(t.View,{style:nt.root,children:[Ft,_t]}),n[156]=Ft,n[157]=_t,n[158]=Dt):Dt=n[158],n[159]!==We.replaceText||n[160]!==We.textSource||n[161]!==j||n[162]!==Dt?(Ot=(0,fe.jsx)(_.RewindComposerRestoreProvider,{textSource:We.textSource,setText:We.replaceText,onRewindComplete:j,children:Dt}),n[159]=We.replaceText,n[160]=We.textSource,n[161]=j,n[162]=Dt,n[163]=Ot):Ot=n[163],Ot});function Ee(e){const o=(0,s.c)(12),{isArchivingCurrentAgent:a}=e,{t:c}=(0,p.useTranslation)();if(!a)return null;let l,u,f,h,S,I;return o[0]===Symbol.for("react.memo_cache_sentinel")?(l=(0,fe.jsx)(Xe,{size:"large",uniProps:et}),o[0]=l):l=o[0],o[1]!==c?(u=c("agentPanel.states.archivingTitle"),o[1]=c,o[2]=u):u=o[2],o[3]!==u?(f=(0,fe.jsx)(n.Text,{style:nt.archivingTitle,children:u}),o[3]=u,o[4]=f):f=o[4],o[5]!==c?(h=c("agentPanel.states.archivingSubtitle"),o[5]=c,o[6]=h):h=o[6],o[7]!==h?(S=(0,fe.jsx)(n.Text,{style:nt.archivingSubtitle,children:h}),o[7]=h,o[8]=S):S=o[8],o[9]!==f||o[10]!==S?(I=(0,fe.jsxs)(t.View,{style:nt.archivingOverlay,testID:"agent-archiving-overlay",children:[l,f,S]}),o[9]=f,o[10]=S,o[11]=I):I=o[11],I}function qe(e){const t=(0,s.c)(5),{children:n,disabled:o}=e;let a,c;return t[0]!==n?(a=(0,fe.jsx)(w.ComposerDock,{children:n}),t[0]=n,t[1]=a):a=t[1],t[2]!==o||t[3]!==a?(c=(0,fe.jsx)(C.FileDropZone,{style:nt.container,disabled:o,children:a}),t[2]=o,t[3]=a,t[4]=c):c=t[4],c}function Le(e){const o=(0,s.c)(14),{isRetrying:c,onRetry:l}=e,{t:u}=(0,p.useTranslation)();let f,h,S,I,v;return o[0]!==u?(f=u("agentPanel.states.timelineSyncFailed"),o[0]=u,o[1]=f):f=o[1],o[2]!==f?(h=(0,fe.jsx)(n.Text,{style:nt.timelineSyncCalloutText,children:f}),o[2]=f,o[3]=h):h=o[3],o[4]!==c||o[5]!==u?(S=u(c?"agentPanel.states.timelineSyncRetrying":"common.actions.retry"),o[4]=c,o[5]=u,o[6]=S):S=o[6],o[7]!==c||o[8]!==l||o[9]!==S?(I=(0,fe.jsx)(a.Button,{size:"sm",variant:"secondary",onPress:l,disabled:c,testID:"agent-timeline-sync-retry",children:S}),o[7]=c,o[8]=l,o[9]=S,o[10]=I):I=o[10],o[11]!==h||o[12]!==I?(v=(0,fe.jsx)(t.View,{style:nt.timelineSyncCalloutRail,children:(0,fe.jsx)(t.View,{style:nt.timelineSyncCalloutContent,children:(0,fe.jsxs)(t.View,{style:nt.timelineSyncCallout,testID:"agent-timeline-sync-error",children:[h,I]})})}),o[11]=h,o[12]=I,o[13]=v):v=o[13],v}const Ke=(0,u.memo)(function({streamViewRef:e,serverId:t,workspaceId:n,agentId:s,agent:o,routeBottomAnchorRequest:a,hasAppliedAuthoritativeHistory:c,hasActiveComposer:l,hasVisibleAgentTracks:p,toast:f,onOpenWorkspaceFile:h}){const S=(0,H.useIsCompactFormFactor)(),A=(0,T.useWorkspaceHasDiffStat)(t,n),x=l&&(p||A),w=x?(0,R.resolveComposerTrackTailClearance)(S):0,C=x?(0,R.resolveComposerTrackControlClearance)(S):0,b=(0,se.useSessionStore)(e=>s?e.sessions[t]?.agentStreamTail?.get(s):void 0),k=(0,se.useSessionStore)((0,I.useShallow)(e=>s?(0,F.getActiveMessageSubmissions)(e.sessions[t]?.messageSubmissions.get(s)):Te)),P=(0,se.useSessionStore)((0,I.useShallow)(e=>s?(0,se.selectAgentTurnPresentation)(e.sessions[t],s):{isActive:!1,isCancelling:!1,startedAt:null,turnId:null})),j=b??je,_=(0,v.useStoreWithEqualityFn)(se.useSessionStore,e=>{if(!s)return Fe;const n=e.sessions[t]?.pendingPermissions;if(!n)return Fe;const o=[];for(const e of n.values())e.agentId===s&&o.push(e);return o.length>0?o:Fe},I.shallow),D=(0,u.useMemo)(()=>0===_.length?Re:new Map(_.map(e=>[e.key,e])),[_]);return(0,fe.jsx)(y.AgentStreamView,{ref:e,agentId:o.id,serverId:t,context:o,streamItems:j,pendingPermissions:D,routeBottomAnchorRequest:a,isAuthoritativeHistoryReady:c,bottomOverlayTailClearance:w,bottomOverlayControlClearance:C,toast:f,pendingMessageSubmissions:k,turnPresentation:P,onOpenWorkspaceFile:h})}),$e=(0,u.memo)(function(e){const t=(0,s.c)(14),{agentId:n,serverId:o,isPaneFocused:a,isArchivingCurrentAgent:c,archivedAt:l,cwd:u,isSubmitLoading:p,agentInputDraft:f,onAttentionInputFocus:h,onAttentionPromptSend:S,onComposerHeightChange:I,onMessageSent:v}=e;if(!n)return null;if(l){let e;return t[0]!==n||t[1]!==o?(e=(0,fe.jsx)(A.ArchivedAgentCallout,{serverId:o,agentId:n}),t[0]=n,t[1]=o,t[2]=e):e=t[2],e}if(c)return null;let y;return t[3]!==n||t[4]!==f||t[5]!==u||t[6]!==a||t[7]!==p||t[8]!==h||t[9]!==S||t[10]!==I||t[11]!==v||t[12]!==o?(y=(0,fe.jsx)(Ue,{agentId:n,serverId:o,isPaneFocused:a,cwd:u,isSubmitLoading:p,agentInputDraft:f,onAttentionInputFocus:h,onAttentionPromptSend:S,onComposerHeightChange:I,onMessageSent:v}),t[3]=n,t[4]=f,t[5]=u,t[6]=a,t[7]=p,t[8]=h,t[9]=S,t[10]=I,t[11]=v,t[12]=o,t[13]=y):y=t[13],y});function Ue(e){const n=(0,s.c)(49),{agentId:o,serverId:a,isPaneFocused:c,cwd:l,isSubmitLoading:u,agentInputDraft:p,onAttentionInputFocus:f,onAttentionPromptSend:h,onComposerHeightChange:S,onMessageSent:I}=e,v=(0,H.useIsCompactFormFactor)();let y;n[0]!==v?(y={initialIsBelow:v},n[0]=v,n[1]=y):y=n[1];const{onLayout:A,isBelow:x}=(0,q.useContainerWidthBelow)(H.COMPACT_FORM_FACTOR_WIDTH,y),w=(0,$.usePaneContext)(),C=(0,ae.useSettings)(Ze),{workspaceId:b,tabId:k,retargetCurrentTab:P}=w,{archiveAgent:T}=(0,E.useArchiveAgent)(),R=(0,re.useWorkspaceLayoutStore)(Ge),F=(0,re.useWorkspaceLayoutStore)(Je),_=(0,re.useWorkspaceLayoutStore)(Ne);let D;n[2]!==l||n[3]!==a||n[4]!==b?(D={serverId:a,cwd:l,workspaceId:b},n[2]=l,n[3]=a,n[4]=b,n[5]=D):D=n[5];const O=(0,W.useWorkspaceAttachmentScopeKey)(D);let M;n[6]!==O?(M=[O],n[6]=O,n[7]=M):M=n[7];const z=M;let B;n[8]!==l||n[9]!==v||n[10]!==C||n[11]!==a||n[12]!==b?(B=e=>{"review"===e.kind&&(0,oe.openWorkspaceChanges)({isCompact:v,workspaceKey:(0,ie.buildWorkspaceTabPersistenceKey)({serverId:a,workspaceId:b}),checkout:{serverId:a,cwd:l,isGit:!0},preferences:C})},n[8]=l,n[9]=v,n[10]=C,n[11]=a,n[12]=b,n[13]=B):B=n[13];const L=B;let K;n[14]!==o||n[15]!==T||n[16]!==R||n[17]!==F||n[18]!==P||n[19]!==a||n[20]!==k||n[21]!==_||n[22]!==b?(K=async e=>{const t=he(se.useSessionStore.getState(),a,o);if(!t)throw new Error("Agent not found");const n=(0,ie.buildWorkspaceTabPersistenceKey)({serverId:a,workspaceId:b});n&&(_(n,o),F(n,o)),"replace-agent-with-draft"===e.kind?P({kind:"draft",draftId:(0,ne.generateDraftId)(),setup:(0,pe.buildDraftAgentSetup)(t)}):n&&R(n,k),await T({serverId:a,agentId:o})},n[14]=o,n[15]=T,n[16]=R,n[17]=F,n[18]=P,n[19]=a,n[20]=k,n[21]=_,n[22]=b,n[23]=K):K=n[23];const U=K,N=p.textSource,J=p.editText,G=p.textReplacement,Z=p.attachments,Q=p.setAttachments,X=p.clear,Y=String(p.attachmentFocusRequestId);let ee,te;return n[24]!==o||n[25]!==p.attachments||n[26]!==p.clear||n[27]!==p.editText||n[28]!==p.setAttachments||n[29]!==p.textReplacement||n[30]!==p.textSource||n[31]!==z||n[32]!==l||n[33]!==U||n[34]!==L||n[35]!==x||n[36]!==c||n[37]!==u||n[38]!==f||n[39]!==h||n[40]!==S||n[41]!==I||n[42]!==a||n[43]!==Y||n[44]!==b?(ee=(0,fe.jsx)(j.Composer,{agentId:o,serverId:a,workspaceId:b,blurOnSubmit:V.isNative,isPaneFocused:c,textSource:N,onChangeText:J,textReplacement:G,attachments:Z,attachmentScopeKeys:z,onOpenWorkspaceAttachment:L,onChangeAttachments:Q,cwd:l,clearDraft:X,autoFocus:!0,autoFocusKey:Y,isSubmitLoading:u,onAttentionInputFocus:f,onAttentionPromptSend:h,onComposerHeightChange:S,onMessageSent:I,onClientSlashCommand:U,isCompactLayout:x}),n[24]=o,n[25]=p.attachments,n[26]=p.clear,n[27]=p.editText,n[28]=p.setAttachments,n[29]=p.textReplacement,n[30]=p.textSource,n[31]=z,n[32]=l,n[33]=U,n[34]=L,n[35]=x,n[36]=c,n[37]=u,n[38]=f,n[39]=h,n[40]=S,n[41]=I,n[42]=a,n[43]=Y,n[44]=b,n[45]=ee):ee=n[45],n[46]!==A||n[47]!==ee?(te=(0,fe.jsx)(t.View,{style:tt.inputAreaWrapper,onLayout:A,children:ee}),n[46]=A,n[47]=ee,n[48]=te):te=n[48],te}function Ne(e){return e.unpinAgent}function Je(e){return e.hideAgent}function Ge(e){return e.closeTab}function Ze(e){return e.openInSidePane}function Qe(e){const o=(0,s.c)(18),{serverLabel:a,connectionStatus:c,lastError:l,isUnknownDaemon:u,t:p}=e;if(void 0!==u&&u){let e,s,c,l,u;return o[0]!==a||o[1]!==p?(e=p("agentPanel.unavailable.unknownHost",{serverLabel:a}),o[0]=a,o[1]=p,o[2]=e):e=o[2],o[3]!==e?(s=(0,fe.jsx)(n.Text,{style:nt.errorText,children:e}),o[3]=e,o[4]=s):s=o[4],o[5]!==p?(c=p("agentPanel.unavailable.addHost"),o[5]=p,o[6]=c):c=o[6],o[7]!==c?(l=(0,fe.jsx)(n.Text,{style:nt.statusText,children:c}),o[7]=c,o[8]=l):l=o[8],o[9]!==s||o[10]!==l?(u=(0,fe.jsx)(t.View,{style:nt.container,children:(0,fe.jsxs)(t.View,{style:nt.centerState,children:[s,l]})}),o[9]=s,o[10]=l,o[11]=u):u=o[11],u}const f="connecting"===c,h="online"===c;let S;return o[12]!==f||o[13]!==h||o[14]!==l||o[15]!==a||o[16]!==p?(S=(0,fe.jsx)(t.View,{style:nt.container,children:(0,fe.jsx)(t.View,{style:nt.centerState,children:f||h?(0,fe.jsxs)(fe.Fragment,{children:[(0,fe.jsx)(Xe,{size:"large",uniProps:Ye}),(0,fe.jsx)(n.Text,{style:nt.loadingText,children:p(h?"agentPanel.unavailable.preparingSession":"agentPanel.unavailable.connecting",{serverLabel:a})}),(0,fe.jsx)(n.Text,{style:nt.statusText,children:p(h?"agentPanel.unavailable.showSoon":"agentPanel.unavailable.showWhenOnline")})]}):(0,fe.jsxs)(fe.Fragment,{children:[(0,fe.jsx)(n.Text,{style:nt.offlineTitle,children:p("agentPanel.unavailable.reconnectingTo",{serverLabel:a})}),(0,fe.jsx)(n.Text,{style:nt.offlineDescription,children:p("agentPanel.unavailable.showAgainWhenReachable")}),l?(0,fe.jsx)(n.Text,{style:nt.offlineDetails,children:l}):null]})})}),o[12]=f,o[13]=h,o[14]=l,o[15]=a,o[16]=p,o[17]=S):S=o[17],S}const Xe=(0,h.withUnistyles)(c.LoadingSpinner),Ye=e=>({color:e.colors.foregroundMuted}),et=e=>({color:e.colors.foreground}),tt=f.default.create({content:{flex:1},inputAreaWrapper:{width:"100%",flexShrink:1}}),nt=h.StyleSheet.create(e=>({root:{flex:1,backgroundColor:e.colors.surface0,uni__dependencies:[0]},container:{flex:1,backgroundColor:e.colors.surface0,uni__dependencies:[0]},contentContainer:Object.assign({flex:1,overflow:"hidden"},V.isWeb?{userSelect:"none"}:{}),viewSwitcher:{minHeight:40,flexDirection:"row",alignItems:"center",justifyContent:"center",paddingHorizontal:e.spacing[3],paddingVertical:e.spacing[2],borderBottomWidth:1,borderBottomColor:e.colors.border,uni__dependencies:[0]},mobileSegmentedControl:{flex:1},compactSegment:{minHeight:44},hiddenPane:{display:"none"},timelineSyncCalloutRail:{width:"100%",alignItems:"center",paddingHorizontal:e.spacing[4],paddingTop:e.spacing[2],uni__dependencies:[0]},timelineSyncCalloutContent:{width:"100%",maxWidth:e.contentMaxWidth,uni__dependencies:[0]},timelineSyncCallout:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:e.spacing[3],backgroundColor:e.colors.surface1,borderWidth:e.borderWidth[1],borderColor:e.colors.statusDanger,borderRadius:e.borderRadius["2xl"],paddingVertical:e.spacing[2],paddingHorizontal:e.spacing[4],uni__dependencies:[0]},timelineSyncCalloutText:{color:e.colors.foregroundMuted,fontSize:e.fontSize.base,uni__dependencies:[0]},historySyncOverlay:{position:"absolute",top:0,right:0,bottom:0,left:0,backgroundColor:e.colors.surface0,alignItems:"center",justifyContent:"center",zIndex:40,uni__dependencies:[0]},archivingOverlay:{position:"absolute",top:0,right:0,bottom:0,left:0,backgroundColor:"rgba(8, 10, 14, 0.86)",alignItems:"center",justifyContent:"center",paddingHorizontal:e.spacing[8],gap:e.spacing[3],zIndex:50,uni__dependencies:[0]},archivingTitle:{fontSize:e.fontSize.base,fontWeight:e.fontWeight.semibold,color:e.colors.foreground,textAlign:"center",uni__dependencies:[0]},archivingSubtitle:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,textAlign:"center",uni__dependencies:[0]},loadingText:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,uni__dependencies:[0]},centerState:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:e.spacing[6],gap:e.spacing[3],uni__dependencies:[0]},errorContainer:{flex:1,alignItems:"center",justifyContent:"center"},errorText:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,textAlign:"center",uni__dependencies:[0]},errorAction:{marginTop:e.spacing[4],uni__dependencies:[0]},statusText:{marginTop:e.spacing[2],textAlign:"center",fontSize:e.fontSize.base,color:e.colors.foregroundMuted,uni__dependencies:[0]},offlineTitle:{fontSize:e.fontSize.base,fontWeight:e.fontWeight.semibold,color:e.colors.foreground,textAlign:"center",uni__dependencies:[0]},offlineDescription:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,textAlign:"center",uni__dependencies:[0]},offlineDetails:{fontSize:e.fontSize.sm,color:e.colors.foregroundMuted,textAlign:"center",uni__dependencies:[0]}}));function st(e){return e.setSelectedView}function rt(e){const{color:t,size:n}=e;return(0,fe.jsx)(l.MessageSquare,{color:t,size:n})}function it(e){const{color:t,size:n}=e;return(0,fe.jsx)(l.ListFilter,{color:t,size:n})}},4896,[897,898,455,3767,3219,3220,1219,36,855,59,234,146,56,3812,3653,3995,4897,5007,5008,4437,4658,3944,5038,4415,4662,5040,4793,3664,4946,4050,896,3857,1218,882,5041,4794,5042,3844,4704,5043,5044,4625,4894,4564,4784,5045,3652,5046,5047,5053,5068,3856,3790,3656,3808,3791,4621,885,5057,3862,3846,3852,3700,4764,279]);
18166
+ __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.AgentConversationPanel=ke,Object.defineProperty(_e,"agentPanelRegistration",{enumerable:!0,get:function(){return Pe}}),_e.useDraftPanelDescriptor=function(e,t){const n=(0,s.c)(5);let o;n[0]!==t.serverId||n[1]!==e.draftId?(o=n=>{const s=n.pendingByDraftId[e.draftId];return s?.serverId!==t.serverId||"active"!==s.lifecycle?{isCreating:!1,pendingPrompt:null}:{isCreating:!0,pendingPrompt:s.text}},n[0]=t.serverId,n[1]=e.draftId,n[2]=o):o=n[2];const a=(0,te.useCreateFlowStore)((0,S.useShallow)(o));let c;n[3]!==a?(c=(0,G.buildDraftPanelDescriptor)(Object.assign({},a,{icon:l.SquarePen})),n[3]=a,n[4]=c):c=n[4];return c};var t=r(d[0]),n=r(d[1]),s=r(d[2]),o=r(d[3]),a=r(d[4]),c=r(d[5]),l=r(d[6]),u=r(d[7]),p=r(d[8]),f=e(r(d[9]));r(d[10]),r(d[11]);var h=r(d[12]),I=e(r(d[13])),S=r(d[14]),v=r(d[15]),y=r(d[16]),A=r(d[17]),x=r(d[18]),w=r(d[19]),C=r(d[20]),b=r(d[21]),k=r(d[22]),P=r(d[23]),j=r(d[24]),T=r(d[25]),R=r(d[26]),F=r(d[27]),_=r(d[28]),D=r(d[29]),O=r(d[30]),W=r(d[31]),H=r(d[32]),V=r(d[33]),M=r(d[34]),z=r(d[35]),B=r(d[36]),E=r(d[37]),q=r(d[38]),L=r(d[39]),K=r(d[40]),$=r(d[41]),U=r(d[42]),N=r(d[43]),J=r(d[44]),G=r(d[45]),Z=r(d[46]),Q=r(d[47]),X=r(d[48]),Y=r(d[49]),ee=r(d[50]),te=r(d[51]),ne=r(d[52]),se=r(d[53]),re=r(d[54]),ie=r(d[55]),oe=r(d[56]),ae=r(d[57]),ce=r(d[58]),le=r(d[59]),de=r(d[60]),ue=r(d[61]),ge=r(d[62]),pe=r(d[63]),fe=r(d[64]);function he(e,t,n){if(!n)return null;const s=e.sessions[t];return s?.agents?.get(n)??s?.agentDetails?.get(n)??null}const me={serverId:null,id:null,status:null,cwd:null,lastError:null,archivedAt:null,requiresAttention:!1,attentionReason:null};function Ie(e,t,n){const s=he(e,t,n);return s?{serverId:s.serverId,id:s.id,provider:s.provider,status:s.status,cwd:s.cwd,workspaceId:s.workspaceId,capabilities:s.capabilities,currentModeId:s.currentModeId,model:s.model,thinkingOptionId:s.thinkingOptionId,runtimeInfo:s.runtimeInfo,features:s.features,lastError:s.lastError??null,artifacts:s.artifacts,companionEntries:s.companionEntries,archivedAt:s.archivedAt??null,requiresAttention:s.requiresAttention??!1,attentionReason:s.attentionReason??null}:me}function Se(e,t){return e.serverId&&e.id&&e.status&&e.cwd?{serverId:e.serverId,id:e.id,provider:e.provider,status:e.status,cwd:e.cwd,workspaceId:e.workspaceId,capabilities:e.capabilities,currentModeId:e.currentModeId,model:e.model,thinkingOptionId:e.thinkingOptionId,runtimeInfo:e.runtimeInfo,features:e.features,lastError:e.lastError??null,projectPlacement:t}:null}function ve(e){const o=(0,s.c)(15),{message:c,onRetry:l}=e,{t:u}=(0,p.useTranslation)();let f,h,I,S,v,y;return o[0]!==u?(f=u("agentPanel.states.failedToLoad"),o[0]=u,o[1]=f):f=o[1],o[2]!==f?(h=(0,fe.jsx)(n.Text,{style:nt.errorText,children:f}),o[2]=f,o[3]=h):h=o[3],o[4]!==c?(I=(0,fe.jsx)(n.Text,{style:nt.statusText,children:c}),o[4]=c,o[5]=I):I=o[5],o[6]!==u?(S=u("common.actions.retry"),o[6]=u,o[7]=S):S=o[7],o[8]!==l||o[9]!==S?(v=(0,fe.jsx)(t.View,{style:nt.errorAction,children:(0,fe.jsx)(a.Button,{size:"sm",variant:"secondary",onPress:l,testID:"agent-load-error-retry",children:S})}),o[8]=l,o[9]=S,o[10]=v):v=o[10],o[11]!==h||o[12]!==I||o[13]!==v?(y=(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-load-error",children:(0,fe.jsxs)(t.View,{style:nt.errorContainer,children:[h,I,v]})}),o[11]=h,o[12]=I,o[13]=v,o[14]=y):y=o[14],y}function ye(e){const{viewState:s,effectiveAgent:o,t:a,onRetryLoad:c}=e;return"not_found"===s.tag?(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-not-found",children:(0,fe.jsx)(t.View,{style:nt.errorContainer,children:(0,fe.jsx)(n.Text,{style:nt.errorText,children:a("agentPanel.states.notFound")})})}):"error"===s.tag?(0,fe.jsx)(ve,{message:s.message,onRetry:c}):"boot"!==s.tag&&o?null:(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-loading",children:(0,fe.jsx)(t.View,{style:nt.errorContainer,children:(0,fe.jsx)(Xe,{size:"large",uniProps:Ye})})})}function Ae(e){return e?e.split(/[-_\s]+/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "):"Agent"}function xe(e){if("string"!=typeof e)return null;const t=e.trim();return t?"new agent"===t.toLowerCase()?null:t:null}function we(e){const t=(0,de.normalizeAgentSnapshot)(e.result.agent,e.serverId),n=(0,ue.applyLegacyDaemonWorkspaceOwnership)({serverId:e.serverId,agent:Object.assign({},t,{projectPlacement:e.result.project})}),s=se.useSessionStore.getState();var a;return!(a=n).archivedAt&&Boolean(a.projectPlacement)?(0,o.getHostRuntimeStore)().acceptAgentSnapshot(e.serverId,n):s.setAgentDetails(e.serverId,e=>{const t=new Map(e);return t.set(n.id,n),t}),s.setPendingPermissions(e.serverId,e=>{const t=new Map(e);for(const[e,s]of t.entries())s.agentId===n.id&&t.delete(e);for(const e of n.pendingPermissions){const s=(0,de.derivePendingPermissionKey)(n.id,e);t.set(s,{key:s,agentId:n.id,request:e})}return t}),n}function Ce(){const e=(0,s.c)(6),{serverId:t,workspaceId:n,target:o,openFileInWorkspace:a}=(0,$.usePaneContext)(),{isInteractive:c}=(0,$.usePaneFocus)();let l;return(0,I.default)("agent"===o.kind,"AgentPanel requires agent target"),e[0]!==c||e[1]!==a||e[2]!==t||e[3]!==o.agentId||e[4]!==n?(l=(0,fe.jsx)(k.RetainedChatContent,{children:(0,fe.jsx)(He,{serverId:t,workspaceId:n,agentId:o.agentId,isPaneFocused:c,onOpenWorkspaceFile:a})}),e[0]=c,e[1]=a,e[2]=t,e[3]=o.agentId,e[4]=n,e[5]=l):l=e[5],l}function be(){const e=(0,s.c)(13),{serverId:t,workspaceId:n,tabId:a,target:c,openFileInWorkspace:l,openImportSheet:u,retargetCurrentTab:p}=(0,$.usePaneContext)(),{isInteractive:f}=(0,$.usePaneFocus)();let h;(0,I.default)("draft"===c.kind,"DraftPanel requires draft target"),e[0]!==p||e[1]!==t?(h=e=>{const n=(0,de.normalizeAgentSnapshot)(e,t),s=(0,ue.applyLegacyDaemonWorkspaceOwnership)({serverId:t,agent:n});(0,o.getHostRuntimeStore)().acceptAgentSnapshot(t,s),p({kind:"agent",agentId:e.id})},e[0]=p,e[1]=t,e[2]=h):h=e[2];const S=h;let v;return e[3]!==S||e[4]!==f||e[5]!==l||e[6]!==u||e[7]!==t||e[8]!==a||e[9]!==c.draftId||e[10]!==c.setup||e[11]!==n?(v=(0,fe.jsx)(X.WorkspaceDraftAgentTab,{serverId:t,workspaceId:n,tabId:a,draftId:c.draftId,initialSetup:c.setup,isPaneFocused:f,onOpenWorkspaceFile:l,onCreated:S,onOpenImportSheet:u}),e[3]=S,e[4]=f,e[5]=l,e[6]=u,e[7]=t,e[8]=a,e[9]=c.draftId,e[10]=c.setup,e[11]=n,e[12]=v):v=e[12],v}function ke(){const e=(0,s.c)(2),{target:t}=(0,$.usePaneContext)();if("draft"===t.kind){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=(0,fe.jsx)(be,{}),e[0]=t):t=e[0],t}if("agent"===t.kind){let t;return e[1]===Symbol.for("react.memo_cache_sentinel")?(t=(0,fe.jsx)(Ce,{}),e[1]=t):t=e[1],t}(0,I.default)(!1,"AgentConversationPanel requires an agent or draft target")}const Pe=(0,U.definePanel)("agent",{component:ke,useDescriptor:function(e,t){const n=(0,s.c)(23);let o;n[0]!==t.serverId||n[1]!==e.agentId?(o=n=>{const s=n.sessions[t.serverId],o=s?.agents?.get(e.agentId)??s?.agentDetails?.get(e.agentId)??null;return{provider:o?.provider??"codex",title:o?.title??null,status:o?.status??null,pendingPermissionCount:o?.pendingPermissions.length??0,requiresAttention:o?.requiresAttention??!1,attentionReason:o?.attentionReason??null,isTurnActive:(0,se.selectAgentTurnPresentation)(s,e.agentId).isActive}},n[0]=t.serverId,n[1]=e.agentId,n[2]=o):o=n[2];const a=(0,se.useSessionStore)((0,S.useShallow)(o)),c=a.provider;let l;n[3]!==a.title?(l=xe(a.title),n[3]=a.title,n[4]=l):l=n[4];const u=l,p=(0,D.useProviderIcon)(c,t.serverId),f=u??"";let h;n[5]!==c?(h=Ae(c),n[5]=c,n[6]=h):h=n[6];const I=`${h} agent`;let v;n[7]!==u||n[8]!==c?(v=u??`${Ae(c)} agent`,n[7]=u,n[8]=c,n[9]=v):v=n[9];const y=u?"ready":"loading";let A,x;return n[10]!==a.attentionReason||n[11]!==a.isTurnActive||n[12]!==a.pendingPermissionCount||n[13]!==a.requiresAttention||n[14]!==a.status?(A=a.status?(0,ge.deriveSidebarStateBucket)({status:a.isTurnActive?"running":a.status,pendingPermissionCount:a.pendingPermissionCount,requiresAttention:a.requiresAttention,attentionReason:a.attentionReason}):null,n[10]=a.attentionReason,n[11]=a.isTurnActive,n[12]=a.pendingPermissionCount,n[13]=a.requiresAttention,n[14]=a.status,n[15]=A):A=n[15],n[16]!==p||n[17]!==f||n[18]!==I||n[19]!==v||n[20]!==y||n[21]!==A?(x={label:f,subtitle:I,tooltip:v,titleState:y,icon:p,statusBucket:A},n[16]=p,n[17]=f,n[18]=I,n[19]=v,n[20]=y,n[21]=A,n[22]=x):x=n[22],x}});const je=[],Te=[],Re=new Map,Fe=[];function De(e){return!!e.agentId&&Object.values(e.pendingByDraftId).some(t=>"sent"===t.lifecycle&&t.serverId===e.serverId&&t.agentId===e.agentId)}function Oe(e){return e instanceof Error?e.message:String(e)}function We(e){return/agent not found|not found/i.test(e)}function He(e){const t=(0,s.c)(28),{serverId:n,workspaceId:a,agentId:c,isPaneFocused:l,onOpenWorkspaceFile:u}=e,{t:f}=(0,p.useTranslation)();let h;t[0]!==c?(h=c.trim()||void 0,t[0]=c,t[1]=h):h=t[1];const I=h;let S;t[2]!==n?(S=n.trim()||void 0,t[2]=n,t[3]=S):S=t[3];const v=S,y=(0,o.useHosts)(),A=v??"",x=(0,o.useHostRuntimeClient)(A),w=(0,o.useHostRuntimeIsConnected)(A),C=(0,o.useHostRuntimeConnectionStatus)(A),b=(0,o.useHostRuntimeLastError)(A);let k;t[4]!==I||t[5]!==v?(k=e=>{if(!v||!I)return!1;const t=e.sessions[v];return Boolean(t?.agents.has(I)||t?.agentDetails.has(I))},t[4]=I,t[5]=v,t[6]=k):k=t[6];const P=(0,se.useSessionStore)(k),j=v??null;let T;t[7]!==j||t[8]!==y?(T=j?y.find(e=>e.serverId===j)??null:null,t[7]=j,t[8]=y,t[9]=T):T=t[9];const R=T;let F;t[10]!==j||t[11]!==R?.label||t[12]!==f?(F=R?.label??j??f("agentPanel.unavailable.selectedHost"),t[10]=j,t[11]=R?.label,t[12]=f,t[13]=F):F=t[13];const _=F,D=Boolean(j&&!R),O=D&&"connecting"===C?"offline":C,W=b;if(!v||!x&&!P){let e;return t[14]!==O||t[15]!==D||t[16]!==W||t[17]!==_||t[18]!==f?(e=(0,fe.jsx)(Qe,{serverLabel:_,connectionStatus:O,lastError:W,isUnknownDaemon:D,t:f}),t[14]=O,t[15]=D,t[16]=W,t[17]=_,t[18]=f,t[19]=e):e=t[19],e}let H;return t[20]!==l||t[21]!==u||t[22]!==I||t[23]!==v||t[24]!==x||t[25]!==w||t[26]!==a?(H=(0,fe.jsx)(Ve,{serverId:v,workspaceId:a,agentId:I,isPaneFocused:l,client:x,isConnected:w,onOpenWorkspaceFile:u}),t[20]=l,t[21]=u,t[22]=I,t[23]=v,t[24]=x,t[25]=w,t[26]=a,t[27]=H):H=t[27],H}function Ve({serverId:e,workspaceId:s,agentId:o,isPaneFocused:a,client:c,isConnected:l,onOpenWorkspaceFile:f}){const{t:h}=(0,p.useTranslation)(),{isArchivingAgent:I}=(0,E.useArchiveAgent)(),y=(0,se.useSessionStore)(t=>Boolean(t.sessions[e])),A=(0,v.useStoreWithEqualityFn)(se.useSessionStore,t=>{if(!o)return null;const n=t.sessions[e];return n?.agents?.get(o)?.projectPlacement??n?.agentDetails?.get(o)?.projectPlacement??null},(e,t)=>e===t||JSON.stringify(e)===JSON.stringify(t)),x=(0,se.useSessionStore)((0,S.useShallow)(t=>Ie(t,e,o))),[w,C]=(0,u.useState)({tag:"idle"}),b=(0,u.useRef)(0),k=(0,u.useCallback)(()=>C({tag:"idle"}),[]);if((0,u.useEffect)(()=>{b.current+=1,C({tag:"idle"})},[o,e]),(0,u.useEffect)(()=>{if(!o)return;if(x.id)return void("idle"!==w.tag&&C({tag:"idle"}));if(!c||!l||!y)return;if("loading"===w.tag||"not_found"===w.tag)return;C({tag:"loading"});const t=++b.current;c.fetchAgent({agentId:o}).then(n=>{t===b.current&&(n?(we({serverId:e,result:n}),C({tag:"idle"})):C({tag:"not_found",message:`Agent not found: ${o}`}))}).catch(e=>{if(t!==b.current)return;const n=Oe(e);We(n)?C({tag:"not_found",message:n}):C({tag:"error",message:n})})},[o,x.id,c,y,l,w.tag,e]),"not_found"===w.tag)return(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-not-found",children:(0,fe.jsx)(t.View,{style:nt.errorContainer,children:(0,fe.jsx)(n.Text,{style:nt.errorText,children:h("agentPanel.states.notFound")})})});if("error"===w.tag)return(0,fe.jsx)(ve,{message:w.message,onRetry:k});return(x.serverId&&x.id&&x.status&&x.cwd?{serverId:x.serverId,id:x.id,provider:x.provider,status:x.status,cwd:x.cwd,workspaceId:x.workspaceId,capabilities:x.capabilities,currentModeId:x.currentModeId,model:x.model,thinkingOptionId:x.thinkingOptionId,runtimeInfo:x.runtimeInfo,features:x.features,lastError:x.lastError??null,projectPlacement:A}:null)?(0,fe.jsx)(Me,{serverId:e,workspaceId:s,agentId:o,isPaneFocused:a,client:c,isConnected:l,onOpenWorkspaceFile:f}):(0,fe.jsx)(t.View,{style:nt.container,testID:"agent-loading",children:(0,fe.jsx)(t.View,{style:nt.errorContainer,children:(0,fe.jsx)(Xe,{size:"large",uniProps:Ye})})})}function Me({serverId:e,workspaceId:t,agentId:n,isPaneFocused:s,client:o,isConnected:a,onOpenWorkspaceFile:c}){const{t:l}=(0,p.useTranslation)(),f=(0,b.useRetainedPanelActive)(),{api:h,toast:y,dismiss:A}=(0,O.useToastHost)(),{isArchivingAgent:x}=(0,E.useArchiveAgent)(),w=(0,u.useRef)(null),C=(0,u.useRef)(()=>{}),k=(0,u.useRef)(s),P=(0,u.useRef)(0),j=(0,u.useRef)(null),T=(0,se.useSessionStore)((0,S.useShallow)(t=>Ie(t,e,n))),R=(0,v.useStoreWithEqualityFn)(se.useSessionStore,t=>{if(!n)return null;const s=t.sessions[e];return s?.agents?.get(n)?.projectPlacement??s?.agentDetails?.get(n)?.projectPlacement??null},(e,t)=>e===t||JSON.stringify(e)===JSON.stringify(t)),F=(0,se.useSessionStore)(t=>!!n&&(t.sessions[e]?.initializingAgents?.get(n)??!1)),_=(0,se.useSessionStore)(t=>t.sessions[e]?.historySyncGeneration??0),D=(0,se.useSessionStore)(t=>n?(0,se.selectAgentTimelineState)(t.sessions[e],n).status:"cold"),W="synced"===D,H=(0,se.useSessionStore)(t=>n?t.sessions[e]?.agentHistorySyncGeneration?.get(n)??-1:-1),V=(0,se.useSessionStore)(t=>t.sessions[e]?.viewedTimelineSync??null),z=(0,u.useCallback)(e=>V?.subscribe(e)??(()=>{}),[V]),q=(0,u.useCallback)(()=>n&&V?V.getAgentTimelineStatus(n):"ready",[n,V]),K=(0,u.useSyncExternalStore)(z,q,q),$=f?K:"ready",U=(N={agentId:n,status:$,sync:V}).agentId&&"error"===N.status&&N.sync?N.sync.getAgentTimelineError(N.agentId):null;var N;const J=(0,te.useCreateFlowStore)(t=>De({pendingByDraftId:t.pendingByDraftId,serverId:e,agentId:n})),G=(0,se.useSessionStore)(t=>Boolean(t.sessions[e])),[Z,X]=(0,u.useState)({kind:"idle"}),Y=W||"painted"===D,ee=(0,M.useAgentAttentionClear)({agentId:n,client:o,isConnected:a,requiresAttention:T.requiresAttention,attentionReason:T.attentionReason,isScreenFocused:s});(0,u.useEffect)(()=>{C.current=ee.clearOnAgentBlur},[ee.clearOnAgentBlur]);const ne=Boolean(n&&x({serverId:e,agentId:n}));(0,u.useEffect)(()=>{k.current&&!s&&C.current(),k.current=s},[s]),(0,u.useEffect)(()=>()=>{k.current&&C.current()},[]);const re=!!n&&F,ie=(0,u.useMemo)(()=>{if(!n||!re)return!1;const t=(0,le.getInitKey)(e,n);return Boolean((0,le.getInitDeferred)(t))},[n,re,e]),oe=(0,u.useMemo)(()=>!!n&&H<_,[H,n,_]),ae=(0,u.useMemo)(()=>Se(T,R),[T,R]),ce=(0,u.useMemo)(()=>J&&n?{kind:"optimistic-create",agent:{serverId:e,id:n,status:"running",cwd:ae?.cwd??".",projectPlacement:ae?.projectPlacement??null}}:{kind:"none"},[ae,n,J,e]),de=(0,B.useAgentScreenStateMachine)({routeKey:`${e}:${n??""}`,input:{agent:ae??null,isArchived:null!==T.archivedAt,missingAgentState:Z,isConnected:a,isArchivingCurrentAgent:ne,isHistorySyncing:ie,needsAuthoritativeSync:oe,visibilityCatchUpStatus:$,visibilityCatchUpError:U,continuity:ce,hasHydratedHistoryBefore:Y}}),ue="ready"===de.tag?de.agent:null,ge=n?`${e}:${n}`:null;j.current=(0,Q.deriveRouteBottomAnchorIntent)({cachedIntent:j.current,routeKey:ge,hasAppliedAuthoritativeHistoryAtEntry:W});const pe=(0,u.useMemo)(()=>(0,Q.deriveRouteBottomAnchorRequest)({intent:j.current,effectiveAgentId:ue?.id??null}),[ue?.id]),he=(0,u.useCallback)(e=>{n&&w.current?.prepareForViewportChange()},[n]),me=(0,u.useCallback)(()=>{n&&w.current?.scrollToBottom("message-sent")},[n]),ve=(0,u.useCallback)(()=>{w.current?.scrollToBottom("rewind")},[]),Ae=(0,u.useCallback)(()=>{X({kind:"idle"}),n&&V&&V.retryVisibleAgentTimeline(n)},[n,V]),xe=(0,u.useCallback)(()=>{n&&V&&V.retryVisibleAgentTimeline(n)},[n,V]);(0,u.useEffect)(()=>{P.current+=1,X({kind:"idle"})},[n,e]),(0,u.useEffect)(()=>{if(!n)return;if(T.archivedAt)return;if(T.id&&W)return void("resolving"!==Z.kind&&"not_found"!==Z.kind&&"error"!==Z.kind||X(L.reconcileMissingAgentStateWithPresentAgent));if(!(o&&V&&f&&a&&G&&"ready"===$))return;if("resolving"===Z.kind||"not_found"===Z.kind||"error"===Z.kind)return;X({kind:"resolving"});const t=++P.current;Promise.resolve().then(async()=>{if(t!==P.current)return;const s=se.useSessionStore.getState().sessions[e];if(!(s?.agents.get(n)??s?.agentDetails.get(n))){const s=await o.fetchAgent({agentId:n});if(t!==P.current)return;if(!s)return void X({kind:"not_found",message:`Agent not found: ${n}`});we({serverId:e,result:s})}t===P.current&&X({kind:"idle"})}).catch(e=>{if(t!==P.current)return;const n=Oe(e);We(n)?X({kind:"not_found",message:n}):X({kind:"error",message:n})})},[T.id,T.archivedAt,W,n,o,G,a,f,Z.kind,e,V,$]);const Ce=ye({viewState:de,effectiveAgent:ue,t:l,onRetryLoad:Ae});if(Ce)return Ce;(0,I.default)(n,"agent id is defined when agent content is ready"),(0,I.default)(ue,"effectiveAgent is defined when the non-ready view is absent");const be=T.cwd;(0,I.default)(be,"agent cwd is defined when agent content is ready");const ke="ready"===de.tag&&"catching_up"===de.sync.status&&"overlay"===de.sync.ui,Pe="ready"===de.tag&&"sync_error"===de.sync.status,je="ready"===de.tag&&"sync_error"===de.sync.status&&de.sync.isRetrying;return(0,fe.jsx)(Be,{serverId:e,workspaceId:t,agentId:n,isPaneFocused:s,isArchivingCurrentAgent:ne,agentState:T,effectiveAgent:ue,routeBottomAnchorRequest:pe,hasAppliedAuthoritativeHistory:W,toastApi:h,toast:y,dismiss:A,streamViewRef:w,handleComposerHeightChange:he,handleMessageSent:me,handleRewindComplete:ve,timelineSync:f&&"ready"===de.tag?de.sync:null,showHistorySyncOverlay:ke,showHistorySyncError:Pe,isRetryingHistorySync:je,cwd:be,retryTimelineSync:xe,onAttentionInputFocus:ee.clearOnInputFocus,onAttentionPromptSend:ee.clearOnPromptSend,onOpenWorkspaceFile:c})}const ze=[],Be=(0,u.memo)(function(e){const n=(0,s.c)(161),{serverId:o,workspaceId:a,agentId:c,isPaneFocused:l,isArchivingCurrentAgent:u,agentState:f,effectiveAgent:h,routeBottomAnchorRequest:I,hasAppliedAuthoritativeHistory:S,toastApi:v,toast:y,dismiss:A,streamViewRef:w,handleComposerHeightChange:C,handleMessageSent:k,handleRewindComplete:j,timelineSync:T,showHistorySyncOverlay:R,showHistorySyncError:F,isRetryingHistorySync:D,retryTimelineSync:O,cwd:W,onAttentionInputFocus:V,onAttentionPromptSend:M,onOpenWorkspaceFile:B}=e,{t:E}=(0,p.useTranslation)();let q;n[0]!==c||n[1]!==o?(q=e=>e.selectedViews[`${o}:${c}`]||"chat",n[0]=c,n[1]=o,n[2]=q):q=n[2];const L=(0,ee.useAgentViewStore)(q),$=(0,ee.useAgentViewStore)(st),U="artifacts"!==L;let G;n[3]!==c||n[4]!==o||n[5]!==$?(G=e=>{$(o,c,e)},n[3]=c,n[4]=o,n[5]=$,n[6]=G):G=n[6];const Q=G;let X;n[7]!==Q?(X=()=>{Q("chat")},n[7]=Q,n[8]=X):X=n[8];const te=X;let re;n[9]!==te||n[10]!==w?(re=()=>{te(),w.current?.scrollToBottom("jump-to-bottom")},n[9]=te,n[10]=w,n[11]=re):re=n[11];const ie=re,oe=(0,Z.useHostFeature)(o,"companionStreamPortV1"),ae=(0,H.useIsCompactFormFactor)();let le;n[12]!==c||n[13]!==o?(le={serverId:o,parentAgentId:c},n[12]=c,n[13]=o,n[14]=le):le=n[14];const de=(0,ce.useSubagentsForParent)(le);let ue;n[15]!==c||n[16]!==o?(ue=e=>e.sessions[o]?.agentTasks.get(c),n[15]=c,n[16]=o,n[17]=ue):ue=n[17];const ge=(0,se.useSessionStore)(ue);let pe;n[18]!==c||n[19]!==o||n[20]!==de?(pe={serverId:o,parentAgentId:c,rows:de},n[18]=c,n[19]=o,n[20]=de,n[21]=pe):pe=n[21];const he=(0,ce.useArchiveFinishedSubagents)(pe),me=(0,J.useHasPluginComposerPills)(o,a,c),Ie=!f.archivedAt&&!u;let Se;n[22]!==he.status||n[23]!==me||n[24]!==de||n[25]!==ge?(Se=(0,Y.hasAgentTracks)({subagentRows:de,tasks:ge,archiveFinishedStatus:he.status,hasPluginComposerPills:me}),n[22]=he.status,n[23]=me,n[24]=de,n[25]=ge,n[26]=Se):Se=n[26];const ve=Se;let ye,Ae;n[27]!==c||n[28]!==o?(ye=(0,ne.buildDraftStoreKey)({serverId:o,agentId:c}),n[27]=c,n[28]=o,n[29]=ye):ye=n[29],n[30]!==ye?(Ae={draftKey:ye},n[30]=ye,n[31]=Ae):Ae=n[31];const xe=(0,z.useAgentInputDraft)(Ae),{textSource:we,editText:Ce,replaceText:be,textReplacement:ke,attachments:Pe,setAttachments:je,clear:Te,isHydrated:Re,attachmentFocusRequestId:Fe,composerState:De}=xe;let Oe;n[32]!==Fe||n[33]!==Pe||n[34]!==Te||n[35]!==De||n[36]!==Ce||n[37]!==Re||n[38]!==be||n[39]!==je||n[40]!==ke||n[41]!==we?(Oe={textSource:we,editText:Ce,replaceText:be,textReplacement:ke,attachments:Pe,setAttachments:je,clear:Te,isHydrated:Re,attachmentFocusRequestId:Fe,composerState:De},n[32]=Fe,n[33]=Pe,n[34]=Te,n[35]=De,n[36]=Ce,n[37]=Re,n[38]=be,n[39]=je,n[40]=ke,n[41]=we,n[42]=Oe):Oe=n[42];const We=Oe,He=`AgentComposerSection:${c}`,Ve=l&&U;let Me,Be;n[43]!==c||n[44]!==We||n[45]!==f.archivedAt||n[46]!==W||n[47]!==C||n[48]!==k||n[49]!==u||n[50]!==V||n[51]!==M||n[52]!==o||n[53]!==Ve?(Me=(0,fe.jsx)($e,{agentId:c,serverId:o,isPaneFocused:Ve,isArchivingCurrentAgent:u,archivedAt:f.archivedAt,cwd:W,isSubmitLoading:!1,agentInputDraft:We,onAttentionInputFocus:V,onAttentionPromptSend:M,onComposerHeightChange:C,onMessageSent:k}),n[43]=c,n[44]=We,n[45]=f.archivedAt,n[46]=W,n[47]=C,n[48]=k,n[49]=u,n[50]=V,n[51]=M,n[52]=o,n[53]=Ve,n[54]=Me):Me=n[54],n[55]!==He||n[56]!==Me?(Be=(0,fe.jsx)(N.RenderProfile,{id:He,children:Me}),n[55]=He,n[56]=Me,n[57]=Be):Be=n[57];const Ue=Be,Ne=`AgentStreamSection:${c}`;let Je,Ge,Ze,Qe,et;n[58]!==c||n[59]!==h||n[60]!==Ie||n[61]!==S||n[62]!==ve||n[63]!==B||n[64]!==I||n[65]!==o||n[66]!==w||n[67]!==v||n[68]!==a?(Je=(0,fe.jsx)(Ke,{streamViewRef:w,serverId:o,workspaceId:a,agentId:c,agent:h,routeBottomAnchorRequest:I,hasAppliedAuthoritativeHistory:S,hasActiveComposer:Ie,hasVisibleAgentTracks:ve,toast:v,onOpenWorkspaceFile:B}),n[58]=c,n[59]=h,n[60]=Ie,n[61]=S,n[62]=ve,n[63]=B,n[64]=I,n[65]=o,n[66]=w,n[67]=v,n[68]=a,n[69]=Je):Je=n[69],n[70]!==Ne||n[71]!==Je?(Ge=(0,fe.jsx)(N.RenderProfile,{id:Ne,children:Je}),n[70]=Ne,n[71]=Je,n[72]=Ge):Ge=n[72],n[73]!==c||n[74]!==he.archiveFinished||n[75]!==he.status||n[76]!==W||n[77]!==Ie||n[78]!==me||n[79]!==o||n[80]!==de||n[81]!==ge||n[82]!==a?(Ze=Ie?(0,fe.jsx)(Y.AgentTracks,{serverId:o,workspaceId:a,agentId:c,cwd:W,subagentRows:de,tasks:ge,archiveFinishedStatus:he.status,onArchiveFinished:he.archiveFinished,hasPluginComposerPills:me}):null,n[73]=c,n[74]=he.archiveFinished,n[75]=he.status,n[76]=W,n[77]=Ie,n[78]=me,n[79]=o,n[80]=de,n[81]=ge,n[82]=a,n[83]=Ze):Ze=n[83],n[84]!==Ge||n[85]!==Ze?(Qe=(0,fe.jsxs)(t.View,{style:tt.content,children:[Ge,Ze]}),n[84]=Ge,n[85]=Ze,n[86]=Qe):Qe=n[86],n[87]!==U||n[88]!==Qe?(et=(0,fe.jsx)(b.RetainedPanel,{active:U,children:Qe}),n[87]=U,n[88]=Qe,n[89]=et):et=n[89];const ot=et;let at,ct,lt,dt,ut;n[90]!==E?(at=E("agentPanel.artifacts.chatTab"),n[90]=E,n[91]=at):at=n[91],n[92]!==at?(ct={value:"chat",label:at,icon:rt,testID:"agent-view-chat"},n[92]=at,n[93]=ct):ct=n[93],n[94]!==E?(lt=E("agentPanel.stream.tab"),n[94]=E,n[95]=lt):lt=n[95],n[96]!==lt?(dt={value:"artifacts",label:lt,icon:it,testID:"agent-view-artifacts"},n[96]=lt,n[97]=dt):dt=n[97],n[98]!==ct||n[99]!==dt?(ut=[ct,dt],n[98]=ct,n[99]=dt,n[100]=ut):ut=n[100];const gt=ut,pt=ae?"md":"xs",ft=ae?nt.compactSegment:void 0;let ht,mt,It,St;n[101]!==Q||n[102]!==ae||n[103]!==L||n[104]!==pt||n[105]!==ft||n[106]!==gt?(ht=(0,fe.jsx)(P.SegmentedControl,{options:gt,value:L,onValueChange:Q,size:pt,textWrap:ae,testID:"agent-view-switcher",style:nt.viewSwitcher,segmentStyle:ft}),n[101]=Q,n[102]=ae,n[103]=L,n[104]=pt,n[105]=ft,n[106]=gt,n[107]=ht):ht=n[107],n[108]!==c||n[109]!==f.artifacts||n[110]!==f.companionEntries||n[111]!==oe||n[112]!==W||n[113]!==ie||n[114]!==te||n[115]!==U||n[116]!==B||n[117]!==o||n[118]!==v?(mt=U?null:(0,fe.jsx)(x.CompanionFeed,{serverId:o,agentId:c,cwd:W,entries:f.companionEntries??ze,artifacts:f.artifacts??[],isSupported:oe,artifactsSupported:oe,onOpenWorkspaceFile:B,onReturnToChat:te,onReplyInChat:ie,toast:v}),n[108]=c,n[109]=f.artifacts,n[110]=f.companionEntries,n[111]=oe,n[112]=W,n[113]=ie,n[114]=te,n[115]=U,n[116]=B,n[117]=o,n[118]=v,n[119]=mt):mt=n[119],n[120]!==U||n[121]!==D||n[122]!==O||n[123]!==F?(It=F&&U?(0,fe.jsx)(Le,{isRetrying:D,onRetry:O}):null,n[120]=U,n[121]=D,n[122]=O,n[123]=F,n[124]=It):It=n[124],n[125]!==ot||n[126]!==ht||n[127]!==mt||n[128]!==It?(St=(0,fe.jsxs)(t.View,{style:nt.contentContainer,children:[ht,ot,mt,It]}),n[125]=ot,n[126]=ht,n[127]=mt,n[128]=It,n[129]=St):St=n[129];const vt=St;let yt,At,xt;n[130]!==U||n[131]!==R?(yt=R&&U?(0,fe.jsx)(t.View,{style:nt.historySyncOverlay,testID:"agent-history-overlay",children:(0,fe.jsx)(Xe,{size:"large",uniProps:Ye})}):null,n[130]=U,n[131]=R,n[132]=yt):yt=n[132],n[133]!==A||n[134]!==T||n[135]!==y?(At=(0,fe.jsx)(K.TimelineSyncStatus,{sync:T,toast:y,onDismiss:A}),n[133]=A,n[134]=T,n[135]=y,n[136]=At):At=n[136],n[137]!==yt||n[138]!==At?(xt=(0,fe.jsxs)(fe.Fragment,{children:[yt,At]}),n[137]=yt,n[138]=At,n[139]=xt):xt=n[139];const wt=xt,Ct=U?void 0:nt.hiddenPane;let bt,kt;n[140]!==Ue||n[141]!==Ct?(bt=(0,fe.jsx)(t.View,{collapsable:!1,style:Ct,children:Ue}),n[140]=Ue,n[141]=Ct,n[142]=bt):bt=n[142],n[143]!==U||n[144]!==bt?(kt=(0,fe.jsx)(b.RetainedPanelActivity,{active:U,children:bt}),n[143]=U,n[144]=bt,n[145]=kt):kt=n[145];const Pt=kt;let jt;n[146]!==Pt||n[147]!==vt||n[148]!==wt||n[149]!==u?(jt=(0,fe.jsxs)(qe,{disabled:u,children:[vt,Pt,wt]}),n[146]=Pt,n[147]=vt,n[148]=wt,n[149]=u,n[150]=jt):jt=n[150];const Tt=jt;let Rt,Ft,_t;return n[151]!==u?(Rt=(0,fe.jsx)(Ee,{isArchivingCurrentAgent:u}),n[151]=u,n[152]=Rt):Rt=n[152],n[153]!==Tt||n[154]!==Rt?(Ft=(0,fe.jsxs)(t.View,{style:nt.root,children:[Tt,Rt]}),n[153]=Tt,n[154]=Rt,n[155]=Ft):Ft=n[155],n[156]!==We.replaceText||n[157]!==We.textSource||n[158]!==j||n[159]!==Ft?(_t=(0,fe.jsx)(_.RewindComposerRestoreProvider,{textSource:We.textSource,setText:We.replaceText,onRewindComplete:j,children:Ft}),n[156]=We.replaceText,n[157]=We.textSource,n[158]=j,n[159]=Ft,n[160]=_t):_t=n[160],_t});function Ee(e){const o=(0,s.c)(12),{isArchivingCurrentAgent:a}=e,{t:c}=(0,p.useTranslation)();if(!a)return null;let l,u,f,h,I,S;return o[0]===Symbol.for("react.memo_cache_sentinel")?(l=(0,fe.jsx)(Xe,{size:"large",uniProps:et}),o[0]=l):l=o[0],o[1]!==c?(u=c("agentPanel.states.archivingTitle"),o[1]=c,o[2]=u):u=o[2],o[3]!==u?(f=(0,fe.jsx)(n.Text,{style:nt.archivingTitle,children:u}),o[3]=u,o[4]=f):f=o[4],o[5]!==c?(h=c("agentPanel.states.archivingSubtitle"),o[5]=c,o[6]=h):h=o[6],o[7]!==h?(I=(0,fe.jsx)(n.Text,{style:nt.archivingSubtitle,children:h}),o[7]=h,o[8]=I):I=o[8],o[9]!==f||o[10]!==I?(S=(0,fe.jsxs)(t.View,{style:nt.archivingOverlay,testID:"agent-archiving-overlay",children:[l,f,I]}),o[9]=f,o[10]=I,o[11]=S):S=o[11],S}function qe(e){const t=(0,s.c)(5),{children:n,disabled:o}=e;let a,c;return t[0]!==n?(a=(0,fe.jsx)(w.ComposerDock,{children:n}),t[0]=n,t[1]=a):a=t[1],t[2]!==o||t[3]!==a?(c=(0,fe.jsx)(C.FileDropZone,{style:nt.container,disabled:o,children:a}),t[2]=o,t[3]=a,t[4]=c):c=t[4],c}function Le(e){const o=(0,s.c)(14),{isRetrying:c,onRetry:l}=e,{t:u}=(0,p.useTranslation)();let f,h,I,S,v;return o[0]!==u?(f=u("agentPanel.states.timelineSyncFailed"),o[0]=u,o[1]=f):f=o[1],o[2]!==f?(h=(0,fe.jsx)(n.Text,{style:nt.timelineSyncCalloutText,children:f}),o[2]=f,o[3]=h):h=o[3],o[4]!==c||o[5]!==u?(I=u(c?"agentPanel.states.timelineSyncRetrying":"common.actions.retry"),o[4]=c,o[5]=u,o[6]=I):I=o[6],o[7]!==c||o[8]!==l||o[9]!==I?(S=(0,fe.jsx)(a.Button,{size:"sm",variant:"secondary",onPress:l,disabled:c,testID:"agent-timeline-sync-retry",children:I}),o[7]=c,o[8]=l,o[9]=I,o[10]=S):S=o[10],o[11]!==h||o[12]!==S?(v=(0,fe.jsx)(t.View,{style:nt.timelineSyncCalloutRail,children:(0,fe.jsx)(t.View,{style:nt.timelineSyncCalloutContent,children:(0,fe.jsxs)(t.View,{style:nt.timelineSyncCallout,testID:"agent-timeline-sync-error",children:[h,S]})})}),o[11]=h,o[12]=S,o[13]=v):v=o[13],v}const Ke=(0,u.memo)(function({streamViewRef:e,serverId:t,workspaceId:n,agentId:s,agent:o,routeBottomAnchorRequest:a,hasAppliedAuthoritativeHistory:c,hasActiveComposer:l,hasVisibleAgentTracks:p,toast:f,onOpenWorkspaceFile:h}){const I=(0,H.useIsCompactFormFactor)(),A=(0,T.useWorkspaceHasDiffStat)(t,n),x=l&&(p||A),w=x?(0,R.resolveComposerTrackTailClearance)(I):0,C=x?(0,R.resolveComposerTrackControlClearance)(I):0,b=(0,se.useSessionStore)(e=>s?e.sessions[t]?.agentStreamTail?.get(s):void 0),k=(0,se.useSessionStore)((0,S.useShallow)(e=>s?(0,F.getActiveMessageSubmissions)(e.sessions[t]?.messageSubmissions.get(s)):Te)),P=(0,se.useSessionStore)((0,S.useShallow)(e=>s?(0,se.selectAgentTurnPresentation)(e.sessions[t],s):{isActive:!1,isCancelling:!1,startedAt:null,turnId:null})),j=b??je,_=(0,v.useStoreWithEqualityFn)(se.useSessionStore,e=>{if(!s)return Fe;const n=e.sessions[t]?.pendingPermissions;if(!n)return Fe;const o=[];for(const e of n.values())e.agentId===s&&o.push(e);return o.length>0?o:Fe},S.shallow),D=(0,u.useMemo)(()=>0===_.length?Re:new Map(_.map(e=>[e.key,e])),[_]);return(0,fe.jsx)(y.AgentStreamView,{ref:e,agentId:o.id,serverId:t,context:o,streamItems:j,pendingPermissions:D,routeBottomAnchorRequest:a,isAuthoritativeHistoryReady:c,bottomOverlayTailClearance:w,bottomOverlayControlClearance:C,toast:f,pendingMessageSubmissions:k,turnPresentation:P,onOpenWorkspaceFile:h})}),$e=(0,u.memo)(function(e){const t=(0,s.c)(14),{agentId:n,serverId:o,isPaneFocused:a,isArchivingCurrentAgent:c,archivedAt:l,cwd:u,isSubmitLoading:p,agentInputDraft:f,onAttentionInputFocus:h,onAttentionPromptSend:I,onComposerHeightChange:S,onMessageSent:v}=e;if(!n)return null;if(l){let e;return t[0]!==n||t[1]!==o?(e=(0,fe.jsx)(A.ArchivedAgentCallout,{serverId:o,agentId:n}),t[0]=n,t[1]=o,t[2]=e):e=t[2],e}if(c)return null;let y;return t[3]!==n||t[4]!==f||t[5]!==u||t[6]!==a||t[7]!==p||t[8]!==h||t[9]!==I||t[10]!==S||t[11]!==v||t[12]!==o?(y=(0,fe.jsx)(Ue,{agentId:n,serverId:o,isPaneFocused:a,cwd:u,isSubmitLoading:p,agentInputDraft:f,onAttentionInputFocus:h,onAttentionPromptSend:I,onComposerHeightChange:S,onMessageSent:v}),t[3]=n,t[4]=f,t[5]=u,t[6]=a,t[7]=p,t[8]=h,t[9]=I,t[10]=S,t[11]=v,t[12]=o,t[13]=y):y=t[13],y});function Ue(e){const n=(0,s.c)(49),{agentId:o,serverId:a,isPaneFocused:c,cwd:l,isSubmitLoading:u,agentInputDraft:p,onAttentionInputFocus:f,onAttentionPromptSend:h,onComposerHeightChange:I,onMessageSent:S}=e,v=(0,H.useIsCompactFormFactor)();let y;n[0]!==v?(y={initialIsBelow:v},n[0]=v,n[1]=y):y=n[1];const{onLayout:A,isBelow:x}=(0,q.useContainerWidthBelow)(H.COMPACT_FORM_FACTOR_WIDTH,y),w=(0,$.usePaneContext)(),C=(0,ae.useSettings)(Ze),{workspaceId:b,tabId:k,retargetCurrentTab:P}=w,{archiveAgent:T}=(0,E.useArchiveAgent)(),R=(0,re.useWorkspaceLayoutStore)(Ge),F=(0,re.useWorkspaceLayoutStore)(Je),_=(0,re.useWorkspaceLayoutStore)(Ne);let D;n[2]!==l||n[3]!==a||n[4]!==b?(D={serverId:a,cwd:l,workspaceId:b},n[2]=l,n[3]=a,n[4]=b,n[5]=D):D=n[5];const O=(0,W.useWorkspaceAttachmentScopeKey)(D);let M;n[6]!==O?(M=[O],n[6]=O,n[7]=M):M=n[7];const z=M;let B;n[8]!==l||n[9]!==v||n[10]!==C||n[11]!==a||n[12]!==b?(B=e=>{"review"===e.kind&&(0,oe.openWorkspaceChanges)({isCompact:v,workspaceKey:(0,ie.buildWorkspaceTabPersistenceKey)({serverId:a,workspaceId:b}),checkout:{serverId:a,cwd:l,isGit:!0},preferences:C})},n[8]=l,n[9]=v,n[10]=C,n[11]=a,n[12]=b,n[13]=B):B=n[13];const L=B;let K;n[14]!==o||n[15]!==T||n[16]!==R||n[17]!==F||n[18]!==P||n[19]!==a||n[20]!==k||n[21]!==_||n[22]!==b?(K=async e=>{const t=he(se.useSessionStore.getState(),a,o);if(!t)throw new Error("Agent not found");const n=(0,ie.buildWorkspaceTabPersistenceKey)({serverId:a,workspaceId:b});n&&(_(n,o),F(n,o)),"replace-agent-with-draft"===e.kind?P({kind:"draft",draftId:(0,ne.generateDraftId)(),setup:(0,pe.buildDraftAgentSetup)(t)}):n&&R(n,k),await T({serverId:a,agentId:o})},n[14]=o,n[15]=T,n[16]=R,n[17]=F,n[18]=P,n[19]=a,n[20]=k,n[21]=_,n[22]=b,n[23]=K):K=n[23];const U=K,N=p.textSource,J=p.editText,G=p.textReplacement,Z=p.attachments,Q=p.setAttachments,X=p.clear,Y=String(p.attachmentFocusRequestId);let ee,te;return n[24]!==o||n[25]!==p.attachments||n[26]!==p.clear||n[27]!==p.editText||n[28]!==p.setAttachments||n[29]!==p.textReplacement||n[30]!==p.textSource||n[31]!==z||n[32]!==l||n[33]!==U||n[34]!==L||n[35]!==x||n[36]!==c||n[37]!==u||n[38]!==f||n[39]!==h||n[40]!==I||n[41]!==S||n[42]!==a||n[43]!==Y||n[44]!==b?(ee=(0,fe.jsx)(j.Composer,{agentId:o,serverId:a,workspaceId:b,blurOnSubmit:V.isNative,isPaneFocused:c,textSource:N,onChangeText:J,textReplacement:G,attachments:Z,attachmentScopeKeys:z,onOpenWorkspaceAttachment:L,onChangeAttachments:Q,cwd:l,clearDraft:X,autoFocus:!0,autoFocusKey:Y,isSubmitLoading:u,onAttentionInputFocus:f,onAttentionPromptSend:h,onComposerHeightChange:I,onMessageSent:S,onClientSlashCommand:U,isCompactLayout:x}),n[24]=o,n[25]=p.attachments,n[26]=p.clear,n[27]=p.editText,n[28]=p.setAttachments,n[29]=p.textReplacement,n[30]=p.textSource,n[31]=z,n[32]=l,n[33]=U,n[34]=L,n[35]=x,n[36]=c,n[37]=u,n[38]=f,n[39]=h,n[40]=I,n[41]=S,n[42]=a,n[43]=Y,n[44]=b,n[45]=ee):ee=n[45],n[46]!==A||n[47]!==ee?(te=(0,fe.jsx)(t.View,{style:tt.inputAreaWrapper,onLayout:A,children:ee}),n[46]=A,n[47]=ee,n[48]=te):te=n[48],te}function Ne(e){return e.unpinAgent}function Je(e){return e.hideAgent}function Ge(e){return e.closeTab}function Ze(e){return e.openInSidePane}function Qe(e){const o=(0,s.c)(18),{serverLabel:a,connectionStatus:c,lastError:l,isUnknownDaemon:u,t:p}=e;if(void 0!==u&&u){let e,s,c,l,u;return o[0]!==a||o[1]!==p?(e=p("agentPanel.unavailable.unknownHost",{serverLabel:a}),o[0]=a,o[1]=p,o[2]=e):e=o[2],o[3]!==e?(s=(0,fe.jsx)(n.Text,{style:nt.errorText,children:e}),o[3]=e,o[4]=s):s=o[4],o[5]!==p?(c=p("agentPanel.unavailable.addHost"),o[5]=p,o[6]=c):c=o[6],o[7]!==c?(l=(0,fe.jsx)(n.Text,{style:nt.statusText,children:c}),o[7]=c,o[8]=l):l=o[8],o[9]!==s||o[10]!==l?(u=(0,fe.jsx)(t.View,{style:nt.container,children:(0,fe.jsxs)(t.View,{style:nt.centerState,children:[s,l]})}),o[9]=s,o[10]=l,o[11]=u):u=o[11],u}const f="connecting"===c,h="online"===c;let I;return o[12]!==f||o[13]!==h||o[14]!==l||o[15]!==a||o[16]!==p?(I=(0,fe.jsx)(t.View,{style:nt.container,children:(0,fe.jsx)(t.View,{style:nt.centerState,children:f||h?(0,fe.jsxs)(fe.Fragment,{children:[(0,fe.jsx)(Xe,{size:"large",uniProps:Ye}),(0,fe.jsx)(n.Text,{style:nt.loadingText,children:p(h?"agentPanel.unavailable.preparingSession":"agentPanel.unavailable.connecting",{serverLabel:a})}),(0,fe.jsx)(n.Text,{style:nt.statusText,children:p(h?"agentPanel.unavailable.showSoon":"agentPanel.unavailable.showWhenOnline")})]}):(0,fe.jsxs)(fe.Fragment,{children:[(0,fe.jsx)(n.Text,{style:nt.offlineTitle,children:p("agentPanel.unavailable.reconnectingTo",{serverLabel:a})}),(0,fe.jsx)(n.Text,{style:nt.offlineDescription,children:p("agentPanel.unavailable.showAgainWhenReachable")}),l?(0,fe.jsx)(n.Text,{style:nt.offlineDetails,children:l}):null]})})}),o[12]=f,o[13]=h,o[14]=l,o[15]=a,o[16]=p,o[17]=I):I=o[17],I}const Xe=(0,h.withUnistyles)(c.LoadingSpinner),Ye=e=>({color:e.colors.foregroundMuted}),et=e=>({color:e.colors.foreground}),tt=f.default.create({content:{flex:1},inputAreaWrapper:{width:"100%",flexShrink:1}}),nt=h.StyleSheet.create(e=>({root:{flex:1,backgroundColor:e.colors.surface0,uni__dependencies:[0]},container:{flex:1,backgroundColor:e.colors.surface0,uni__dependencies:[0]},contentContainer:Object.assign({flex:1,overflow:"hidden"},V.isWeb?{userSelect:"none"}:{}),viewSwitcher:{minHeight:40,flexShrink:0,flexDirection:"row",alignItems:"center",justifyContent:"center",paddingHorizontal:e.spacing[3],paddingVertical:e.spacing[2],borderBottomWidth:1,borderBottomColor:e.colors.border,uni__dependencies:[0]},compactSegment:{minHeight:44},hiddenPane:{display:"none"},timelineSyncCalloutRail:{width:"100%",alignItems:"center",paddingHorizontal:e.spacing[4],paddingTop:e.spacing[2],uni__dependencies:[0]},timelineSyncCalloutContent:{width:"100%",maxWidth:e.contentMaxWidth,uni__dependencies:[0]},timelineSyncCallout:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:e.spacing[3],backgroundColor:e.colors.surface1,borderWidth:e.borderWidth[1],borderColor:e.colors.statusDanger,borderRadius:e.borderRadius["2xl"],paddingVertical:e.spacing[2],paddingHorizontal:e.spacing[4],uni__dependencies:[0]},timelineSyncCalloutText:{color:e.colors.foregroundMuted,fontSize:e.fontSize.base,uni__dependencies:[0]},historySyncOverlay:{position:"absolute",top:0,right:0,bottom:0,left:0,backgroundColor:e.colors.surface0,alignItems:"center",justifyContent:"center",zIndex:40,uni__dependencies:[0]},archivingOverlay:{position:"absolute",top:0,right:0,bottom:0,left:0,backgroundColor:"rgba(8, 10, 14, 0.86)",alignItems:"center",justifyContent:"center",paddingHorizontal:e.spacing[8],gap:e.spacing[3],zIndex:50,uni__dependencies:[0]},archivingTitle:{fontSize:e.fontSize.base,fontWeight:e.fontWeight.semibold,color:e.colors.foreground,textAlign:"center",uni__dependencies:[0]},archivingSubtitle:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,textAlign:"center",uni__dependencies:[0]},loadingText:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,uni__dependencies:[0]},centerState:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:e.spacing[6],gap:e.spacing[3],uni__dependencies:[0]},errorContainer:{flex:1,alignItems:"center",justifyContent:"center"},errorText:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,textAlign:"center",uni__dependencies:[0]},errorAction:{marginTop:e.spacing[4],uni__dependencies:[0]},statusText:{marginTop:e.spacing[2],textAlign:"center",fontSize:e.fontSize.base,color:e.colors.foregroundMuted,uni__dependencies:[0]},offlineTitle:{fontSize:e.fontSize.base,fontWeight:e.fontWeight.semibold,color:e.colors.foreground,textAlign:"center",uni__dependencies:[0]},offlineDescription:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,textAlign:"center",uni__dependencies:[0]},offlineDetails:{fontSize:e.fontSize.sm,color:e.colors.foregroundMuted,textAlign:"center",uni__dependencies:[0]}}));function st(e){return e.setSelectedView}function rt(e){const{color:t,size:n}=e;return(0,fe.jsx)(l.MessageSquare,{color:t,size:n})}function it(e){const{color:t,size:n}=e;return(0,fe.jsx)(l.ListFilter,{color:t,size:n})}},4896,[897,898,455,3767,3219,3220,1219,36,855,59,234,146,56,3812,3653,3995,4897,5007,5008,4437,4658,3944,5038,4415,4662,5040,4793,3664,4946,4050,896,3857,1218,882,5041,4794,5042,3844,4704,5043,5044,4625,4894,4564,4784,5045,3652,5046,5047,5053,5068,3856,3790,3656,3808,3791,4621,885,5057,3862,3846,3852,3700,4764,279]);
18167
18167
  __d(function(g,r,i,a,m,_e,d){"use strict";const e=["itemId","source","onInlineDetailsExpandedChangeByItemId"];function t(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(_e,'__esModule',{value:!0}),Object.defineProperty(_e,"AgentStreamView",{enumerable:!0,get:function(){return Fe}});var n=t(r(d[0])),s=r(d[1]),o=r(d[2]),l=r(d[3]),c=r(d[4]),u=r(d[5]),p=r(d[6]),h=r(d[7]),I=r(d[8]),y=r(d[9]),f=t(y),v=r(d[10]);r(d[11]),r(d[12]),r(d[13]),r(d[14]);var S=r(d[15]),x=r(d[16]),b=r(d[17]),w=r(d[18]),T=t(w),P=r(d[19]),j=r(d[20]),C=r(d[21]),_=r(d[22]),k=r(d[23]),O=r(d[24]),R=r(d[25]),B=r(d[26]),H=r(d[27]),F=r(d[28]),A=r(d[29]),M=r(d[30]),E=r(d[31]),q=r(d[32]),L=r(d[33]),D=r(d[34]),W=r(d[35]),z=r(d[36]),V=r(d[37]),G=r(d[38]),K=r(d[39]),N=r(d[40]),U=r(d[41]),$=r(d[42]),J=r(d[43]),Q=r(d[44]),X=r(d[45]),Y=r(d[46]),Z=r(d[47]),ee=r(d[48]),te=r(d[49]),ne=r(d[50]),se=r(d[51]),oe=r(d[52]),re=r(d[53]),ie=r(d[54]),ae=r(d[55]),le=r(d[56]),de=r(d[57]),ce=r(d[58]),ue=r(d[59]);function pe(e,t){const n=(0,te.normalizeInlinePathTarget)(e,t);return n?"error"in n?{target:null,error:n.error}:{target:n,error:null}:{target:null,error:"pathUnavailable"}}function me(e){const t=(0,c.c)(11),{error:n,onDismiss:s}=e,{t:o}=(0,v.useTranslation)();if(!n)return null;const l=`workspace.fileExplorer.errors.${n}`;let u,I,y,f;return t[0]!==o||t[1]!==l?(u=o(l),t[0]=o,t[1]=l,t[2]=u):u=t[2],t[3]!==o?(I=o("common.actions.dismiss"),t[3]=o,t[4]=I):I=t[4],t[5]!==s||t[6]!==I?(y=(0,ue.jsx)(h.Button,{variant:"ghost",size:"sm",onPress:s,children:I}),t[5]=s,t[6]=I,t[7]=y):y=t[7],t[8]!==u||t[9]!==y?(f=(0,ue.jsx)(p.Alert,{variant:"info",description:u,testID:"inline-path-error",children:y}),t[8]=u,t[9]=y,t[10]=f):f=t[10],f}function ge(e){return e.pendingPermissions||e.turnFooter||0!==e.bottomOverlayInset?(0,ue.jsxs)(ue.Fragment,{children:[e.turnFooter,e.pendingPermissions?(0,ue.jsx)(l.View,{style:Ne.contentWrapper,children:(0,ue.jsx)(l.View,{style:Ne.listHeaderContent,children:e.pendingPermissions})}):null,e.bottomOverlayInset>0?(0,ue.jsx)(he,{height:e.bottomOverlayInset}):null]}):null}function he(e){const t=(0,c.c)(4),{height:n}=e;let s;t[0]!==n?(s={height:n},t[0]=n,t[1]=s):s=t[1];const o=s;let u;return t[2]!==o?(u=(0,ue.jsx)(l.View,{style:o}),t[2]=o,t[3]=u):u=t[3],u}function Ie(e){if(!e.content)return null;const t=e.layoutItem.completedFooter,n=t?(0,ue.jsx)(Q.CompletedTurnFooterRow,{strategy:e.strategy,items:t.items,timing:t.timing,startIndex:t.startIndex,supportsTimelineCursor:e.supportsTimelineCursor,onForkAssistantTurn:e.onForkAssistantTurn,onPin:e.onPin}):null,s=(0,ue.jsx)($e,{itemId:e.layoutItem.item.id,gapBelow:e.layoutItem.gapBelow,children:e.content});return"footer-then-content"===e.layoutItem.frameOrder?(0,ue.jsxs)(ue.Fragment,{children:[n,s]}):(0,ue.jsxs)(ue.Fragment,{children:[s,n]})}function ye(e){return e.renderModel.boundary.hasVirtualizedHistory||e.renderModel.boundary.hasMountedHistory||e.renderModel.boundary.hasLiveHead||e.renderModel.auxiliary.pendingPermissions||e.renderModel.auxiliary.turnFooter?null:(0,ue.jsx)(l.View,{style:e.emptyStateStyle,children:(0,ue.jsx)(o.Text,{style:Ne.emptyStateText,children:e.emptyText})})}const fe=(0,y.memo)(function(e){const t=(0,c.c)(5),{layoutItem:n,renderStreamItem:s}=e;let o,l;return t[0]!==n||t[1]!==s?(o=s(n),t[0]=n,t[1]=s,t[2]=o):o=t[2],t[3]!==o?(l=(0,ue.jsx)(ue.Fragment,{children:o}),t[3]=o,t[4]=l):l=t[4],l});function ve(e){const t=e.layoutItemById.get(e.item.id);return t?(0,ue.jsx)(fe,{item:e.item,layoutItem:t,renderStreamItem:e.renderStreamItem}):null}function Se(e){const t=e.layoutItemById.get(e.item.id);return t?e.renderStreamItem(t):null}const xe=["supportsStreaming","supportsSessionPersistence","supportsDynamicModes","supportsMcpServers","supportsReasoningStream","supportsToolInvocations","supportsRewindConversation","supportsRewindFiles","supportsRewindBoth"],be=[];function we(e,t){const n=(0,y.useRef)(e);return t&&(n.current=e),t?e:n.current}const Te=[];const Pe=(0,y.forwardRef)(function(e,t){const n=(0,c.c)(281),{agentId:o,serverId:p,context:h,streamItems:I,streamHead:S,pendingPermissions:b,pendingMessageSubmissions:k,turnPresentation:B,routeBottomAnchorRequest:E,isAuthoritativeHistoryReady:q,bottomOverlayTailClearance:ae,bottomOverlayControlClearance:he,toast:fe,onOpenWorkspaceFile:xe,readOnly:Pe,historyPagination:je}=e,Ce=void 0===k?Te:k,ke=void 0===E?null:E,Oe=void 0===q||q,Re=void 0===ae?0:ae,Be=void 0!==Pe&&Pe,{t:He}=(0,v.useTranslation)(),Fe=(0,A.useSettings)(Je),Ee=(0,A.useSettings)(Qe),qe=(0,A.useSettings)(Xe),Le=(0,A.useSettings)(A.resolveContentMaxWidth),De=(0,y.useRef)(null);let We;n[0]!==Ce?(We=new Set(Ce.map(Ye)),n[0]=Ce,n[1]=We):We=n[1];const ze=We,Ve=(0,x.useIsCompactFormFactor)();let Ke;n[2]!==Ve?(Ke=(0,V.resolveStreamRenderStrategy)({platform:"web",isMobileBreakpoint:Ve}),n[2]=Ve,n[3]=Ke):Ke=n[3];const Ue=Ke,[$e,Ze]=(0,y.useState)(!0),[et,tt]=(0,y.useState)(null);let nt;n[4]===Symbol.for("react.memo_cache_sentinel")?(nt=()=>tt(null),n[4]=nt):nt=n[4];const st=(0,oe.useStableEvent)(nt);let ot;n[5]===Symbol.for("react.memo_cache_sentinel")?(ot=new Set,n[5]=ot):ot=n[5];const[rt,it]=(0,y.useState)(ot);let at;n[6]===Symbol.for("react.memo_cache_sentinel")?(at=new Set,n[6]=at):at=n[6];const[lt,dt]=(0,y.useState)(at),ct=p??h.serverId??"",ut=(0,ce.useInstalledTimelineTransform)(ct);let pt;n[7]!==ct?(pt=e=>e.sessions[ct]?.client??null,n[7]=ct,n[8]=pt):pt=n[8];const mt=(0,O.useSessionStore)(pt);let gt;n[9]!==o||n[10]!==ct?(gt=e=>e.sessions[ct]?.agentStreamHead?.get(o),n[9]=o,n[10]=ct,n[11]=gt):gt=n[11];const ht=(0,O.useSessionStore)(gt),It=S??ht;let yt;n[12]!==Be||n[13]!==ct||n[14]!==fe?(yt={serverId:ct,toast:fe,readOnly:Be},n[12]=Be,n[13]=ct,n[14]=fe,n[15]=yt):yt=n[15];const ft=(0,re.useForkAgent)(yt);let vt;n[16]!==ct?(vt=e=>!0===e.sessions[ct]?.serverInfo?.features?.agentForkContextCursor,n[16]=ct,n[17]=vt):vt=n[17];const St=(0,O.useSessionStore)(vt);let xt;n[18]!==ct?(xt=e=>!0===e.sessions[ct]?.serverInfo?.features?.agentTimelinePromptIndex,n[18]=ct,n[19]=xt):xt=n[19];const bt=(0,O.useSessionStore)(xt);let wt;n[20]!==o||n[21]!==ct?(wt=e=>e.sessions[ct]?.agentTimelineCursor.get(o)?.epoch??null,n[20]=o,n[21]=ct,n[22]=wt):wt=n[22];const Tt=(0,O.useSessionStore)(wt);let Pt;n[23]!==o||n[24]!==ct?(Pt=e=>!0===e.sessions[ct]?.agentTimelineHasNewer.get(o),n[23]=o,n[24]=ct,n[25]=Pt):Pt=n[25];const jt=(0,O.useSessionStore)(Pt);let Ct;n[26]!==h.cwd?(Ct=h.cwd.trim(),n[26]=h.cwd,n[27]=Ct):Ct=n[27];const _t=Ct,kt=(0,R.useWorkspaceDirectory)(ct,h.workspaceId??null);let Ot;n[28]!==o||n[29]!==ct?(Ot=ct?{serverId:ct,agentId:o}:void 0,n[28]=o,n[29]=ct,n[30]=Ot):Ot=n[30];const Rt=Ot;let Bt;n[31]!==h.workspaceId||n[32]!==kt||n[33]!==ct?(Bt={serverId:ct,workspaceId:h.workspaceId,workspaceRoot:kt},n[31]=h.workspaceId,n[32]=kt,n[33]=ct,n[34]=Bt):Bt=n[34];const{requestDirectoryListing:Ht}=(0,H.useFileExplorerActions)(Bt);let Ft;n[35]!==o||n[36]!==ct||n[37]!==fe?(Ft={serverId:ct,agentId:o,toast:fe},n[35]=o,n[36]=ct,n[37]=fe,n[38]=Ft):Ft=n[38];const At=(0,F.useLoadOlderAgentHistory)(Ft),{isLoadingOlder:Mt,hasOlder:Et,progressKey:qt,loadOlder:Lt}=je?{isLoadingOlder:je.isLoadingOlder,hasOlder:je.hasOlder,progressKey:je.progressKey,loadOlder:je.onLoadOlder}:At;let Dt;n[39]===Symbol.for("react.memo_cache_sentinel")?(Dt=w.FadeIn.duration(200),n[39]=Dt):Dt=n[39];const Wt=Dt;let zt;n[40]===Symbol.for("react.memo_cache_sentinel")?(zt=w.FadeOut.duration(200),n[40]=zt):zt=n[40];const Vt=zt;let Gt,Kt,Nt;n[41]===Symbol.for("react.memo_cache_sentinel")?(Gt=()=>{Ze(!0),tt(null),it(new Set),dt(new Set)},n[41]=Gt):Gt=n[41],n[42]!==o?(Kt=[o],n[42]=o,n[43]=Kt):Kt=n[43],(0,y.useEffect)(Gt,Kt),n[44]!==h.cwd||n[45]!==h.projectPlacement?.checkout?.isGit||n[46]!==h.workspaceId||n[47]!==kt||n[48]!==Ve||n[49]!==xe||n[50]!==Ht||n[51]!==ct?(Nt=(e,t)=>{if(!e.path)return;const n=pe(e.path,{sourceCwd:h.cwd,workspaceRoot:kt??void 0});if(n.error)return void tt(n.error);const s=n.target;if(tt(null),s.file){const n=(0,ne.normalizeWorkspaceFileLocation)({path:s.file,lineStart:e.lineStart,lineEnd:e.lineEnd});if(!n)return;return xe?void xe({location:n,disposition:t}):void(h.workspaceId&&(0,se.navigateToWorkspace)({serverId:ct,workspaceId:h.workspaceId,target:(0,ne.createWorkspaceFileTabTarget)(n)}))}Ht(s.directory,{recordHistory:!1,setCurrentPath:!1}),(0,C.openExplorerSidebarView)({isCompact:Ve,workspaceKey:(0,j.buildWorkspaceTabPersistenceKey)({serverId:ct,workspaceId:h.workspaceId??""}),checkout:{serverId:ct,cwd:kt??"",isGit:h.projectPlacement?.checkout?.isGit??!0},view:"files"})},n[44]=h.cwd,n[45]=h.projectPlacement?.checkout?.isGit,n[46]=h.workspaceId,n[47]=kt,n[48]=Ve,n[49]=xe,n[50]=Ht,n[51]=ct,n[52]=Nt):Nt=n[52];const Ut=(0,oe.useStableEvent)(Nt);let $t;n[53]!==Ut?($t=e=>{Ut({raw:e,path:e},"preferred")},n[53]=Ut,n[54]=$t):$t=n[54];const Jt=(0,oe.useStableEvent)($t);let Qt;n[55]!==o||n[56]!==h||n[57]!==ft?(Qt=async e=>{const{target:t,boundary:n}=e;await ft({agentId:o,agent:h,workspaceId:h.workspaceId,target:t,boundary:n})},n[55]=o,n[56]=h,n[57]=ft,n[58]=Qt):Qt=n[58];const Xt=(0,oe.useStableEvent)(Qt);let Yt;n[59]!==o||n[60]!==h||n[61]!==ft?(Yt=async e=>{await ft({agentId:o,agent:h,workspaceId:h.workspaceId,target:e})},n[59]=o,n[60]=h,n[61]=ft,n[62]=Yt):Yt=n[62];const Zt=(0,oe.useStableEvent)(Yt),en=(0,le.useRetainedPanelActive)(),tn=we(I,en),nn=we(It,en),sn=we(B,en),on=sn.isActive;let rn;n[63]===Symbol.for("react.memo_cache_sentinel")?(rn=(0,D.createStreamPresentation)(),n[63]=rn):rn=n[63];const an=rn,ln=nn??be;let dn;n[64]!==tn||n[65]!==on||n[66]!==ln||n[67]!==Ee||n[68]!==ut?(dn=an({tail:tn,head:ln,transform:ut,level:Ee,isTurnActive:on}),n[64]=tn,n[65]=on,n[66]=ln,n[67]=Ee,n[68]=ut,n[69]=dn):dn=n[69];const cn=dn,{start:un,hasLocalHistory:pn,revealLoadedHistory:mn,loadOlder:gn}=(0,de.useStreamHistoryWindow)({agentId:o,items:cn.tail,loadRemoteOlder:Lt}),hn=Mt,In=pn||Et,yn=`${qt??"local"}:${un}`;let fn;n[70]!==sn.startedAt||n[71]!==un||n[72]!==Ve||n[73]!==on||n[74]!==cn.head||n[75]!==cn.tail?(fn=(0,z.buildAgentStreamRenderModel)({isTurnActive:on,activeTurnStartedAt:sn.startedAt,tail:cn.tail,head:cn.head,platform:ie.isWeb?"web":"native",isMobileBreakpoint:Ve,historyStart:un}),n[70]=sn.startedAt,n[71]=un,n[72]=Ve,n[73]=on,n[74]=cn.head,n[75]=cn.tail,n[76]=fn):fn=n[76];const vn=fn;let Sn;n[77]!==vn.history||n[78]!==vn.segments.liveHead||n[79]!==vn.turnTiming.byAssistantId||n[80]!==on||n[81]!==Ue?(Sn=(0,Y.layoutStream)({strategy:Ue,isTurnActive:on,history:vn.history,liveHead:vn.segments.liveHead,timingByAssistantId:vn.turnTiming.byAssistantId}),n[77]=vn.history,n[78]=vn.segments.liveHead,n[79]=vn.turnTiming.byAssistantId,n[80]=on,n[81]=Ue,n[82]=Sn):Sn=n[82];const xn=Sn;let bn;n[83]!==He||n[84]!==fe?(bn=()=>{fe?.error(He("agentStream.historyLoadFailed"))},n[83]=He,n[84]=fe,n[85]=bn):bn=n[85];const wn=bn;let Tn;n[86]!==vn.history||n[87]!==vn.segments.liveHead?(Tn=new Set([...vn.history,...vn.segments.liveHead].map(D.getStreamItemMessageId)),n[86]=vn.history,n[87]=vn.segments.liveHead,n[88]=Tn):Tn=n[88];const Pn=Tn,jn=bt&&qe;let Cn;n[89]!==o||n[90]!==nn||n[91]!==tn||n[92]!==wn||n[93]!==ct||n[94]!==mn||n[95]!==jn||n[96]!==Tt||n[97]!==Pn?(Cn={agentId:o,serverId:ct,timelineEpoch:Tt,tail:tn,head:nn,enabled:jn,viewportRef:De,onJumpError:wn,visibleMessageIds:Pn,revealLoadedMessage:mn},n[89]=o,n[90]=nn,n[91]=tn,n[92]=wn,n[93]=ct,n[94]=mn,n[95]=jn,n[96]=Tt,n[97]=Pn,n[98]=Cn):Cn=n[98];const _n=(0,K.useChatOutline)(Cn);let kn;n[99]!==vn.history||n[100]!==vn.segments.liveHead?(kn={history:vn.history,liveHead:vn.segments.liveHead},n[99]=vn.history,n[100]=vn.segments.liveHead,n[101]=kn):kn=n[101];const On=(0,U.usePinnedPrompt)(kn);let Rn;n[102]===Symbol.for("react.memo_cache_sentinel")?(Rn=e=>{De.current?.scrollToMessage?.(e)},n[102]=Rn):Rn=n[102];const Bn=(0,oe.useStableEvent)(Rn);let Hn,Fn,An;n[103]===Symbol.for("react.memo_cache_sentinel")?(Hn=()=>({scrollToBottom(e){const t=void 0===e?"jump-to-bottom":e;De.current?.scrollToBottom(t)},prepareForViewportChange(){De.current?.prepareForViewportChange()}}),Fn=[],n[103]=Hn,n[104]=Fn):(Hn=n[103],Fn=n[104]),(0,y.useImperativeHandle)(t,Hn,Fn),n[105]!==o||n[106]!==wn||n[107]!==jt||n[108]!==ct?(An=()=>{jt?(0,M.returnToTimelineTail)({fetchTail:()=>(0,$.getHostRuntimeStore)().fetchAgentTimeline(ct,o,Object.assign({},(0,J.planTimelineTailFetch)())),scrollToBottom:()=>De.current?.scrollToBottom("jump-to-bottom"),onError:wn}):De.current?.scrollToBottom("jump-to-bottom")},n[105]=o,n[106]=wn,n[107]=jt,n[108]=ct,n[109]=An):An=n[109];const Mn=An;let En;n[110]!==Ue?(En=(e,t)=>{Ue.shouldDisableParentScrollOnInlineDetailsExpansion()&&it(n=>{const s=new Set(n);return t?s.add(e):s.delete(e),s})},n[110]=Ue,n[111]=En):En=n[111];const qn=En;let Ln;n[112]===Symbol.for("react.memo_cache_sentinel")?(Ln=(e,t)=>{dt(n=>{const s=new Set(n);return t?s.add(e):s.delete(e),s})},n[112]=Ln):Ln=n[112];const Dn=Ln;let Wn;n[113]!==o||n[114]!==mt||n[115]!==He||n[116]!==fe?(Wn=e=>{o&&mt&&mt.updateCompanionEntry({agentId:o,action:"add_pin",text:e}).catch(()=>fe?.error(He("agentPanel.stream.mutationFailed")))},n[113]=o,n[114]=mt,n[115]=He,n[116]=fe,n[117]=Wn):Wn=n[117];const zn=Wn;let Vn;n[118]!==o||n[119]!==mt||n[120]!==He||n[121]!==fe?(Vn=(e,t)=>{o&&mt&&mt.updateCompanionEntry({agentId:o,action:"add_q_and_a",text:e,sourceId:t?`msg:${t}`:void 0}).catch(()=>fe?.error(He("agentPanel.stream.mutationFailed")))},n[118]=o,n[119]=mt,n[120]=He,n[121]=fe,n[122]=Vn):Vn=n[122];const Gn=Vn;let Kn;n[123]!==o||n[124]!==mt||n[125]!==h.capabilities||n[126]!==zn||n[127]!==Gn||n[128]!==ze||n[129]!==ct?(Kn=(e,t)=>(0,ue.jsx)(_.UserMessage,{serverId:ct,agentId:o,messageId:t.messageId,message:t.text,images:t.images,attachments:t.attachments,timestamp:t.timestamp.getTime(),onPin:zn,onQAndA:Gn,capabilities:h.capabilities,client:mt,isFirstInGroup:e.isFirstInUserGroup,isLastInGroup:e.isLastInUserGroup,isPending:void 0!==t.clientMessageId&&ze.has(t.clientMessageId)}),n[123]=o,n[124]=mt,n[125]=h.capabilities,n[126]=zn,n[127]=Gn,n[128]=ze,n[129]=ct,n[130]=Kn):Kn=n[130];const Nn=Kn;let Un;n[131]!==o||n[132]!==mt||n[133]!==Ut||n[134]!==ct||n[135]!==fe||n[136]!==_t?(Un=(e,t)=>(0,ue.jsx)(te.AssistantFileLinkResolverProvider,{client:mt,serverId:ct,workspaceRoot:_t,onOpenWorkspaceFile:Ut,toast:fe,children:(0,ue.jsx)(u.ChatFindExpansion,{messageId:(0,D.getStreamItemMessageId)(t),children:n=>(0,ue.jsx)(_.AssistantMessage,{renderFullContent:n,occurrenceKey:(0,Z.createAssistantImageOccurrenceKey)({agentId:o,itemId:t.id}),message:t.text,timestamp:t.timestamp.getTime(),workspaceRoot:_t,serverId:ct,client:mt,spacing:e.assistantSpacing,phase:e.phase})})}),n[131]=o,n[132]=mt,n[133]=Ut,n[134]=ct,n[135]=fe,n[136]=_t,n[137]=Un):Un=n[137];const $n=Un;let Jn;n[138]!==Fe||n[139]!==qn?(Jn=(e,t)=>(0,ue.jsx)(Ae,{itemId:t.id,onInlineDetailsExpandedChangeByItemId:qn,text:t.text,status:t.status,isLastInSequence:e.isLastInToolSequence,defaultExpanded:Fe}),n[138]=Fe,n[139]=qn,n[140]=Jn):Jn=n[140];const Qn=Jn;let Xn;n[141]!==h.cwd||n[142]!==Jt||n[143]!==Rt||n[144]!==qn?(Xn=(e,t,n)=>{const{payload:s}=e;if("agent"===s.source){const o=s.data;return"speak"===o.name&&"unknown"===o.detail.type&&"string"==typeof o.detail.input&&o.detail.input.trim()?(0,ue.jsx)(_.SpeakMessage,{message:o.detail.input,timestamp:e.timestamp.getTime()}):(0,ue.jsx)(Me,{itemId:e.id,source:Rt,onInlineDetailsExpandedChangeByItemId:qn,toolName:o.name,error:o.error,status:o.status,detail:o.detail,cwd:h.cwd,metadata:o.metadata,isLastInSequence:t,onOpenFilePath:Jt,maxDetailHeight:n})}const o=s.data;return(0,ue.jsx)(Me,{itemId:e.id,source:Rt,onInlineDetailsExpandedChangeByItemId:qn,toolName:o.toolName,args:o.arguments,result:o.result,status:o.status,isLastInSequence:t,onOpenFilePath:Jt,maxDetailHeight:n})},n[141]=h.cwd,n[142]=Jt,n[143]=Rt,n[144]=qn,n[145]=Xn):Xn=n[145];const Yn=Xn;let Zn;n[146]!==cn.groupsByHostId?(Zn=e=>cn.groupsByHostId.get(e),n[146]=cn.groupsByHostId,n[147]=Zn):Zn=n[147];const es=(0,oe.useStableEvent)(Zn);let ts;n[148]!==lt||n[149]!==es||n[150]!==Yn?(ts=(e,t)=>{const n=es(t.id);if(!n)return Yn(t,e.isLastInToolSequence);const s=lt.has(n.run.id);return(0,ue.jsx)(W.OverviewToolCallGroupView,{group:n,expanded:s,isLastInSequence:e.isLastInToolSequence,onExpandedChange:Dn,children:s?n.run.calls.map((e,t)=>(0,ue.jsx)(f.default.Fragment,{children:Yn(e,t===n.run.calls.length-1,200)},e.id)):null})},n[148]=lt,n[149]=es,n[150]=Yn,n[151]=ts):ts=n[151];const ns=ts;let ss;n[152]!==o||n[153]!==$n||n[154]!==Qn||n[155]!==ns||n[156]!==Nn||n[157]!==ct?(ss=e=>{const t=e.item;switch(t.kind){case"user_message":return Nn(e,t);case"assistant_message":return $n(e,t);case"thought":return Qn(e,t);case"tool_call":return ns(e,t);case"notification":return(0,ue.jsx)(_.Notification,{level:t.level,message:t.message});case"todo_list":return(0,ue.jsx)(_.TodoListCard,{items:t.items,activity:t.activity});case"compaction":return(0,ue.jsx)(_.CompactionMarker,{status:t.status,trigger:t.trigger,preTokens:t.preTokens});case"plugin":return(0,ue.jsx)(ce.PluginTimelineItemView,{agentId:o,item:t,serverId:ct});default:return null}},n[152]=o,n[153]=$n,n[154]=Qn,n[155]=ns,n[156]=Nn,n[157]=ct,n[158]=ss):ss=n[158];const os=ss,rs=xn.auxiliaryTurnFooter;let is;n[159]!==Xt||n[160]!==zn||n[161]!==Be||n[162]!==os||n[163]!==Ue||n[164]!==St?(is=e=>Ie({content:os(e),layoutItem:e,strategy:Ue,supportsTimelineCursor:St,onForkAssistantTurn:Be?void 0:Xt,onPin:zn}),n[159]=Xt,n[160]=zn,n[161]=Be,n[162]=os,n[163]=Ue,n[164]=St,n[165]=is):is=n[165];const as=is;let ls,ds;n[166]!==b?(ls=Array.from(b.values()),n[166]=b,n[167]=ls):ls=n[167],n[168]!==o||n[169]!==ls?(ds=ls.filter(e=>e.agentId===o),n[168]=o,n[169]=ls,n[170]=ds):ds=n[170];const cs=ds;let us;var ps;n[171]!==mt||n[172]!==cs||n[173]!==ct?(us=0===(ps={pendingPermissions:cs,serverId:ct,client:mt}).pendingPermissions.length?null:(0,ue.jsx)(l.View,{style:Ne.permissionsContainer,children:ps.pendingPermissions.map(e=>(0,ue.jsx)(Ge,{permission:e,serverId:ps.serverId,client:ps.client},e.key))}),n[171]=mt,n[172]=cs,n[173]=ct,n[174]=us):us=n[174];const ms=us;let gs;n[175]!==vn.turnTiming.runningStartedAt||n[176]!==rs||n[177]!==Xt||n[178]!==Zt||n[179]!==zn||n[180]!==on||n[181]!==Be||n[182]!==Ue||n[183]!==St?(gs=on||rs?(0,ue.jsx)(Q.TurnFooter,{isRunning:on,inFlightTurnStartedAt:vn.turnTiming.runningStartedAt,host:rs,strategy:Ue,supportsTimelineCursor:St,onForkAssistantTurn:Be?void 0:Xt,onForkInFlightTurn:Be?void 0:Zt,onPin:zn}):null,n[175]=vn.turnTiming.runningStartedAt,n[176]=rs,n[177]=Xt,n[178]=Zt,n[179]=zn,n[180]=on,n[181]=Be,n[182]=Ue,n[183]=St,n[184]=gs):gs=n[184];const hs=gs;let Is,ys;n[185]!==ms||n[186]!==hs?(Is={pendingPermissions:ms,turnFooter:hs},n[185]=ms,n[186]=hs,n[187]=Is):Is=n[187],n[188]!==vn||n[189]!==Is?(ys=Object.assign({},vn,{boundary:vn.boundary,auxiliary:Is}),n[188]=vn,n[189]=Is,n[190]=ys):ys=n[190];const fs=ys;let vs;n[191]===Symbol.for("react.memo_cache_sentinel")?(vs=[Ne.emptyState,Ne.contentWrapper],n[191]=vs):vs=n[191];const Ss=vs;let xs;var bs;let ws;n[192]!==he?(bs=he,xs=Math.max(16,bs??0),n[192]=he,n[193]=xs):xs=n[193],n[194]!==xs?(ws=[Ne.scrollToBottomContainer,{bottom:xs}],n[194]=xs,n[195]=ws):ws=n[195];const Ts=ws;let Ps;n[196]!==fs||n[197]!==He?(Ps=ye({renderModel:fs,emptyStateStyle:Ss,emptyText:He("agentStream.empty")}),n[196]=fs,n[197]=He,n[198]=Ps):Ps=n[198];const js=Ps,{boundary:Cs,auxiliary:_s}=fs;let ks;if(n[199]!==xn.history){ks=new Map;for(const e of xn.history)ks.set(e.item.id,e);n[199]=xn.history,n[200]=ks}else ks=n[200];const Os=ks;let Rs;if(n[201]!==xn.liveHead){Rs=new Map;for(const e of xn.liveHead)Rs.set(e.item.id,e);n[201]=xn.liveHead,n[202]=Rs}else Rs=n[202];const Bs=Rs;let Hs;n[203]!==_n||n[204]!==Os||n[205]!==Bs||n[206]!==On?(Hs=e=>{const t=null===e?void 0:Os.get(e)??Bs.get(e);_n.reportReadingPosition(t?.item.timelineCursor?.seq??null),On.reportReadingPosition(e)},n[203]=_n,n[204]=Os,n[205]=Bs,n[206]=On,n[207]=Hs):Hs=n[207];const Fs=(0,oe.useStableEvent)(Hs);let As;n[208]!==Os||n[209]!==as?(As=e=>ve({item:e,layoutItemById:Os,renderStreamItem:as}),n[208]=Os,n[209]=as,n[210]=As):As=n[210];const Ms=As;let Es;n[211]!==Ms?(Es=e=>Ms(e),n[211]=Ms,n[212]=Es):Es=n[212];const qs=Es;let Ls;n[213]!==Ms?(Ls=e=>Ms(e),n[213]=Ms,n[214]=Ls):Ls=n[214];const Ds=Ls;let Ws;n[215]!==Bs||n[216]!==as?(Ws=e=>Se({item:e,layoutItemById:Bs,renderStreamItem:as}),n[215]=Bs,n[216]=as,n[217]=Ws):Ws=n[217];const zs=(0,oe.useStableEvent)(Ws);let Vs;n[218]!==_s.pendingPermissions||n[219]!==_s.turnFooter||n[220]!==Re?(Vs=()=>{const e=_s.turnFooter&&!_s.pendingPermissions?Q.TURN_FOOTER_BOTTOM_SPACING:0,t=(0,X.resolveBottomOverlayTailInset)({requiredTailClearance:Re,existingTailSpacing:e});return ge({pendingPermissions:_s.pendingPermissions,turnFooter:_s.turnFooter,bottomOverlayInset:t})},n[218]=_s.pendingPermissions,n[219]=_s.turnFooter,n[220]=Re,n[221]=Vs):Vs=n[221];const Gs=Vs;let Ks;n[222]!==Ds||n[223]!==qs||n[224]!==Gs||n[225]!==zs?(Ks={renderHistoryVirtualizedRow:qs,renderHistoryMountedRow:Ds,renderLiveHeadRow:zs,renderLiveAuxiliary:Gs},n[222]=Ds,n[223]=qs,n[224]=Gs,n[225]=zs,n[226]=Ks):Ks=n[226];const Ns=Ks;let Us;n[227]!==rt||n[228]!==Ue?(Us=!Ue.shouldDisableParentScrollOnInlineDetailsExpansion()||0===rt.size,n[227]=rt,n[228]=Ue,n[229]=Us):Us=n[229];const $s=Us;let Js;n[230]!==lt||n[231]!==Ve||n[232]!==cn.historyGroupUpdatesByHostId?(Js={contentById:cn.historyGroupUpdatesByHostId,displayStateById:lt,globalDisplayState:Ve},n[230]=lt,n[231]=Ve,n[232]=cn.historyGroupUpdatesByHostId,n[233]=Js):Js=n[233];const Qs=Js;let Xs,Ys;n[234]!==nn?(Xs=nn??[],n[234]=nn,n[235]=Xs):Xs=n[235],n[236]!==tn||n[237]!==Xs?(Ys=[...tn,...Xs],n[236]=tn,n[237]=Xs,n[238]=Ys):Ys=n[238];const Zs=Ys,eo=u.ChatFind,to=L.ToolCallSheetProvider,no=ee.AssistantSelectionCopySurface,so=Ne;let oo;n[239]!==st||n[240]!==et?(oo=(0,ue.jsx)(me,{error:et,onDismiss:st}),n[239]=st,n[240]=et,n[241]=oo):oo=n[241];const ro=_.MessageOuterSpacingProvider,io=Ue.render({agentId:o,segments:fs.segments,historyRowRevision:Qs,liveHeadRowRevision:lt,boundary:Cs,renderers:Ns,listEmptyComponent:js,viewportRef:De,routeBottomAnchorRequest:ke,isAuthoritativeHistoryReady:Oe,onNearBottomChange:Ze,onReadingPositionChange:Fs,onNearHistoryStart:gn,isLoadingOlderHistory:hn,hasOlderHistory:In,olderHistoryProgressKey:yn,scrollEnabled:$s,listStyle:Ne.list,baseListContentContainerStyle:Ne.listContentContainer,forwardListContentContainerStyle:Ne.forwardListContentContainer,contentMaxWidth:Le,imageContext:{serverId:ct,workspaceRoot:_t}});let ao,lo,co,uo,po,mo,go;return n[242]!==ro||n[243]!==io?(ao=(0,ue.jsx)(ro,{disableOuterSpacing:true,children:io}),n[242]=ro,n[243]=io,n[244]=ao):ao=n[244],n[245]!==_n.activePrompt||n[246]!==_n.jumpToPrompt||n[247]!==_n.prompts?(lo=(0,ue.jsx)(G.ChatOutlineRail,{prompts:_n.prompts,activePrompt:_n.activePrompt,onJumpToPrompt:_n.jumpToPrompt}),n[245]=_n.activePrompt,n[246]=_n.jumpToPrompt,n[247]=_n.prompts,n[248]=lo):lo=n[248],n[249]!==Bn||n[250]!==On.pinnedId||n[251]!==On.promptById?(co=(0,ue.jsx)(N.PinnedPrompt,{pinnedId:On.pinnedId,promptById:On.promptById,onJumpToPrompt:Bn}),n[249]=Bn,n[250]=On.pinnedId,n[251]=On.promptById,n[252]=co):co=n[252],n[253]!==$e||n[254]!==jt||n[255]!==Wt||n[256]!==Vt||n[257]!==Mn||n[258]!==Ts||n[259]!==He?(uo=(!$e||jt)&&(0,ue.jsx)(l.View,{style:Ts,pointerEvents:"box-none",children:(0,ue.jsx)(T.default.View,{entering:Wt,exiting:Vt,children:(0,ue.jsx)(s.Pressable,{style:Ne.scrollToBottomButton,onPress:Mn,accessibilityRole:"button",accessibilityLabel:He("agentStream.scrollToBottom"),testID:"scroll-to-bottom-button",children:(0,ue.jsx)(P.ChevronDown,{size:24,color:Ne.scrollToBottomIcon.color})})})}),n[253]=$e,n[254]=jt,n[255]=Wt,n[256]=Vt,n[257]=Mn,n[258]=Ts,n[259]=He,n[260]=uo):uo=n[260],n[261]!==no||n[262]!==so.container||n[263]!==oo||n[264]!==ao||n[265]!==lo||n[266]!==co||n[267]!==uo?(po=(0,ue.jsxs)(no,{style:so.container,children:[oo,ao,lo,co,uo]}),n[261]=no,n[262]=so.container,n[263]=oo,n[264]=ao,n[265]=lo,n[266]=co,n[267]=uo,n[268]=po):po=n[268],n[269]!==to||n[270]!==po?(mo=(0,ue.jsx)(to,{children:po}),n[269]=to,n[270]=po,n[271]=mo):mo=n[271],n[272]!==eo||n[273]!==o||n[274]!==Zs||n[275]!==ct||n[276]!==mn||n[277]!==mo||n[278]!==Tt||n[279]!==Pn?(go=(0,ue.jsx)(eo,{agentId:o,serverId:ct,epoch:Tt,items:Zs,viewportRef:De,revealLoadedMessage:mn,visibleMessageIds:Pn,children:mo}),n[272]=eo,n[273]=o,n[274]=Zs,n[275]=ct,n[276]=mn,n[277]=mo,n[278]=Tt,n[279]=Pn,n[280]=go):go=n[280],go});function je(e,t){return xe.every(n=>e?.[n]===t?.[n])}function Ce(e,t){const n=[];return e?.checkout?.cwd!==t?.checkout?.cwd&&n.push("agent.projectPlacement.checkout.cwd"),e?.checkout?.isGit!==t?.checkout?.isGit&&n.push("agent.projectPlacement.checkout.isGit"),e?.projectName!==t?.projectName&&n.push("agent.projectPlacement.projectName"),e?.projectKey!==t?.projectKey&&n.push("agent.projectPlacement.projectKey"),n}function ke(e,t){const n=[];return e.provider!==t.provider&&n.push("agent.provider"),e.currentModeId!==t.currentModeId&&n.push("agent.currentModeId"),e.model!==t.model&&n.push("agent.model"),e.thinkingOptionId!==t.thinkingOptionId&&n.push("agent.thinkingOptionId"),e.runtimeInfo?.modeId!==t.runtimeInfo?.modeId&&n.push("agent.runtimeInfo.modeId"),e.runtimeInfo?.model!==t.runtimeInfo?.model&&n.push("agent.runtimeInfo.model"),e.runtimeInfo?.thinkingOptionId!==t.runtimeInfo?.thinkingOptionId&&n.push("agent.runtimeInfo.thinkingOptionId"),e.features!==t.features&&n.push("agent.features"),n}function Oe(e,t){const n=[];return e.serverId!==t.serverId&&n.push("agent.serverId"),e.id!==t.id&&n.push("agent.id"),e.workspaceId!==t.workspaceId&&n.push("agent.workspaceId"),e.status!==t.status&&n.push("agent.status"),e.cwd!==t.cwd&&n.push("agent.cwd"),je(e.capabilities,t.capabilities)||n.push("agent.capabilities"),e.lastError!==t.lastError&&n.push("agent.lastError"),n.push(...ke(e,t)),n.push(...Ce(e.projectPlacement,t.projectPlacement)),n}function Re(e,t){return e?.agentId===t?.agentId&&e?.reason===t?.reason&&e?.requestKey===t?.requestKey}function Be(e,t){return e?.hasOlder===t?.hasOlder&&e?.isLoadingOlder===t?.isLoadingOlder&&e?.progressKey===t?.progressKey&&e?.onLoadOlder===t?.onLoadOlder}function He(e,t){const n=[];return e.agentId!==t.agentId&&n.push("agentId"),e.serverId!==t.serverId&&n.push("serverId"),n.push(...Oe(e.context,t.context)),e.streamItems!==t.streamItems&&n.push("streamItems"),e.streamHead!==t.streamHead&&n.push("streamHead"),e.pendingPermissions!==t.pendingPermissions&&n.push("pendingPermissions"),e.pendingMessageSubmissions!==t.pendingMessageSubmissions&&n.push("pendingMessageSubmissions"),e.turnPresentation!==t.turnPresentation&&n.push("turnPresentation"),Re(e.routeBottomAnchorRequest,t.routeBottomAnchorRequest)||n.push("routeBottomAnchorRequest"),e.isAuthoritativeHistoryReady!==t.isAuthoritativeHistoryReady&&n.push("isAuthoritativeHistoryReady"),e.toast!==t.toast&&n.push("toast"),e.onOpenWorkspaceFile!==t.onOpenWorkspaceFile&&n.push("onOpenWorkspaceFile"),e.readOnly!==t.readOnly&&n.push("readOnly"),Be(e.historyPagination,t.historyPagination)||n.push("historyPagination"),(0,ae.recordRenderProfileReasons)(`AgentStreamView:${t.agentId}`,n),0===n.length}const Fe=(0,y.memo)(Pe,He);function Ae(e){const t=(0,c.c)(7),{itemId:n,onInlineDetailsExpandedChangeByItemId:s,text:o,status:l,isLastInSequence:u,defaultExpanded:p}=e,h=(0,B.useRevealedText)(o,"ready"===l?"complete":"streaming"),I="ready"===l?"completed":"executing";let y;return t[0]!==p||t[1]!==u||t[2]!==n||t[3]!==s||t[4]!==h||t[5]!==I?(y=(0,ue.jsx)(Me,{itemId:n,onInlineDetailsExpandedChangeByItemId:s,toolName:"thinking",args:h,status:I,isLastInSequence:u,defaultExpanded:p,forceInline:p}),t[0]=p,t[1]=u,t[2]=n,t[3]=s,t[4]=h,t[5]=I,t[6]=y):y=t[6],y}function Me(t){const s=(0,c.c)(12);let o,l,u,p,h;if(s[0]!==t){var I=t;({itemId:o,source:p,onInlineDetailsExpandedChangeByItemId:l}=I),u=(0,n.default)(I,e),s[0]=t,s[1]=o,s[2]=l,s[3]=u,s[4]=p}else o=s[1],l=s[2],u=s[3],p=s[4];s[5]!==o||s[6]!==l?(h=e=>l(o,e),s[5]=o,s[6]=l,s[7]=h):h=s[7];const y=h;let f;return s[8]!==y||s[9]!==u||s[10]!==p?(f=(0,ue.jsx)(_.ToolCall,Object.assign({},u,{source:p,onInlineDetailsExpandedChange:y})),s[8]=y,s[9]=u,s[10]=p,s[11]=f):f=s[11],f}Fe.displayName="AgentStreamView";const Ee=(0,S.withUnistyles)(I.LoadingSpinner),qe=(0,S.withUnistyles)(P.Check),Le=(0,S.withUnistyles)(P.X),De=e=>({color:e.colors.foreground}),We=e=>({color:e.colors.foregroundMuted}),ze=({pressed:e,hovered:t=!1})=>[Ue.optionButton,t?Ue.optionButtonHovered:null,e?Ue.optionButtonPressed:null];function Ve(e){const t=(0,c.c)(16),{action:n,isRespondingAction:u,isResponding:p,isPrimary:h,Icon:I,testID:y,onPress:f}=e;let v;t[0]!==n||t[1]!==f?(v=()=>f(n),t[0]=n,t[1]=f,t[2]=v):v=t[2];const S=v;let x;t[3]!==h?(x=h?[Ue.optionText,Ue.optionTextPrimary]:Ue.optionText,t[3]=h,t[4]=x):x=t[4];const b=x,w=h?De:We;let T,P;return t[5]!==I||t[6]!==n||t[7]!==w||t[8]!==u||t[9]!==b?(T=u?(0,ue.jsx)(Ee,{size:"small",uniProps:w}):(0,ue.jsxs)(l.View,{style:Ue.optionContent,children:[(0,ue.jsx)(I,{size:14,uniProps:w}),(0,ue.jsx)(o.Text,{style:b,children:n.label})]}),t[5]=I,t[6]=n,t[7]=w,t[8]=u,t[9]=b,t[10]=T):T=t[10],t[11]!==S||t[12]!==p||t[13]!==T||t[14]!==y?(P=(0,ue.jsx)(s.Pressable,{accessibilityRole:"button",testID:y,style:ze,onPress:S,disabled:p,children:T}),t[11]=S,t[12]=p,t[13]=T,t[14]=y,t[15]=P):P=t[15],P}function Ge(e){const t=(0,c.c)(86),{permission:n,serverId:s,client:u}=e,{t:p}=(0,v.useTranslation)(),h=(0,x.useIsCompactFormFactor)(),{request:I}=n;let f;t[0]!==n.agentId||t[1]!==s?(f=s?{serverId:s,agentId:n.agentId}:void 0,t[0]=n.agentId,t[1]=s,t[2]=f):f=t[2];const S=f,w="plan"===I.kind;let T;t[3]!==w||t[4]!==I.name||t[5]!==I.title||t[6]!==p?(T=w?p("agentStream.permission.plan"):I.title??I.name??p("agentStream.permission.required"),t[3]=w,t[4]=I.name,t[5]=I.title,t[6]=p,t[7]=T):T=t[7];const P=T,j=I.description??"";let C;t[8]!==I.detail||t[9]!==I.input?(C=I.detail??{type:"unknown",input:I.input??null,output:null},t[8]=I.detail,t[9]=I.input,t[10]=C):C=t[10];const _=C;let O;e:{if("question"===I.kind){let e;t[11]===Symbol.for("react.memo_cache_sentinel")?(e=[],t[11]=e):e=t[11],O=e;break e}if(Array.isArray(I.actions)&&I.actions.length>0){O=I.actions;break e}let e,n,s,o,l;t[12]!==p?(e=p("agentStream.permission.deny"),t[12]=p,t[13]=e):e=t[13],t[14]!==e?(n={id:"reject",label:e,behavior:"deny",variant:"danger",intent:"dismiss"},t[14]=e,t[15]=n):n=t[15],t[16]!==w||t[17]!==p?(s=p(w?"agentStream.permission.implement":"agentStream.permission.accept"),t[16]=w,t[17]=p,t[18]=s):s=t[18],t[19]!==s?(o={id:"accept",label:s,behavior:"allow",variant:"primary"},t[19]=s,t[20]=o):o=t[20],t[21]!==n||t[22]!==o?(l=[n,o],t[21]=n,t[22]=o,t[23]=l):l=t[23],O=l}const R=O;let B;e:{if(!I){B=void 0;break e}const e="string"==typeof I.metadata?.planText?I.metadata.planText:void 0;if(e){B=e;break e}const t=I.input?.plan;"string"!=typeof t?B=void 0:B=t}const H=B;let F;t[24]!==u||t[25]!==p?(F={mutationFn:async e=>{if(!u)throw new Error(p("common.errors.daemonClientUnavailable"));return u.respondToPermissionAndWait(e.agentId,e.requestId,e.response,15e3)}},t[24]=u,t[25]=p,t[26]=F):F=t[26];const A=(0,b.useMutation)(F),{reset:M,mutateAsync:L,isPending:D}=A,[W,z]=(0,y.useState)(null);let V,G,K;t[27]!==M?(V=()=>{M(),z(null)},t[27]=M,t[28]=V):V=t[28],t[29]!==n.request.id||t[30]!==M?(G=[n.request.id,M],t[29]=n.request.id,t[30]=M,t[31]=G):G=t[31],(0,y.useEffect)(V,G),t[32]!==n.agentId||t[33]!==n.request.id||t[34]!==L?(K=e=>{L({agentId:n.agentId,requestId:n.request.id,response:e}).catch(Ke)},t[32]=n.agentId,t[33]=n.request.id,t[34]=L,t[35]=K):K=t[35];const N=K;let U;t[36]!==N?(U=e=>{z(e.id),"allow"!==e.behavior?N({behavior:"deny",selectedActionId:e.id,message:"Denied by user"}):N({behavior:"allow",selectedActionId:e.id})},t[36]=N,t[37]=U):U=t[37];const $=U,J=!h&&Ue.optionsContainerDesktop;let Q;t[38]!==J?(Q=[Ue.optionsContainer,J],t[38]=J,t[39]=Q):Q=t[39];const X=Q;if("question"===I.kind){let e;return t[40]!==N||t[41]!==D||t[42]!==n?(e=(0,ue.jsx)(q.QuestionFormCard,{permission:n,onRespond:N,isResponding:D}),t[40]=N,t[41]=D,t[42]=n,t[43]=e):e=t[43],e}let Y,Z,ee,te,ne;if(t[44]!==p?(Y=p("agentStream.permission.question"),t[44]=p,t[45]=Y):Y=t[45],t[46]!==Y?(Z=(0,ue.jsx)(o.Text,{testID:"permission-request-question",style:Ue.question,children:Y}),t[46]=Y,t[47]=Z):Z=t[47],t[48]!==$||t[49]!==D||t[50]!==R||t[51]!==W){let e;t[53]!==$||t[54]!==D||t[55]!==W?(e=e=>{const t="primary"===e.variant,n=W===e.id,s="allow"===e.behavior?qe:Le;let o;return o="deny"===e.behavior?"permission-request-deny":"accept"===e.id||"implement"===e.id?"permission-request-accept":`permission-request-action-${e.id}`,(0,ue.jsx)(Ve,{action:e,isRespondingAction:n,isResponding:D,isPrimary:t,Icon:s,testID:o,onPress:$},e.id)},t[53]=$,t[54]=D,t[55]=W,t[56]=e):e=t[56],ee=R.map(e),t[48]=$,t[49]=D,t[50]=R,t[51]=W,t[52]=ee}else ee=t[52];t[57]!==X||t[58]!==ee?(te=(0,ue.jsx)(l.View,{style:X,children:ee}),t[57]=X,t[58]=ee,t[59]=te):te=t[59],t[60]!==Z||t[61]!==te?(ne=(0,ue.jsxs)(ue.Fragment,{children:[Z,te]}),t[60]=Z,t[61]=te,t[62]=ne):ne=t[62];const se=ne;if(w&&H){let e;return t[63]!==j||t[64]!==se||t[65]!==S||t[66]!==H||t[67]!==P?(e=(0,ue.jsx)(k.PlanCard,{title:P,description:j,text:H,source:S,outcome:"pending",footer:se,testID:"permission-plan-card",disableOuterSpacing:!0}),t[63]=j,t[64]=se,t[65]=S,t[66]=H,t[67]=P,t[68]=e):e=t[68],e}let oe,re,ie,ae,le;return t[69]!==P?(oe=(0,ue.jsx)(o.Text,{style:Ue.title,children:P}),t[69]=P,t[70]=oe):oe=t[70],t[71]!==j?(re=j?(0,ue.jsx)(o.Text,{style:Ue.description,children:j}):null,t[71]=j,t[72]=re):re=t[72],t[73]!==S||t[74]!==H||t[75]!==p?(ie=H?(0,ue.jsx)(k.PlanCard,{title:p("agentStream.permission.proposedPlan"),text:H,source:S,testID:"permission-plan-card",disableOuterSpacing:!0}):null,t[73]=S,t[74]=H,t[75]=p,t[76]=ie):ie=t[76],t[77]!==w||t[78]!==_?(ae=w?null:(0,ue.jsx)(E.ToolCallDetailsContent,{detail:_,maxHeight:200}),t[77]=w,t[78]=_,t[79]=ae):ae=t[79],t[80]!==se||t[81]!==oe||t[82]!==re||t[83]!==ie||t[84]!==ae?(le=(0,ue.jsxs)(l.View,{style:Ue.container,children:[oe,re,ie,ae,se]}),t[80]=se,t[81]=oe,t[82]=re,t[83]=ie,t[84]=ae,t[85]=le):le=t[85],le}function Ke(e){console.error("[PermissionRequestCard] Failed to respond to permission:",e)}const Ne=S.StyleSheet.create(e=>({container:{flex:1,backgroundColor:e.colors.surface0,uni__dependencies:[0]},contentWrapper:{width:"100%",maxWidth:e.contentMaxWidth,alignSelf:"center",paddingHorizontal:e.spacing[2],uni__dependencies:[0]},listContentContainer:{paddingVertical:0,flexGrow:1,paddingHorizontal:{xs:e.spacing[3],md:e.spacing[4]},uni__dependencies:[0]},forwardListContentContainer:{paddingTop:e.spacing[4],paddingBottom:e.spacing[4],uni__dependencies:[0]},list:{flex:1},streamItemWrapper:{width:"100%",maxWidth:e.contentMaxWidth,alignSelf:"center",paddingHorizontal:e.spacing[2],uni__dependencies:[0]},emptyState:{flex:1,alignItems:"center",justifyContent:"center",paddingVertical:e.spacing[12],uni__dependencies:[0]},permissionsContainer:{gap:e.spacing[2],uni__dependencies:[0]},listHeaderContent:{gap:e.spacing[3],uni__dependencies:[0]},syncingIndicator:{flexDirection:"row",alignItems:"center",gap:e.spacing[2],paddingVertical:e.spacing[1],paddingLeft:e.spacing[2],uni__dependencies:[0]},syncingIndicatorText:{color:e.colors.foregroundMuted,fontSize:e.fontSize.base,uni__dependencies:[0]},invertedWrapper:{transform:[{scaleY:-1}],width:"100%"},emptyStateText:{color:e.colors.foregroundMuted,fontSize:e.fontSize.base,textAlign:"center",uni__dependencies:[0]},scrollToBottomContainer:{position:"absolute",left:0,right:0,alignItems:"center"},scrollToBottomButton:Object.assign({width:48,height:48,borderRadius:24,backgroundColor:e.colors.surface2,alignItems:"center",justifyContent:"center"},e.shadow.sm,{uni__dependencies:[0]}),scrollToBottomIcon:{color:e.colors.foreground,uni__dependencies:[0]}})),Ue=S.StyleSheet.create(e=>({container:{marginVertical:e.spacing[3],padding:e.spacing[3],borderRadius:e.spacing[2],borderWidth:1,gap:e.spacing[2],backgroundColor:e.colors.surface1,borderColor:e.colors.border,uni__dependencies:[0]},title:{fontSize:e.fontSize.base,lineHeight:22,color:e.colors.foreground,uni__dependencies:[0]},description:{fontSize:e.fontSize.base,lineHeight:20,color:e.colors.foregroundMuted,uni__dependencies:[0]},section:{gap:e.spacing[2],uni__dependencies:[0]},sectionTitle:{fontSize:e.fontSize.sm,uni__dependencies:[0]},question:{fontSize:e.fontSize.base,marginTop:e.spacing[1],marginBottom:e.spacing[1],color:e.colors.foregroundMuted,uni__dependencies:[0]},optionsContainer:{gap:e.spacing[2],uni__dependencies:[0]},optionsContainerDesktop:{flexDirection:"row",flexWrap:"wrap",justifyContent:"flex-start",alignItems:"center",width:"100%"},optionButton:{paddingVertical:e.spacing[2],paddingHorizontal:e.spacing[3],borderRadius:e.borderRadius.md,alignItems:"center",borderWidth:e.borderWidth[1],backgroundColor:e.colors.surface1,borderColor:e.colors.borderAccent,uni__dependencies:[0]},optionButtonHovered:{backgroundColor:e.colors.surface2,uni__dependencies:[0]},optionButtonPressed:{opacity:.9},optionContent:{flexDirection:"row",alignItems:"center",gap:e.spacing[2],uni__dependencies:[0]},optionText:{fontSize:e.fontSize.base,fontWeight:e.fontWeight.normal,color:e.colors.foregroundMuted,uni__dependencies:[0]},optionTextPrimary:{color:e.colors.foreground,uni__dependencies:[0]}}));function $e(e){const t=(0,c.c)(5),{gapBelow:n,children:s}=e;let o;t[0]!==n?(o=[Ne.streamItemWrapper,{marginBottom:n}],t[0]=n,t[1]=o):o=t[1];const u=o;let p;return t[2]!==s||t[3]!==u?(p=(0,ue.jsx)(l.View,{style:u,children:s}),t[2]=s,t[3]=u,t[4]=p):p=t[4],p}function Je(e){return e.autoExpandReasoning}function Qe(e){return e.toolCallDetailLevel}function Xe(e){return e.chatOutlineEnabled}function Ye(e){return e.clientMessageId}},4897,[35,899,898,897,455,4898,4333,3219,3220,36,855,146,234,427,25,56,1218,801,900,1219,3791,4622,4904,4918,3656,4031,3981,4610,4950,885,4951,4923,4952,4922,4954,4959,4961,4967,4982,4985,4986,4987,3767,3877,4990,4994,4995,4938,4997,4928,3816,3905,4141,5001,882,4564,3944,5003,5004,279]);
18168
18168
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.useChatFindSelectedMessageId=P,e.ChatFindExpansion=function(n){const t=(0,o.c)(3),{messageId:s,children:c}=n,l=P()===s;let u;t[0]!==c||t[1]!==l?(u=c(l),t[0]=c,t[1]=l,t[2]=u):u=t[2];return u},e.ChatFind=function({agentId:o,serverId:c,epoch:P,items:R,viewportRef:k,revealLoadedMessage:T,visibleMessageIds:q,children:H}){const{t:L}=(0,l.useTranslation)(),z=(0,s.useRef)(null),A=(0,s.useRef)(null),W=(0,s.useRef)({viewportRef:k,revealLoadedMessage:T,visibleMessageIds:q});W.current={viewportRef:k,revealLoadedMessage:T,visibleMessageIds:q};const[N]=(0,s.useState)(()=>"paseo-chat-find-"+ ++M),{isInteractive:O}=(0,p.usePaneFocus)(),V=(0,f.useRetainedPanelActive)(),$=(0,s.useMemo)(()=>new b.ChatFindModel(Object.assign({search(n,t){const s=(0,x.getHostRuntimeStore)().getClient(c);return s?s.searchAgentTimeline({agentId:o,query:n,cursor:t}):Promise.reject(new Error("Host disconnected"))},load:(n,t)=>(0,x.getHostRuntimeStore)().fetchAgentTimeline(c,o,(0,F.planTimelinePromptJump)({epoch:n,seq:t}))},(0,C.createFindViewport)({getBindings:()=>W.current,getRoot:()=>A.current,highlightName:N}))),[o,c,N]),B=(0,s.useSyncExternalStore)($.subscribe,$.getSnapshot,$.getSnapshot);(0,s.useEffect)(()=>{$.updateHistory(P,R)},[$,P,R]),(0,s.useEffect)(()=>()=>$.close(),[$]),(0,s.useEffect)(()=>{V||$.close()},[V,$]),(0,s.useEffect)(()=>{if(!V||!O)return;const n=n=>{n.defaultPrevented||(0,v.hasActiveWebOverlay)()||(0,y.isImeComposingKeyboardEvent)(n)||(0,u.isFindShortcut)(n,(0,u.findShortcutPlatform)())&&(n.preventDefault(),$.open(),z.current?.focus())};return document.addEventListener("keydown",n,!0),()=>document.removeEventListener("keydown",n,!0)},[V,O,$]);const D=(0,s.useCallback)(()=>{$.close(),A.current?.focus({preventScroll:!0})},[$]);let Q="";"searching"===B.phase?Q=L("paneFind.searching"):"loading"===B.phase?Q=L("paneFind.loading"):"error"===B.phase?Q=L("paneFind.failed"):B.query.trim()&&(Q=B.count?L("paneFind.position",{current:B.occurrence+1,total:B.count}):L("paneFind.noMatches"));return(0,S.jsxs)("div",{ref:A,tabIndex:-1,style:w,children:[(0,S.jsx)("style",{children:`::highlight(${N}) { background-color: ${E.highlight.backgroundColor}; color: ${E.highlight.color}; }`}),(0,S.jsx)(I.Provider,{value:B.selectedItemId,children:H}),B.open&&(0,S.jsxs)(t.View,{style:E.overlay,dataSet:j,children:[(0,S.jsx)(u.PaneFind,{ref:z,query:B.query,status:Q,canNavigate:"ready"===B.phase&&B.count>0,onQueryChange:$.setQuery,onNext:$.next,onPrevious:$.previous,onClose:D}),B.failure&&(0,S.jsxs)(t.View,{style:E.error,children:[(0,S.jsx)(n.Text,{style:E.errorText,children:L(_[B.failure])}),(0,S.jsx)(h.Button,{size:"xs",variant:"ghost",onPress:$.retry,children:L("paneFind.retry")})]})]})]})};var n=r(d[0]),t=r(d[1]),o=r(d[2]),s=r(d[3]);r(d[4]),r(d[5]);var c=r(d[6]),l=r(d[7]),u=r(d[8]),h=r(d[9]),p=r(d[10]),f=r(d[11]),v=r(d[12]),y=r(d[13]),x=r(d[14]),F=r(d[15]),b=r(d[16]),C=r(d[17]),S=r(d[18]);const I=(0,s.createContext)(null),_={connection:"paneFind.connectionFailure",historyChanged:"paneFind.historyChangedFailure",reveal:"paneFind.revealFailure"},j={chatFindWidget:"true"},w={display:"flex",flex:1,minHeight:0,position:"relative",outline:"none"};let M=0;function P(){return(0,s.useContext)(I)}const E=c.StyleSheet.create(n=>({overlay:{position:"absolute",top:n.spacing[2],right:n.spacing[3],zIndex:10,maxWidth:"100%",uni__dependencies:[0]},error:{flexDirection:"row",alignItems:"center",padding:n.spacing[2],backgroundColor:n.colors.surface1,uni__dependencies:[0]},errorText:{color:n.colors.foreground,fontSize:n.fontSize.sm,flex:1,uni__dependencies:[0]},highlight:{backgroundColor:n.colors.statusWarning,color:n.colors.surface0,uni__dependencies:[0]}}))},4898,[898,897,455,36,146,234,56,855,4899,3219,4625,3944,3113,4752,3767,3877,4901,4902,279]);
18169
18169
  __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"isFindShortcut",{enumerable:!0,get:function(){return C.isFindShortcut}}),e.findShortcutPlatform=T,Object.defineProperty(e,"PaneFind",{enumerable:!0,get:function(){return O}});var t=r(d[0]),n=r(d[1]),o=r(d[2]),s=r(d[3]);r(d[4]),r(d[5]);var l=r(d[6]),c=r(d[7]),u=r(d[8]),p=r(d[9]),h=r(d[10]),y=r(d[11]),f=r(d[12]),b=r(d[13]),x=r(d[14]),v=r(d[15]),w=r(d[16]),j=r(d[17]),C=r(d[18]),_=r(d[19]);function T(){return{isMac:"mac"===(0,j.getShortcutOs)()}}const S=(0,c.withUnistyles)(h.EditingTextInput,t=>({placeholderTextColor:t.colors.foregroundMuted})),F=(0,c.withUnistyles)(l.ArrowUp,f.mutedIconColorMapping),K=(0,c.withUnistyles)(l.ArrowDown,f.mutedIconColorMapping),P=(0,c.withUnistyles)(l.X,f.mutedIconColorMapping),R=(0,c.withUnistyles)(l.ChevronDown,f.mutedIconColorMapping),I=(0,c.withUnistyles)(l.ChevronRight,f.mutedIconColorMapping),z=(0,s.forwardRef)(function(n,l){const c=(0,o.c)(21),{label:u,initialValue:p,height:h,trailing:f,onChangeText:b,onKeyPress:x,autoFocus:v,returnKeyType:w}=n,[j,C]=(0,s.useState)(!1);let T;c[0]===Symbol.for("react.memo_cache_sentinel")?(T=()=>C(!0),c[0]=T):T=c[0];const F=T;let K;c[1]===Symbol.for("react.memo_cache_sentinel")?(K=()=>C(!1),c[1]=K):K=c[1];const P=K;let R,I,z;c[2]!==h?(R={minHeight:h},c[2]=h,c[3]=R):R=c[3],c[4]!==j?(I=(0,y.resolveControlInteractionStyles)({controlRest:E.controlRest,controlHover:E.controlHover,controlActive:E.controlActive},{focused:j}),c[4]=j,c[5]=I):I=c[5],c[6]!==R||c[7]!==I?(z=[E.field,R,I],c[6]=R,c[7]=I,c[8]=z):z=c[8];const O=z;let A,V;return c[9]!==v||c[10]!==p||c[11]!==u||c[12]!==b||c[13]!==x||c[14]!==l||c[15]!==w?(A=(0,_.jsx)(S,{ref:l,autoFocus:v,selectTextOnFocus:!0,initialValue:p,onChangeText:b,onKeyPress:x,onFocus:F,onBlur:P,accessibilityLabel:u,placeholder:u,autoCapitalize:"none",autoCorrect:!1,blurOnSubmit:!1,returnKeyType:w,style:E.input}),c[9]=v,c[10]=p,c[11]=u,c[12]=b,c[13]=x,c[14]=l,c[15]=w,c[16]=A):A=c[16],c[17]!==O||c[18]!==A||c[19]!==f?(V=(0,_.jsxs)(t.View,{style:O,children:[A,f]}),c[17]=O,c[18]=A,c[19]=f,c[20]=V):V=c[20],V}),O=(0,s.forwardRef)(function(l,c){const h=(0,o.c)(96),{query:y,status:j,canNavigate:S,onQueryChange:O,onNext:k,onPrevious:M,onClose:D,replace:H}=l,{t:W}=(0,u.useTranslation)(),B=(0,x.useIsCompactFormFactor)();let U;h[0]!==B?(U=(0,f.smallIconButtonChromeFrameSize)(B),h[0]=B,h[1]=U):U=h[1];const L=U;let N;h[2]!==B?(N=(0,b.paneContentToolbarIconSize)(B),h[2]=B,h[3]=N):N=h[3];const q=N,G=Math.max(A,L),Q=B?"sm":"xs",X=(0,s.useRef)(null),J=(0,s.useRef)(null);let Y,Z,$,ee;h[4]!==y?(Y=()=>{X.current?.getText()!==y&&X.current?.replaceText(y)},Z=[y],h[4]=y,h[5]=Y,h[6]=Z):(Y=h[5],Z=h[6]),(0,s.useLayoutEffect)(Y,Z),h[7]!==H?($=()=>{H&&J.current?.getText()!==H.value&&J.current?.replaceText(H.value)},ee=[H],h[7]=H,h[8]=$,h[9]=ee):($=h[8],ee=h[9]),(0,s.useLayoutEffect)($,ee);const[te,ne]=(0,s.useState)(!1);let oe;h[10]===Symbol.for("react.memo_cache_sentinel")?(oe=()=>{X.current?.focus();const t=X.current?.getText()??"";X.current?.replaceText(t,{start:0,end:t.length})},h[10]=oe):oe=h[10];const re=oe;let ie,se,le;h[11]===Symbol.for("react.memo_cache_sentinel")?(ie=()=>({focus:re}),se=[re],h[11]=ie,h[12]=se):(ie=h[11],se=h[12]),(0,s.useImperativeHandle)(c,ie,se),h[13]!==D||h[14]!==k||h[15]!==M?(le=t=>{const n=t.nativeEvent;if((0,w.isImeComposingKeyboardEvent)(n))return;const o={key:n.key,metaKey:!0===n.metaKey,ctrlKey:!0===n.ctrlKey,shiftKey:!0===n.shiftKey,altKey:!0===n.altKey};(0,C.isFindShortcut)(o,T())?(t.preventDefault(),t.stopPropagation(),re()):"Escape"!==n.key&&"Enter"!==n.key||(t.preventDefault(),t.stopPropagation(),"Escape"===n.key?D():n.shiftKey?M():k())},h[13]=D,h[14]=k,h[15]=M,h[16]=le):le=h[16];const ae=le;let ce;h[17]===Symbol.for("react.memo_cache_sentinel")?(ce=()=>ne(V),h[17]=ce):ce=h[17];const ue=ce;let de;h[18]!==L||h[19]!==G?(de=[E.gutter,{width:L,height:G}],h[18]=L,h[19]=G,h[20]=de):de=h[20];const pe=de;let he,ge;h[21]!==W?(he=W("paneFind.matches"),h[21]=W,h[22]=he):he=h[22],h[23]!==j||h[24]!==he?(ge=(0,_.jsx)(n.Text,{style:E.status,role:"status",accessibilityLabel:he,accessibilityLiveRegion:"polite",children:j}),h[23]=j,h[24]=he,h[25]=ge):ge=h[25];const ye=ge;let fe,me,be,xe,ve,we;h[26]!==W?(fe=W("paneFind.title"),h[26]=W,h[27]=fe):fe=h[27],h[28]!==D?(me=v.isWeb?{onKeyDown:t=>{"Escape"!==t.key||(0,w.isImeComposingKeyboardEvent)(t.nativeEvent)||(t.preventDefault(),t.stopPropagation(),D())}}:{},h[28]=D,h[29]=me):me=h[29],h[30]!==q||h[31]!==pe||h[32]!==B||h[33]!==H||h[34]!==te||h[35]!==W?(be=H?(0,_.jsx)(t.View,{style:pe,children:(0,_.jsx)(b.ToolbarButton,{label:W("paneFind.toggleReplace"),"aria-expanded":te,compact:B,onPress:ue,children:te?(0,_.jsx)(R,{size:q}):(0,_.jsx)(I,{size:q})})}):null,h[30]=q,h[31]=pe,h[32]=B,h[33]=H,h[34]=te,h[35]=W,h[36]=be):be=h[36],h[37]!==W?(xe=W("paneFind.placeholder"),h[37]=W,h[38]=xe):xe=h[38],h[39]!==ye||h[40]!==ae||h[41]!==O||h[42]!==y||h[43]!==G||h[44]!==xe?(ve=(0,_.jsx)(z,{ref:X,autoFocus:!0,label:xe,initialValue:y,height:G,returnKeyType:"search",trailing:ye,onChangeText:O,onKeyPress:ae}),h[39]=ye,h[40]=ae,h[41]=O,h[42]=y,h[43]=G,h[44]=xe,h[45]=ve):ve=h[45],h[46]!==W?(we=W("paneFind.previous"),h[46]=W,h[47]=we):we=h[47];const je=!S;let Ce,_e,Te;h[48]!==q?(Ce=(0,_.jsx)(F,{size:q}),h[48]=q,h[49]=Ce):Ce=h[49],h[50]!==B||h[51]!==M||h[52]!==we||h[53]!==je||h[54]!==Ce?(_e=(0,_.jsx)(b.ToolbarButton,{label:we,compact:B,disabled:je,onPress:M,children:Ce}),h[50]=B,h[51]=M,h[52]=we,h[53]=je,h[54]=Ce,h[55]=_e):_e=h[55],h[56]!==W?(Te=W("paneFind.next"),h[56]=W,h[57]=Te):Te=h[57];const Se=!S;let Fe,Ke,Pe,Re,Ie,ze,Oe,Ae,Ee;return h[58]!==q?(Fe=(0,_.jsx)(K,{size:q}),h[58]=q,h[59]=Fe):Fe=h[59],h[60]!==B||h[61]!==k||h[62]!==Te||h[63]!==Se||h[64]!==Fe?(Ke=(0,_.jsx)(b.ToolbarButton,{label:Te,compact:B,disabled:Se,onPress:k,children:Fe}),h[60]=B,h[61]=k,h[62]=Te,h[63]=Se,h[64]=Fe,h[65]=Ke):Ke=h[65],h[66]!==W?(Pe=W("paneFind.close"),h[66]=W,h[67]=Pe):Pe=h[67],h[68]!==q?(Re=(0,_.jsx)(P,{size:q}),h[68]=q,h[69]=Re):Re=h[69],h[70]!==B||h[71]!==D||h[72]!==Pe||h[73]!==Re?(Ie=(0,_.jsx)(b.ToolbarButton,{label:Pe,compact:B,onPress:D,children:Re}),h[70]=B,h[71]=D,h[72]=Pe,h[73]=Re,h[74]=Ie):Ie=h[74],h[75]!==ve||h[76]!==_e||h[77]!==Ke||h[78]!==Ie?(ze=(0,_.jsxs)(t.View,{style:E.row,children:[ve,_e,Ke,Ie]}),h[75]=ve,h[76]=_e,h[77]=Ke,h[78]=Ie,h[79]=ze):ze=h[79],h[80]!==Q||h[81]!==S||h[82]!==ae||h[83]!==H||h[84]!==te||h[85]!==G||h[86]!==W?(Oe=H&&te?(0,_.jsxs)(t.View,{style:E.row,children:[(0,_.jsx)(z,{ref:J,label:W("paneFind.replaceWith"),initialValue:H.value,height:G,onChangeText:H.onChange,onKeyPress:ae}),(0,_.jsx)(p.Button,{variant:"ghost",size:Q,style:E.replaceAction,disabled:!S,onPress:H.onReplace,children:W("paneFind.replace")}),(0,_.jsx)(p.Button,{variant:"ghost",size:Q,style:E.replaceAction,disabled:!S,onPress:H.onReplaceAll,children:W("paneFind.replaceAll")})]}):null,h[80]=Q,h[81]=S,h[82]=ae,h[83]=H,h[84]=te,h[85]=G,h[86]=W,h[87]=Oe):Oe=h[87],h[88]!==ze||h[89]!==Oe?(Ae=(0,_.jsxs)(t.View,{style:E.rows,children:[ze,Oe]}),h[88]=ze,h[89]=Oe,h[90]=Ae):Ae=h[90],h[91]!==fe||h[92]!==me||h[93]!==be||h[94]!==Ae?(Ee=(0,_.jsxs)(t.View,Object.assign({style:E.widget,accessibilityLabel:fe},me,{children:[be,Ae]})),h[91]=fe,h[92]=me,h[93]=be,h[94]=Ae,h[95]=Ee):Ee=h[95],Ee}),A=28,E=c.StyleSheet.create(t=>{const n=(0,y.createControlGeometry)(t);return{widget:Object.assign({width:340,maxWidth:"100%",flexDirection:"row",padding:t.spacing[1.5],gap:t.spacing[1],backgroundColor:t.colors.surface1,borderWidth:t.borderWidth[1],borderColor:t.colors.border,borderRadius:t.borderRadius.lg},t.shadow.md,{uni__dependencies:[0]}),gutter:{alignItems:"center",justifyContent:"center",flexShrink:0},rows:{flex:1,minWidth:0,gap:t.spacing[1],uni__dependencies:[0]},row:{flexDirection:"row",alignItems:"center",gap:t.spacing[1],uni__dependencies:[0]},field:{flex:1,minWidth:0,flexDirection:"row",alignItems:"center",gap:t.spacing[2],paddingHorizontal:t.spacing[2],backgroundColor:t.colors.surface2,borderRadius:t.borderRadius.md,uni__dependencies:[0]},controlRest:Object.assign({},n.controlRest),controlHover:Object.assign({},n.controlHover),controlActive:Object.assign({},n.controlActive),input:Object.assign({flex:1,minWidth:0,paddingHorizontal:0,paddingVertical:0,color:t.colors.foreground,outlineWidth:0,outlineColor:"transparent"},n.fieldTextSm,{uni__dependencies:[0]}),status:{flexShrink:0,color:t.colors.foregroundMuted,fontSize:t.fontSize.sm,uni__dependencies:[0]},replaceAction:{paddingHorizontal:t.spacing[2],uni__dependencies:[0]}}});function V(t){return!t}},4899,[897,898,455,36,234,146,1219,56,855,3219,3935,3222,4278,4398,1218,882,4752,3967,4900,279]);
@@ -94,6 +94,6 @@
94
94
  <body>
95
95
  <noscript>You need to enable JavaScript to run this app.</noscript>
96
96
  <div id="root"></div>
97
- <script src="/_expo/static/js/web/index-aedfe2976ff58c47ba295f6eec6cbeb6.js" defer></script>
97
+ <script src="/_expo/static/js/web/index-0dc37f5c85be0e93b2ab49449fc4aead.js" defer></script>
98
98
  </body>
99
99
  </html>
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camerontaylor/paseo-server",
3
- "version": "0.11.1-fork.2",
3
+ "version": "0.11.2-fork.2",
4
4
  "description": "Paseo backend server",
5
5
  "files": [
6
6
  "dist/server",
@@ -107,11 +107,11 @@
107
107
  "@agentclientprotocol/sdk": "^0.17.1",
108
108
  "@anthropic-ai/claude-agent-sdk": "0.3.246",
109
109
  "@anthropic-ai/sdk": "^0.104.2",
110
- "@camerontaylor/paseo-client": "0.11.1-fork.2",
111
- "@camerontaylor/paseo-highlight": "0.11.1-fork.2",
112
- "@camerontaylor/paseo-plugin": "0.11.1-fork.2",
113
- "@camerontaylor/paseo-protocol": "0.11.1-fork.2",
114
- "@camerontaylor/paseo-relay": "0.11.1-fork.2",
110
+ "@camerontaylor/paseo-client": "0.11.2-fork.2",
111
+ "@camerontaylor/paseo-highlight": "0.11.2-fork.2",
112
+ "@camerontaylor/paseo-plugin": "0.11.2-fork.2",
113
+ "@camerontaylor/paseo-protocol": "0.11.2-fork.2",
114
+ "@camerontaylor/paseo-relay": "0.11.2-fork.2",
115
115
  "@isaacs/ttlcache": "^2.1.4",
116
116
  "@modelcontextprotocol/sdk": "1.29.0",
117
117
  "@opencode-ai/sdk": "1.14.46",