@getpaseo/server 0.9.0 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server/server/agent/providers/claude/model-manifest.d.ts +14 -2
- package/dist/server/server/agent/providers/claude/model-manifest.js +29 -13
- package/dist/server/server/agent/providers/codex-app-server-agent.js +49 -4
- package/dist/server/web-ui/_expo/static/js/web/{index-3d67991720d33423e531ad2ac9f1cca2.js → index-eea906265aedcd4db33c30026e13c019.js} +10 -10
- package/dist/server/web-ui/_expo/static/js/web/index-eea906265aedcd4db33c30026e13c019.js.br +0 -0
- package/dist/server/web-ui/_expo/static/js/web/{index-3d67991720d33423e531ad2ac9f1cca2.js.gz → index-eea906265aedcd4db33c30026e13c019.js.gz} +0 -0
- package/dist/server/web-ui/index.html +1 -1
- package/dist/server/web-ui/index.html.br +0 -0
- package/dist/server/web-ui/index.html.gz +0 -0
- package/package.json +6 -6
- package/dist/server/web-ui/_expo/static/js/web/index-3d67991720d33423e531ad2ac9f1cca2.js.br +0 -0
|
@@ -3,9 +3,19 @@ export declare const CLAUDE_DEFAULT_THINKING_OPTION_ID = "high";
|
|
|
3
3
|
export declare const CLAUDE_DISABLED_THINKING_OPTION_ID = "off";
|
|
4
4
|
export declare const CLAUDE_ULTRACODE_THINKING_OPTION_ID = "ultracode";
|
|
5
5
|
export declare const CLAUDE_MODEL_MANIFEST: readonly [{
|
|
6
|
+
readonly id: "claude-opus-5-5";
|
|
7
|
+
readonly label: "Opus 5.5";
|
|
8
|
+
readonly description: "Opus 5.5 · Latest release";
|
|
9
|
+
readonly defaultPriority: 3;
|
|
10
|
+
readonly minimumClaudeCodeVersion: "2.1.280";
|
|
11
|
+
readonly defaultThinkingOptionId: "medium";
|
|
12
|
+
readonly contextWindowMaxTokens: 1000000;
|
|
13
|
+
readonly effortLevels: readonly ["low", "medium", "high", "xhigh", "max"];
|
|
14
|
+
readonly supportsFastMode: true;
|
|
15
|
+
}, {
|
|
6
16
|
readonly id: "claude-opus-5";
|
|
7
17
|
readonly label: "Opus 5";
|
|
8
|
-
readonly description: "Opus 5 ·
|
|
18
|
+
readonly description: "Opus 5 · Previous release";
|
|
9
19
|
readonly defaultPriority: 2;
|
|
10
20
|
readonly minimumClaudeCodeVersion: "2.1.219";
|
|
11
21
|
readonly contextWindowMaxTokens: 1000000;
|
|
@@ -130,7 +140,9 @@ export declare function normalizeClaudeManifestModelId(value: string | null | un
|
|
|
130
140
|
/**
|
|
131
141
|
* Normalize a Claude Code runtime/config model string to a known manifest ID.
|
|
132
142
|
* Runtime metadata may include provider prefixes such as Bedrock model IDs; feature
|
|
133
|
-
* gates should use normalizeClaudeManifestModelId instead.
|
|
143
|
+
* gates should use normalizeClaudeManifestModelId instead. The prefixed matches are
|
|
144
|
+
* unanchored, so major-minor runs first: "claude-opus-5-5" would otherwise stop at the
|
|
145
|
+
* "claude-opus-5" entry.
|
|
134
146
|
*/
|
|
135
147
|
export declare function normalizeClaudeRuntimeModelId(value: string | null | undefined): string | null;
|
|
136
148
|
export declare function getClaudeCustomModelThinkingOptions(): AgentSelectOption[];
|
|
@@ -13,10 +13,21 @@ export const CLAUDE_DEFAULT_THINKING_OPTION_ID = "high";
|
|
|
13
13
|
export const CLAUDE_DISABLED_THINKING_OPTION_ID = "off";
|
|
14
14
|
export const CLAUDE_ULTRACODE_THINKING_OPTION_ID = "ultracode";
|
|
15
15
|
export const CLAUDE_MODEL_MANIFEST = [
|
|
16
|
+
{
|
|
17
|
+
id: "claude-opus-5-5",
|
|
18
|
+
label: "Opus 5.5",
|
|
19
|
+
description: "Opus 5.5 · Latest release",
|
|
20
|
+
defaultPriority: 3,
|
|
21
|
+
minimumClaudeCodeVersion: "2.1.280",
|
|
22
|
+
defaultThinkingOptionId: "medium",
|
|
23
|
+
contextWindowMaxTokens: 1000000,
|
|
24
|
+
effortLevels: CLAUDE_EFFORT_LEVELS.xhigh,
|
|
25
|
+
supportsFastMode: true,
|
|
26
|
+
},
|
|
16
27
|
{
|
|
17
28
|
id: "claude-opus-5",
|
|
18
29
|
label: "Opus 5",
|
|
19
|
-
description: "Opus 5 ·
|
|
30
|
+
description: "Opus 5 · Previous release",
|
|
20
31
|
defaultPriority: 2,
|
|
21
32
|
minimumClaudeCodeVersion: "2.1.219",
|
|
22
33
|
contextWindowMaxTokens: 1000000,
|
|
@@ -135,7 +146,10 @@ export const CLAUDE_MODEL_MANIFEST = [
|
|
|
135
146
|
contextWindowMaxTokens: 200000,
|
|
136
147
|
},
|
|
137
148
|
];
|
|
138
|
-
function
|
|
149
|
+
function getDefaultThinkingOptionId(model) {
|
|
150
|
+
return model.defaultThinkingOptionId ?? CLAUDE_DEFAULT_THINKING_OPTION_ID;
|
|
151
|
+
}
|
|
152
|
+
function buildThinkingOptions(effortLevels, supportsThinkingDisabled, defaultThinkingOptionId) {
|
|
139
153
|
if (!effortLevels) {
|
|
140
154
|
return undefined;
|
|
141
155
|
}
|
|
@@ -144,7 +158,7 @@ function buildThinkingOptions(effortLevels, supportsThinkingDisabled) {
|
|
|
144
158
|
...effortLevels.map((id) => ({
|
|
145
159
|
id,
|
|
146
160
|
label: CLAUDE_EFFORT_LABELS[id],
|
|
147
|
-
...(id ===
|
|
161
|
+
...(id === defaultThinkingOptionId ? { isDefault: true } : {}),
|
|
148
162
|
})),
|
|
149
163
|
];
|
|
150
164
|
if (effortLevels.includes("xhigh")) {
|
|
@@ -157,7 +171,7 @@ export function getClaudeManifestModels(claudeCodeVersion) {
|
|
|
157
171
|
const defaultModel = availableModels.reduce((selected, candidate) => (candidate.defaultPriority ?? 0) > (selected?.defaultPriority ?? 0) ? candidate : selected, undefined);
|
|
158
172
|
const definitions = [];
|
|
159
173
|
for (const model of availableModels) {
|
|
160
|
-
const thinkingOptions = buildThinkingOptions(model.effortLevels, model.supportsThinkingDisabled === true);
|
|
174
|
+
const thinkingOptions = buildThinkingOptions(model.effortLevels, model.supportsThinkingDisabled === true, getDefaultThinkingOptionId(model));
|
|
161
175
|
const definition = {
|
|
162
176
|
provider: "claude",
|
|
163
177
|
id: model.id,
|
|
@@ -175,7 +189,7 @@ export function getClaudeManifestModels(claudeCodeVersion) {
|
|
|
175
189
|
}
|
|
176
190
|
if (thinkingOptions) {
|
|
177
191
|
definition.thinkingOptions = thinkingOptions;
|
|
178
|
-
definition.defaultThinkingOptionId =
|
|
192
|
+
definition.defaultThinkingOptionId = getDefaultThinkingOptionId(model);
|
|
179
193
|
}
|
|
180
194
|
definitions.push(definition);
|
|
181
195
|
if (!("aliases" in model) || !model.aliases) {
|
|
@@ -230,7 +244,7 @@ export function resolveClaudeDisabledThinkingForModel(modelId) {
|
|
|
230
244
|
: undefined;
|
|
231
245
|
return {
|
|
232
246
|
supported: !!model && "supportsThinkingDisabled" in model && model.supportsThinkingDisabled === true,
|
|
233
|
-
fallbackThinkingOptionId: model && "effortLevels" in model ?
|
|
247
|
+
fallbackThinkingOptionId: model && "effortLevels" in model ? getDefaultThinkingOptionId(model) : undefined,
|
|
234
248
|
};
|
|
235
249
|
}
|
|
236
250
|
export function isClaudeManifestModelId(modelId) {
|
|
@@ -270,7 +284,9 @@ export function normalizeClaudeManifestModelId(value) {
|
|
|
270
284
|
/**
|
|
271
285
|
* Normalize a Claude Code runtime/config model string to a known manifest ID.
|
|
272
286
|
* Runtime metadata may include provider prefixes such as Bedrock model IDs; feature
|
|
273
|
-
* gates should use normalizeClaudeManifestModelId instead.
|
|
287
|
+
* gates should use normalizeClaudeManifestModelId instead. The prefixed matches are
|
|
288
|
+
* unanchored, so major-minor runs first: "claude-opus-5-5" would otherwise stop at the
|
|
289
|
+
* "claude-opus-5" entry.
|
|
274
290
|
*/
|
|
275
291
|
export function normalizeClaudeRuntimeModelId(value) {
|
|
276
292
|
const normalizedManifestModelId = normalizeClaudeManifestModelId(value);
|
|
@@ -281,18 +297,18 @@ export function normalizeClaudeRuntimeModelId(value) {
|
|
|
281
297
|
if (!trimmed) {
|
|
282
298
|
return null;
|
|
283
299
|
}
|
|
284
|
-
const
|
|
285
|
-
if (
|
|
286
|
-
const normalizedModelId =
|
|
300
|
+
const runtimeMatch = trimmed.match(/claude[-_ ](fable|opus|sonnet|haiku)[-_ ]+(\d+)[-.](\d+)(\[1m\])?/i);
|
|
301
|
+
if (runtimeMatch) {
|
|
302
|
+
const normalizedModelId = normalizeMajorMinorClaudeModelId(runtimeMatch[1], runtimeMatch[2], runtimeMatch[3], trimmed.toLowerCase().includes("[1m]"));
|
|
287
303
|
if (normalizedModelId) {
|
|
288
304
|
return normalizedModelId;
|
|
289
305
|
}
|
|
290
306
|
}
|
|
291
|
-
const
|
|
292
|
-
if (!
|
|
307
|
+
const singleSegmentMatch = trimmed.match(/claude[-_ ](fable|opus|sonnet|haiku)[-_ ]+(\d+)(\[1m\])?/i);
|
|
308
|
+
if (!singleSegmentMatch) {
|
|
293
309
|
return null;
|
|
294
310
|
}
|
|
295
|
-
return
|
|
311
|
+
return normalizeSingleSegmentClaudeModelId(singleSegmentMatch[1], singleSegmentMatch[2], trimmed.toLowerCase().includes("[1m]"));
|
|
296
312
|
}
|
|
297
313
|
export function getClaudeCustomModelThinkingOptions() {
|
|
298
314
|
return CLAUDE_EFFORT_LEVELS.standard.map((id) => {
|
|
@@ -615,6 +615,52 @@ const CodexModelListResponseSchema = z.object({
|
|
|
615
615
|
}))
|
|
616
616
|
.optional(),
|
|
617
617
|
});
|
|
618
|
+
/**
|
|
619
|
+
* Read the newest `window.limit` threads Codex knows about.
|
|
620
|
+
*
|
|
621
|
+
* Codex caps every `thread/list` response at 100 rows whatever limit it is
|
|
622
|
+
* given (codex-cli 0.153 and 0.155), so one request only ever sees the newest
|
|
623
|
+
* page and hands back a cursor for the rest. Follow that cursor until the
|
|
624
|
+
* caller's window is full or Codex runs out of threads.
|
|
625
|
+
*/
|
|
626
|
+
async function readCodexThreadWindow(client, logger, window) {
|
|
627
|
+
// A thread updated while the scan is paging moves under `updated_at` order
|
|
628
|
+
// and can come back on a later page, so identify each one and keep it once.
|
|
629
|
+
// A row Codex sends without an id stands for itself.
|
|
630
|
+
const threads = new Map();
|
|
631
|
+
let cursor;
|
|
632
|
+
while (threads.size < window.limit) {
|
|
633
|
+
const response = toObjectRecord(await client.request("thread/list", {
|
|
634
|
+
limit: window.limit - threads.size,
|
|
635
|
+
// Rank the window by last use. Codex pages by creation time by default,
|
|
636
|
+
// which drops an old conversation that is still being worked in.
|
|
637
|
+
// Older Codex builds ignore the unknown key and keep that order.
|
|
638
|
+
sortKey: "updated_at",
|
|
639
|
+
...(window.cwd ? { cwd: window.cwd } : {}),
|
|
640
|
+
...(cursor ? { cursor } : {}),
|
|
641
|
+
}));
|
|
642
|
+
const page = Array.isArray(response?.data) ? response.data.filter(isRecord) : [];
|
|
643
|
+
const sizeBeforePage = threads.size;
|
|
644
|
+
for (const thread of page) {
|
|
645
|
+
const identity = typeof thread.id === "string" ? thread.id : thread;
|
|
646
|
+
if (!threads.has(identity))
|
|
647
|
+
threads.set(identity, thread);
|
|
648
|
+
}
|
|
649
|
+
const nextCursor = typeof response?.nextCursor === "string" ? response.nextCursor : undefined;
|
|
650
|
+
if (!nextCursor)
|
|
651
|
+
break;
|
|
652
|
+
if (threads.size === sizeBeforePage) {
|
|
653
|
+
// Every page that continues the scan brings a thread the scan has not
|
|
654
|
+
// seen, so the loop is bounded by the window. A page that brings none
|
|
655
|
+
// would let a Codex-side cursor bug (a stuck cursor, or a cycle) page for
|
|
656
|
+
// ever behind a caller that has already timed out.
|
|
657
|
+
logger.warn({ cursor: nextCursor }, "codex thread/list returned no new threads mid-scan, stopping the session scan");
|
|
658
|
+
break;
|
|
659
|
+
}
|
|
660
|
+
cursor = nextCursor;
|
|
661
|
+
}
|
|
662
|
+
return [...threads.values()];
|
|
663
|
+
}
|
|
618
664
|
function filterCodexThreadsByCwd(threads, cwd) {
|
|
619
665
|
if (!cwd) {
|
|
620
666
|
return threads;
|
|
@@ -5673,11 +5719,10 @@ export class CodexAppServerAgentClient {
|
|
|
5673
5719
|
// filtering since most threads will be from other cwds, then keep the
|
|
5674
5720
|
// local realpath-aware filter for symlink-equivalent workspace paths.
|
|
5675
5721
|
const listLimit = options?.cwd ? Math.max(scanLimit, 50) : scanLimit;
|
|
5676
|
-
const
|
|
5722
|
+
const allThreads = await readCodexThreadWindow(client, this.logger, {
|
|
5677
5723
|
limit: listLimit,
|
|
5678
|
-
|
|
5679
|
-
})
|
|
5680
|
-
const allThreads = Array.isArray(response?.data) ? response.data.filter(isRecord) : [];
|
|
5724
|
+
cwd: options?.cwd,
|
|
5725
|
+
});
|
|
5681
5726
|
const threads = filterCodexThreadsByCwd(allThreads, options?.cwd);
|
|
5682
5727
|
return threads.slice(0, limit).map((thread) => {
|
|
5683
5728
|
const threadId = typeof thread.id === "string" ? thread.id : "";
|
|
@@ -15106,7 +15106,7 @@ __d(function(g,r,i,_a,m,e,d){'use strict';const t=r(d[0]);m.exports=(s,c,n)=>t(s
|
|
|
15106
15106
|
__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},3461,[3456]);
|
|
15107
15107
|
__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)}},3462,[3451]);
|
|
15108
15108
|
__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}},3463,[701,3464]);
|
|
15109
|
-
__d(function(e,t,r,o,i,a,n){i.exports={name:"@getpaseo/app",version:"0.9.
|
|
15109
|
+
__d(function(e,t,r,o,i,a,n){i.exports={name:"@getpaseo/app",version:"0.9.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",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","@getpaseo/client":"*","@getpaseo/expo-two-way-audio":"*","@getpaseo/highlight":"*","@getpaseo/plugin":"*","@getpaseo/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":"^0.546.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}}}},3464,[]);
|
|
15110
15110
|
__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,c.createPluginSurfaceRuntime)(I,P);if(!v)throw new Error("Plugin host is offline");const f=(0,l.createPluginClientStateSource)(P.serverId),w=(0,o.createPluginCapabilities)(P,v,(0,s.createPluginNavigation)({serverId:P.serverId,workspaceId:null}));return Object.assign({},w,{hosts:(0,n.createPluginHosts)((0,t.getHostRuntimeStore)(),P.lifetime.signal),addComposerPill:t=>u.pluginButtonStore.addComposerPill(P,t),addHeaderButton:t=>u.pluginButtonStore.addHeaderButton(P,t),openPanel(t,n){p({installation:P,runtime:v,state:f,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,runtime:l,state:u,panelId:c,options:p}=t,P=p.workspaceId.trim(),I=p.agentId?.trim(),v=(0,s.createPluginNavigation)({serverId:n.serverId,workspaceId:P}),f=I?(0,o.createPluginAgentActionContext)({plugin:n,runtime:l,navigation:v,state:u,workspaceId:P,agentId:I}):(0,o.createPluginWorkspaceActionContext)({plugin:n,runtime:l,navigation:v,state:u,workspaceId:P});if(!f)throw new Error("Plugin panel context is unavailable");f.openPanel(c,{location:p.location})}},3465,[3466,3635,3638,3647,3652,3664,3669]);
|
|
15111
15111
|
__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.isHostRuntimeConnected=Q,_e.isHostRuntimeDirectoryLoading=K,Object.defineProperty(_e,"HostRuntimeController",{enumerable:!0,get:function(){return ae}}),_e.readInitialDaemonConnectionHint=ye,_e.hasConfiguredLocalDaemonOverride=function(){return null!==ge()},Object.defineProperty(_e,"HostRuntimeStore",{enumerable:!0,get:function(){return Ce}}),_e.getHostRuntimeStore=Ie,_e.getHostRuntimeConnectionStatusSince=function(e){return Ie().getConnectionStatusSince(e)},_e.useHostRuntimeSnapshot=function(e){const s=(0,t.c)(5);let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ie(),s[0]=o):o=s[0];const c=o;let l,h,u;s[1]!==e?(l=t=>c.subscribe(e,t),h=()=>c.getSnapshot(e),u=()=>c.getSnapshot(e),s[1]=e,s[2]=l,s[3]=h,s[4]=u):(l=s[2],h=s[3],u=s[4]);return(0,n.useSyncExternalStore)(l,h,u)},_e.useHostRuntimeClient=function(e){const s=(0,t.c)(5);let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ie(),s[0]=o):o=s[0];const c=o;let l,h,u;s[1]!==e?(l=t=>c.subscribe(e,t),h=()=>c.getSnapshot(e)?.client??null,u=()=>c.getSnapshot(e)?.client??null,s[1]=e,s[2]=l,s[3]=h,s[4]=u):(l=s[2],h=s[3],u=s[4]);return(0,n.useSyncExternalStore)(l,h,u)},_e.useHostRuntimeIsConnected=function(e){const s=(0,t.c)(5);let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ie(),s[0]=o):o=s[0];const c=o;let l,h,u;s[1]!==e?(l=t=>c.subscribe(e,t),h=()=>Q(c.getSnapshot(e)),u=()=>Q(c.getSnapshot(e)),s[1]=e,s[2]=l,s[3]=h,s[4]=u):(l=s[2],h=s[3],u=s[4]);return(0,n.useSyncExternalStore)(l,h,u)},_e.useHostRuntimeConnectionStatus=function(e){const s=(0,t.c)(5);let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ie(),s[0]=o):o=s[0];const c=o;let l,h,u;s[1]!==e?(l=t=>c.subscribe(e,t),h=()=>c.getSnapshot(e)?.connectionStatus??"connecting",u=()=>c.getSnapshot(e)?.connectionStatus??"connecting",s[1]=e,s[2]=l,s[3]=h,s[4]=u):(l=s[2],h=s[3],u=s[4]);return(0,n.useSyncExternalStore)(l,h,u)},_e.useHostRuntimeConnectionStatuses=function(e){const s=(0,t.c)(7);let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ie(),s[0]=o):o=s[0];const c=o;let l,h,u;s[1]===Symbol.for("react.memo_cache_sentinel")?(l=e=>c.subscribeAll(e),h=()=>c.getVersion(),u=()=>c.getVersion(),s[1]=l,s[2]=h,s[3]=u):(l=s[1],h=s[2],u=s[3]);(0,n.useSyncExternalStore)(l,h,u);let p;if(s[4]!==e){let t;s[6]===Symbol.for("react.memo_cache_sentinel")?(t=e=>[e,c.getSnapshot(e)?.connectionStatus??"connecting"],s[6]=t):t=s[6];const n=e.map(t);p=new Map(n),s[4]=e,s[5]=p}else p=s[5];return p},_e.useHostRuntimeLastError=function(e){const s=(0,t.c)(5);let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ie(),s[0]=o):o=s[0];const c=o;let l,h,u;s[1]!==e?(l=t=>c.subscribe(e,t),h=()=>c.getSnapshot(e)?.lastError??null,u=()=>c.getSnapshot(e)?.lastError??null,s[1]=e,s[2]=l,s[3]=h,s[4]=u):(l=s[2],h=s[3],u=s[4]);return(0,n.useSyncExternalStore)(l,h,u)},_e.useHostRuntimeAgentDirectoryStatus=function(e){const s=(0,t.c)(5);let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ie(),s[0]=o):o=s[0];const c=o;let l,h,u;s[1]!==e?(l=t=>c.subscribe(e,t),h=()=>c.getSnapshot(e)?.agentDirectoryStatus??"idle",u=()=>c.getSnapshot(e)?.agentDirectoryStatus??"idle",s[1]=e,s[2]=l,s[3]=h,s[4]=u):(l=s[2],h=s[3],u=s[4]);return(0,n.useSyncExternalStore)(l,h,u)},_e.useHostRuntimeIsDirectoryLoading=function(e){const s=(0,t.c)(5);let o;s[0]===Symbol.for("react.memo_cache_sentinel")?(o=Ie(),s[0]=o):o=s[0];const c=o;let l,h,u;s[1]!==e?(l=t=>c.subscribe(e,t),h=()=>K(c.getSnapshot(e)),u=()=>K(c.getSnapshot(e)),s[1]=e,s[2]=l,s[3]=h,s[4]=u):(l=s[2],h=s[3],u=s[4]);return(0,n.useSyncExternalStore)(l,h,u)},_e.useHosts=function(){const e=(0,t.c)(4);let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=Ie(),e[0]=s):s=e[0];const o=s;let c,l,h;e[1]===Symbol.for("react.memo_cache_sentinel")?(c=e=>o.subscribeHostList(e),l=()=>o.getHosts(),h=()=>o.getHosts(),e[1]=c,e[2]=l,e[3]=h):(c=e[1],l=e[2],h=e[3]);return(0,n.useSyncExternalStore)(c,l,h)},_e.useHostRegistryStatus=function(){const e=(0,t.c)(4);let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=Ie(),e[0]=s):s=e[0];const o=s;let c,l,h;e[1]===Symbol.for("react.memo_cache_sentinel")?(c=e=>o.subscribeHostList(e),l=()=>o.getHostRegistryStatus(),h=()=>o.getHostRegistryStatus(),e[1]=c,e[2]=l,e[3]=h):(c=e[1],l=e[2],h=e[3]);return(0,n.useSyncExternalStore)(c,l,h)},_e.useHostRegistryLoaded=function(){const e=(0,t.c)(4);let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=Ie(),e[0]=s):s=e[0];const o=s;let c,l,h;e[1]===Symbol.for("react.memo_cache_sentinel")?(c=e=>o.subscribeHostList(e),l=()=>o.isHostRegistryLoaded(),h=()=>o.isHostRegistryLoaded(),e[1]=c,e[2]=l,e[3]=h):(c=e[1],l=e[2],h=e[3]);return(0,n.useSyncExternalStore)(c,l,h)},_e.useHostMutations=function(){const e=(0,t.c)(2);let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=Ie(),e[0]=n):n=e[0];const s=n;let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o={upsertDirectConnection:e=>s.upsertDirectConnection(e),probeAndUpsertDirectConnection:e=>s.probeAndUpsertDirectConnection(e),probeAndUpsertRemoteSshConnection:e=>s.probeAndUpsertRemoteSshConnection(e),upsertRelayConnection:e=>s.upsertRelayConnection(e),upsertConnectionFromOffer:(e,t)=>s.upsertConnectionFromOffer(e,t),upsertConnectionFromOfferUrl:(e,t)=>s.upsertConnectionFromOfferUrl(e,t),renameHost:(e,t)=>s.renameHost(e,t),setHostColor:(e,t)=>s.setHostColor(e,t),setHostBadgeDisplay:(e,t)=>s.setHostBadgeDisplay(e,t),removeHost:e=>s.removeHost(e),removeConnection:(e,t)=>s.removeConnection(e,t)},e[1]=o):o=e[1];return o};var t=r(d[0]),n=r(d[1]),s=e(r(d[2])),o=e(r(d[3])),c=r(d[4]),l=r(d[5]),h=r(d[6]),u=r(d[7]),p=r(d[8]),y=r(d[9]),S=r(d[10]),v=r(d[11]),f=r(d[12]),C=r(d[13]),b=r(d[14]),I=r(d[15]),w=r(d[16]),A=r(d[17]),H=r(d[18]),R=r(d[19]),D=r(d[20]),E=r(d[21]),P=r(d[22]),O=r(d[23]),L=r(d[24]),_=r(d[25]),T=r(d[26]),M=r(d[27]),B=r(d[28]),k=r(d[29]),F=r(d[30]),q=r(d[31]),j=r(d[32]),x=r(d[33]),U=r(d[34]),V=r(d[35]),W=r(d[36]),N=r(d[37]),$=r(d[38]),G=r(d[39]);function z(e,t,n){e[t]=n}function Q(e){return"online"===e?.connectionStatus}function K(e){return!e||("initial_loading"===e.agentDirectoryStatus||"revalidating"===e.agentDirectoryStatus||!e.hasEverLoadedAgentDirectory&&("connecting"===e.connectionStatus||"online"===e.connectionStatus))}function J(e){return e instanceof Error?e.message:String(e)}function X(e){let t=0;for(let n=0;n<e.length;n+=1)t=31*t+e.charCodeAt(n)|0;return`h_${Math.abs(t).toString(16)}`}function Y(e){return"directSocket"===e.type?{type:"directSocket",endpoint:e.path,display:"socket"}:"directPipe"===e.type?{type:"directPipe",endpoint:e.path,display:"pipe"}:"remoteSsh"===e.type?{type:"remoteSsh",endpoint:e.host,display:e.host}:"directTcp"===e.type?{type:"directTcp",endpoint:e.endpoint,display:e.endpoint}:{type:"relay",endpoint:e.relayEndpoint,display:"relay"}}function Z(e){return"connecting"===e.tag||"online"===e.tag||"offline"===e.tag||"error"===e.tag?{id:e.activeConnectionId,connection:e.activeConnection}:{id:null,connection:null}}function ee(e,t,n){const s=n.state.status;return"connected"===s?{tag:"online",activeConnectionId:e,activeConnection:t,lastOnlineAt:(new Date).toISOString()}:"connecting"===s||"idle"===s?{tag:"connecting",activeConnectionId:e,activeConnection:t}:"disposed"===s?{tag:"offline",activeConnectionId:e,activeConnection:t}:null}function te(e,t,n){const s=ee(e,t,n);if(s)return s;const o=("disconnected"===n.state.status?n.state.reason??null:null)??n.lastError??null;return o&&"client_closed"!==o?{tag:"error",activeConnectionId:e,activeConnection:t,message:o}:{tag:"offline",activeConnectionId:e,activeConnection:t}}function ne(e){const{state:t,event:n}=e;if("select_connection"===n.type)return{tag:"connecting",activeConnectionId:n.connectionId,activeConnection:n.connection};if("connect_failed"===n.type){const e=Z(t);return{tag:"error",activeConnectionId:e.id,activeConnection:e.connection,message:n.message}}if("no_connections"===n.type||"stopped"===n.type)return{tag:"offline",activeConnectionId:null,activeConnection:null};const s=Z(t);return s.id&&s.connection?te(s.id,s.connection,n):"booting"===t.tag?t:{tag:"offline",activeConnectionId:null,activeConnection:null}}function se(e,t){return"booting"===e.tag?{activeConnectionId:null,activeConnection:null,connectionStatus:"connecting",lastError:null,lastOnlineAt:null,connectionEpoch:t}:"connecting"===e.tag?{activeConnectionId:e.activeConnectionId,activeConnection:e.activeConnection,connectionStatus:"connecting",lastError:null,lastOnlineAt:null,connectionEpoch:t}:"online"===e.tag?{activeConnectionId:e.activeConnectionId,activeConnection:e.activeConnection,connectionStatus:"online",lastError:null,lastOnlineAt:e.lastOnlineAt,connectionEpoch:t}:"offline"===e.tag?{activeConnectionId:e.activeConnectionId,activeConnection:e.activeConnection,connectionStatus:"offline",lastError:null,lastOnlineAt:null,connectionEpoch:t}:{activeConnectionId:e.activeConnectionId,activeConnection:e.activeConnection,connectionStatus:"error",lastError:e.message,lastOnlineAt:null,connectionEpoch:t}}function ie(e){return e.connections.map(e=>({connectionId:e.id,connection:e}))}function oe(e,t){return t?e.connections.find(e=>e.id===t)??null:null}function re(e,t,n,s){if(t)return 1e4;if(n)return 12e4;const o=s-e;return o<1e4?2e3:o<3e4?5e3:o<6e4?1e4:3e4}function ce(){const e="function"==typeof(0,H.getDesktopHost)()?.browser?.executeAutomationCommand?{[R.CLIENT_CAPS.browserHost]:{supportedCommands:[...D.BROWSER_AUTOMATION_COMMAND_NAMES],hostKind:"desktop app"}}:void 0,t=Object.assign({},e);return{createClient:({host:e,connection:n,clientId:s,runtimeGeneration:o})=>{const l=(0,A.createDesktopDaemonTransportFactory)(),h={webSocketFactory:(0,G.createAppWebSocketFactory)()},y={suppressSendErrors:!0,clientId:s,clientType:"mobile",appVersion:(0,p.resolveAppVersion)()??void 0,runtimeGeneration:o,capabilities:t,trace:N.nativePerformanceTrace,providerSnapshots:"wire"};if("directSocket"===n.type||"directPipe"===n.type)return new c.DaemonClient(Object.assign({},y,l?{transportFactory:l}:{},{url:(0,A.buildDesktopDaemonTransportUrl)({transportType:"directSocket"===n.type?"socket":"pipe",transportPath:n.path})}));if("remoteSsh"===n.type){if(!l)throw new Error("Remote SSH is only available in the desktop app.");return new c.DaemonClient(Object.assign({},y,{transportFactory:l,url:(0,A.buildDesktopDaemonTransportUrl)(Object.assign({transportType:"ssh",host:n.host},void 0!==n.sshPort?{sshPort:n.sshPort}:{},void 0!==n.daemonPort?{daemonPort:n.daemonPort}:{}))}))}return"directTcp"===n.type?new c.DaemonClient(Object.assign({},y,h,{url:(0,u.buildDaemonWebSocketUrl)(n.endpoint,{useTls:n.useTls??!1})},n.password?{password:n.password}:{})):new c.DaemonClient(Object.assign({},y,h,{url:(0,u.buildRelayWebSocketUrl)({endpoint:n.relayEndpoint,useTls:n.useTls??(0,u.shouldUseTlsForDefaultHostedRelay)(n.relayEndpoint),serverId:e.serverId}),e2ee:{enabled:!0,daemonPublicKeyB64:n.daemonPublicKeyB64}}))},connectToDaemon:({host:e,connection:n,timeoutMs:s})=>(0,f.connectToDaemon)(n,Object.assign({},e.serverId?{serverId:e.serverId}:{},void 0!==s?{timeoutMs:s}:{},{capabilities:t,trace:N.nativePerformanceTrace})),getClientId:()=>(0,C.getOrCreateClientId)(),mountClientHandlers:({client:t,host:n})=>{const s=(0,_.mountServerDataPushRouter)({client:t,queryClient:L.queryClient,serverId:n.serverId});if(!e)return s;const o=(0,T.mountBrowserAutomationDaemonClientHandler)(t,{serverId:n.serverId});return()=>{o(),s()}}}}class ae{connectionEpoch=0;listeners=new Set;activeClient=null;unsubscribeClientStatus=null;unsubscribeClientHandlers=null;probeIntervalHandle=null;started=!1;connectionFirstSeenAt=new Map;connectionLastProbedAt=new Map;switchCandidateConnectionId=null;switchCandidateHitCount=0;clientIdPromise=null;clientIdHash=null;switchRequestVersion=0;probeRequestVersion=0;probeCycleInFlight=null;constructor(e){this.host=e.host,this.deps=e.deps??ce(),this.onReconcileServerId=e.onReconcileServerId??null,this.connectionMachineState={tag:"booting"},this.snapshot=Object.assign({serverId:this.host.serverId},se(this.connectionMachineState,this.connectionEpoch),{client:null,agentDirectoryStatus:"idle",agentDirectoryError:null,hasEverLoadedAgentDirectory:!1,probeByConnectionId:new Map,clientGeneration:0})}getSnapshot(){return this.snapshot}getClient(){return this.snapshot.client}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}async start(e){this.started||(this.started=!0,this.trackConnectionFirstSeen(),e?.initialConnection&&await this.switchToConnection({connectionId:e.initialConnection.connectionId,existingClient:e.initialConnection.existingClient}),await this.runProbeCycleNow(),!1!==e?.autoProbe&&(this.probeIntervalHandle=setInterval(()=>{this.runProbeCycleNow()},2e3)))}async stop(){if(this.switchRequestVersion+=1,this.probeRequestVersion+=1,this.started=!1,this.probeIntervalHandle&&(clearInterval(this.probeIntervalHandle),this.probeIntervalHandle=null),this.unsubscribeClientStatus&&(this.unsubscribeClientStatus(),this.unsubscribeClientStatus=null),this.unsubscribeClientHandlers&&(this.unsubscribeClientHandlers(),this.unsubscribeClientHandlers=null),this.activeClient){const e=this.activeClient;this.activeClient=null,await e.close().catch(()=>{})}this.applyConnectionEvent({type:"stopped"}),this.updateSnapshot(Object.assign({},se(this.connectionMachineState,this.connectionEpoch),{client:null}))}async updateHost(e){const t=this.snapshot.activeConnectionId,n=oe(this.host,t);this.host=e,this.trackConnectionFirstSeen();const s=oe(this.host,t);t&&n&&s&&!(0,o.default)(n,s)&&(this.connectionLastProbedAt.delete(t),await this.switchToConnection({connectionId:t})),await this.runProbeCycleNow()}ensureConnected(e){this.activeClient?.ensureConnected(e)}markAgentDirectorySyncLoading(){const e=this.snapshot.hasEverLoadedAgentDirectory?"revalidating":"initial_loading";this.updateSnapshot({agentDirectoryStatus:e,agentDirectoryError:null})}markAgentDirectorySyncReady(){this.updateSnapshot({agentDirectoryStatus:"ready",agentDirectoryError:null,hasEverLoadedAgentDirectory:!0})}markAgentDirectorySyncError(e){const t=this.snapshot.hasEverLoadedAgentDirectory;this.updateSnapshot({agentDirectoryStatus:t?"error_after_ready":"error_before_first_success",agentDirectoryError:e,hasEverLoadedAgentDirectory:t})}markAgentDirectorySyncIdle(){this.updateSnapshot({agentDirectoryStatus:this.snapshot.hasEverLoadedAgentDirectory?"ready":"idle",agentDirectoryError:null})}markStartupError(e){this.applyConnectionEvent({type:"connect_failed",message:e}),this.updateSnapshot(Object.assign({},se(this.connectionMachineState,this.connectionEpoch)))}async activateConnection(e){await this.switchToConnection(e)}async runProbeCycleNow(){if(this.probeCycleInFlight)return this.probeCycleInFlight;const e=this.runProbeCycle().finally(()=>{this.probeCycleInFlight===e&&(this.probeCycleInFlight=null)});return this.probeCycleInFlight=e,e}async runProbeCycle(){const e=++this.probeRequestVersion;if(0===this.host.connections.length){if(!this.isCurrentProbeRequest(e))return;return this.applyConnectionEvent({type:"no_connections"}),void this.updateSnapshot(Object.assign({},se(this.connectionMachineState,this.connectionEpoch),{probeByConnectionId:new Map}))}const t=performance.now(),n="online"===this.snapshot.connectionStatus,s=this.snapshot.activeConnectionId,o=n&&null!==s,c=this.host.connections.filter(e=>{const c=this.connectionLastProbedAt.get(e.id);if(null==c)return!0;const l=re(this.connectionFirstSeenAt.get(e.id)??t,n&&e.id===s,o,t);return t-c>=l});if(0===c.length)return;const l=new Map(this.snapshot.probeByConnectionId);for(const e of c){this.connectionLastProbedAt.set(e.id,performance.now());const t=l.get(e.id);n&&e.id===s&&"available"===t?.status||l.set(e.id,{status:"pending",latencyMs:null})}this.updateSnapshot({probeByConnectionId:new Map(l)});let h=c.length,u=null;const p=()=>{this.isCurrentProbeRequest(e)&&this.updateSnapshot({probeByConnectionId:new Map(l)})},y=async(t,n)=>{for(;!this.snapshot.activeConnectionId;){if(!u)return u=this.switchToConnection({connectionId:t,expectedProbeVersion:e,existingClient:n}).finally(()=>{u=null}),await u,this.snapshot.activeConnectionId===t;await u}return!1},S=async()=>{if(h>0||!this.isCurrentProbeRequest(e))return;const t=this.snapshot.activeConnectionId,n=t?l.get(t):null;if(!t||!oe(this.host,t)){const t=(0,w.selectBestConnection)({candidates:ie(this.host),probeByConnectionId:l});return void(t&&await this.switchToConnection({connectionId:t,expectedProbeVersion:e}))}if("unavailable"===n?.status){const n=(0,w.selectBestConnection)({candidates:ie(this.host),probeByConnectionId:l});return n&&n!==t&&await this.switchToConnection({connectionId:n,expectedProbeVersion:e}),this.switchCandidateConnectionId=null,void(this.switchCandidateHitCount=0)}if(!n||"available"!==n.status)return;const s=Array.from(l.entries()).filter(e=>"available"===e[1].status).map(([e,t])=>({connectionId:e,latencyMs:t.latencyMs})).sort((e,t)=>e.latencyMs-t.latencyMs)[0]??null;if(!s||s.connectionId===t)return this.switchCandidateConnectionId=null,void(this.switchCandidateHitCount=0);if(n.latencyMs-s.latencyMs<40)return this.switchCandidateConnectionId=null,void(this.switchCandidateHitCount=0);this.switchCandidateConnectionId===s.connectionId?this.switchCandidateHitCount+=1:(this.switchCandidateConnectionId=s.connectionId,this.switchCandidateHitCount=1),this.switchCandidateHitCount>=3&&(this.switchCandidateConnectionId=null,this.switchCandidateHitCount=0,await this.switchToConnection({connectionId:s.connectionId,expectedProbeVersion:e}))};await new Promise(t=>{for(const n of c)(async()=>{let s=null,o=!1;try{const t=this.snapshot.activeConnectionId===n.id?this.snapshot.client:null;if(t)s=t;else{const{client:e,serverId:t}=await this.deps.connectToDaemon({host:this.host,connection:n});if(t!==this.host.serverId){if(!Se(this.host.serverId)||!this.onReconcileServerId)throw await e.close().catch(()=>{}),new Error(`Connection resolved to ${t}, expected ${this.host.serverId}.`);this.onReconcileServerId(this.host.serverId,t)}s=e,o=!0}if(!this.isCurrentProbeRequest(e))return;const c=await y(n.id,s);if(o=o&&!c,t){const s=t.getLastLivenessRttMs();if(!this.isCurrentProbeRequest(e))return;return void(null!==s&&(l.set(n.id,{status:"available",latencyMs:s}),p()))}const h=await s.measureLatency({timeoutMs:5e3});if(!this.isCurrentProbeRequest(e))return;l.set(n.id,{status:"available",latencyMs:h}),p()}catch{this.isCurrentProbeRequest(e)&&(l.set(n.id,{status:"unavailable",latencyMs:null}),p())}finally{s&&o&&await s.close().catch(()=>{}),h-=1,S().finally(()=>{0===h&&t()})}})()})}updateSnapshot(e){const t=Object.assign({},e);let n=this.host.serverId!==this.snapshot.serverId;for(const s of Object.keys(e)){const c=e[s];(0,o.default)(this.snapshot[s],c)?z(t,s,this.snapshot[s]):n=!0}if(n){this.snapshot=Object.assign({},this.snapshot,t,{serverId:this.host.serverId});for(const e of this.listeners)e()}}applyConnectionEvent(e){const t=this.connectionMachineState,n=ne({state:t,event:e});"online"!==t.tag&&"online"===n.tag&&(this.connectionEpoch+=1),this.connectionMachineState=n,this.logConnectionTransition({from:t.tag,to:n.tag,event:e})}logConnectionTransition(e){}trackConnectionFirstSeen(){const e=performance.now(),t=new Set(this.host.connections.map(e=>e.id));for(const e of this.connectionFirstSeenAt.keys())t.has(e)||(this.connectionFirstSeenAt.delete(e),this.connectionLastProbedAt.delete(e));for(const t of this.host.connections)this.connectionFirstSeenAt.has(t.id)||this.connectionFirstSeenAt.set(t.id,e)}isCurrentSwitchRequest(e){return e===this.switchRequestVersion}isCurrentProbeRequest(e){return e===this.probeRequestVersion}canProceedForProbe(e){return void 0===e||this.isCurrentProbeRequest(e)}async abortSwitchWithClient(e){e&&await e.close().catch(()=>{})}isSwitchStillValid(e,t){return this.isCurrentSwitchRequest(e)&&this.canProceedForProbe(t)}async resolveClientIdForSwitch(e){try{return await this.resolveClientId()}catch(t){if(await this.abortSwitchWithClient(e.existingClient),!this.isCurrentSwitchRequest(e.requestVersion))return null;const n=J(t);return this.applyConnectionEvent({type:"connect_failed",message:`Failed to resolve client id: ${n}`}),this.updateSnapshot(Object.assign({},se(this.connectionMachineState,this.connectionEpoch))),null}}async disposePreviousActiveClient(){if(this.unsubscribeClientStatus&&(this.unsubscribeClientStatus(),this.unsubscribeClientStatus=null),this.unsubscribeClientHandlers&&(this.unsubscribeClientHandlers(),this.unsubscribeClientHandlers=null),this.activeClient){const e=this.activeClient;this.activeClient=null,await e.close().catch(()=>{})}}buildAgentDirectoryStatusPatch(){if(this.snapshot.hasEverLoadedAgentDirectory)return{};const e=this.connectionMachineState.tag;return"connecting"===e||"online"===e?{agentDirectoryStatus:"initial_loading",agentDirectoryError:null}:"error"===e?{agentDirectoryStatus:"error_before_first_success",agentDirectoryError:this.connectionMachineState.message}:{agentDirectoryStatus:"idle",agentDirectoryError:null}}async switchToConnection(e){const{connectionId:t,expectedProbeVersion:n,existingClient:s}=e;if(!this.canProceedForProbe(n))return void await this.abortSwitchWithClient(s);const o=oe(this.host,t);if(!o)return void await this.abortSwitchWithClient(s);const c=++this.switchRequestVersion,l=await this.resolveClientIdForSwitch({existingClient:s,requestVersion:c});if(null===l)return;if(!this.isSwitchStillValid(c,n))return void await this.abortSwitchWithClient(s);if(await this.disposePreviousActiveClient(),!this.isSwitchStillValid(c,n))return void await this.abortSwitchWithClient(s);const h=this.snapshot.clientGeneration+1,u=s??this.deps.createClient({host:this.host,connection:o,clientId:l,runtimeGeneration:h});if(u.setReconnectEnabled(!0),!this.isSwitchStillValid(c,n))return void await u.close().catch(()=>{});this.activeClient=u,this.applyConnectionEvent({type:"select_connection",connectionId:o.id,connection:Y(o)}),this.snapshot=Object.assign({},this.snapshot,{clientGeneration:h}),this.updateSnapshot(Object.assign({},se(this.connectionMachineState,this.connectionEpoch),{client:null}));const p=async e=>{if(this.isCurrentSwitchRequest(c)&&this.activeClient===u){this.unsubscribeClientStatus?.(),this.unsubscribeClientStatus=null,this.unsubscribeClientHandlers?.(),this.unsubscribeClientHandlers=null,u.setReconnectEnabled(!1),this.applyConnectionEvent({type:"connect_failed",message:J(e)}),this.updateSnapshot(Object.assign({},se(this.connectionMachineState,this.connectionEpoch),{client:null}));try{await u.close()}catch{}}};try{if(s||await u.connect(),!this.isCurrentSwitchRequest(c)||this.activeClient!==u)return;this.unsubscribeClientHandlers=this.deps.mountClientHandlers?.({client:u,host:this.host,connection:o})??null,this.unsubscribeClientStatus=u.subscribeConnectionStatus(e=>{this.isCurrentSwitchRequest(c)&&this.activeClient===u&&(this.applyConnectionEvent({type:"client_state",state:e,lastError:u.lastError}),this.updateSnapshot(Object.assign({},se(this.connectionMachineState,this.connectionEpoch),this.buildAgentDirectoryStatusPatch(),{client:u})))})}catch(e){await p(e)}}adoptReconciledServerId(e){this.host=Object.assign({},this.host,{serverId:e}),this.snapshot=Object.assign({},this.snapshot,{serverId:e});for(const e of this.listeners)e()}resolveClientId(){return this.clientIdPromise||(this.clientIdPromise=this.deps.getClientId().then(e=>(this.clientIdHash=X(e),e))),this.clientIdPromise}}const le="@paseo:daemon-registry",he="localhost:6767",ue=2500,de="__PASEO_INITIAL_DAEMON_CONNECTION__",pe=b.z.object({listen:b.z.string().trim().min(1),useTls:b.z.boolean().optional().default(!1)});function ye(e){if(!(e?.isWebRuntime??v.isWeb)||"undefined"==typeof globalThis)return null;const t=pe.safeParse(Reflect.get(globalThis,de));return t.success?t.data:null}function ge(){return null}function Se(e){return e.startsWith("local:")}function ve(e){return new Promise(t=>setTimeout(t,e))}function fe(e,t,n){const s=e.get(t);void 0!==s&&(e.delete(t),e.set(n,s))}class Ce{controllers=new Map;serverListeners=new Map;globalListeners=new Set;hostListListeners=new Set;version=0;hostListVersion=0;hostRegistryLoaded=!1;hosts=[];hostAppearanceMutationTail=Promise.resolve();hostRegistryStatus="loading";lastConnectionStatusByServer=new Map;connectionStatusStartedAtByServer=new Map;queuedAgentDrainInFlight=new Set;directorySyncByServer=new Map;nextCancellationRequestId=0;timelineReplicaByServer=new Map;configuredOverrideBootstrapInFlight=null;bootPromise=null;constructor(e){this.deps=e?.deps??ce(),this.storage=e?.storage??s.default,this.replicaCache=new x.ReplicaCache(e?.replicaRowStore??(0,U.createReplicaRowStore)()),this.revokePushNotifications=e?.revokePushNotifications??$.revokePushNotifications}getHosts(){return this.hosts}getHostRegistryStatus(){return this.hostRegistryStatus}subscribeHostList(e){return this.hostListListeners.add(e),()=>{this.hostListListeners.delete(e)}}getHostListVersion(){return this.hostListVersion}isHostRegistryLoaded(){return this.hostRegistryLoaded}boot(){return this.bootPromise||(this.bootPromise=this.runBoot()),this.bootPromise}async runBoot(){await this.loadFromStorage(),this.markHostRegistryLoaded();let e=null;try{e=await(0,I.readValidatedString)(this.storage,"@paseo:e2e",b.z.string().min(1))}catch{return}if(e)return;if((0,S.shouldUseDesktopDaemon)())return;const t=this.deps.readInitialConnectionHint?this.deps.readInitialConnectionHint():ye();if(t){if(await this.bootstrapInitialConnectionHint(t))return}await this.bootstrapDefaultLocalhost()}async loadFromStorage(){let e=!1,t=[];try{const n=await(0,I.readValidatedJson)(this.storage,le,l.StoredHostRegistrySchema);if(n){const s=[];for(const e of n){const t=(0,l.normalizeStoredHostProfile)(e);if(!t){await this.storage.removeItem(le),s.length=0;break}s.push(t)}t=s.filter(e=>!Se(e.serverId)),t.length!==s.length&&(e=!0)}this.hosts=t,this.replicaCache.setHosts(t.map(e=>e.serverId)),W.projectIconCache.setHosts(t.map(e=>e.serverId)),await W.projectIconCache.restore(),this.syncHosts(t);for(const e of t)this.directorySyncByServer.get(e.serverId)?.restoreCachedDirectory().catch(()=>{})}catch(e){console.error("[HostRuntime] Failed to load host registry from storage",e)}finally{this.hostRegistryStatus="ready",this.emitHostList(),e&&this.persistHosts().catch(e=>console.error("[HostRuntime] Failed to persist host registry",e))}}markHostRegistryLoaded(){this.hostRegistryLoaded||(this.hostRegistryLoaded=!0,this.emitHostList())}async bootstrapDefaultLocalhost(){const e=(0,l.connectionFromListen)(he);if(e&&!(0,l.registryHasConnection)(this.hosts,e))try{await this.probeAndUpsertConnection({connection:e,timeoutMs:ue})}catch(e){console.warn("[HostRuntime] bootstrap probe failed",{endpoint:he,error:e})}}bootstrapConfiguredOverride(e){const t=(0,l.connectionFromListen)(e);if(!t)return;if((0,l.registryHasConnection)(this.hosts,t))return;if(this.configuredOverrideBootstrapInFlight)return;const n=this.runConfiguredOverrideBootstrap(e,t).finally(()=>{this.configuredOverrideBootstrapInFlight===n&&(this.configuredOverrideBootstrapInFlight=null)});this.configuredOverrideBootstrapInFlight=n}async runConfiguredOverrideBootstrap(e,t){let n=0;for(;!(0,l.registryHasConnection)(this.hosts,t);){n+=1;try{return void await this.probeAndUpsertConnection({connection:t,timeoutMs:ue})}catch(t){1!==n&&n%10!=0||console.warn("[HostRuntime] configured bootstrap probe failed",{endpoint:e,attempt:n,error:t}),await ve(1e3)}}}async bootstrapInitialConnectionHint(e){const t=(0,l.connectionFromListen)(e.listen);if(!t)return!1;const n="directTcp"===t.type?Object.assign({},t,{useTls:e.useTls??t.useTls??!1}):t;if((0,l.registryHasConnection)(this.hosts,n))return!0;try{return await this.probeAndUpsertConnection({connection:n,timeoutMs:ue}),!0}catch(t){return console.warn("[HostRuntime] initial connection hint probe failed",{listen:e.listen,useTls:e.useTls,error:t}),!1}}reconcileServerId(e,t){if(e===t)return;const n=this.controllers.get(e);if(!n)return;if(this.controllers.has(t))return;fe(this.controllers,e,t),fe(this.lastConnectionStatusByServer,e,t),fe(this.connectionStatusStartedAtByServer,e,t),this.replicaCache.reconcileServerId(e,t),W.projectIconCache.reconcileServerId(e,t),this.directorySyncByServer.get(e)?.dispose(),this.directorySyncByServer.delete(e),this.timelineReplicaByServer.delete(e);const s=new j.DirectorySync(t,{onAgentStoppedRunning:e=>this.drainQueuedAgentMessage(t,e),markAgentLoading:()=>n.markAgentDirectorySyncLoading(),markAgentReady:()=>n.markAgentDirectorySyncReady(),markAgentError:e=>n.markAgentDirectorySyncError(e)},this.replicaCache);this.directorySyncByServer.set(t,s),this.timelineReplicaByServer.set(t,(0,V.createTimelineReplica)({serverId:t,storage:this.replicaCache,prepareAgent:e=>s.prepareAgentRoute(e)})),n.adoptReconciledServerId(t);const o=n.getSnapshot();this.clearHostReplica(e),this.syncSessionReplica(t,o),s.connectionChanged({client:o.client,status:"online"===o.connectionStatus?"online":"offline",source:{clientGeneration:o.clientGeneration,connectionEpoch:o.connectionEpoch}});const c=this.serverListeners.get(e);if(c){this.serverListeners.delete(e);const n=this.serverListeners.get(t)??new Set;for(const e of c)n.add(e);this.serverListeners.set(t,n)}this.hosts=this.hosts.map(n=>n.serverId===e?Object.assign({},n,{serverId:t,updatedAt:(new Date).toISOString()}):n),this.emitHostList(),this.emit(t),this.persistHosts().catch(e=>console.error("[HostRuntime] Failed to persist host registry",e))}async upsertDirectConnection(e){const t=(0,u.normalizeHostPort)(e.endpoint),n=e.password?.trim();return this.upsertHostConnection({serverId:e.serverId,label:e.label,connection:Object.assign({id:`direct:${t}`,type:"directTcp",endpoint:t,useTls:e.useTls??!1},n?{password:n}:{}),existingClient:e.existingClient})}async probeAndUpsertConnection(e){if("relay"===e.connection.type)throw new Error("Cannot probe a relay connection without a server id.");const t={serverId:"",label:e.label??e.connection.id,appearance:(0,h.defaultHostAppearance)(),lifecycle:{},connections:[e.connection],preferredConnectionId:e.connection.id,createdAt:new Date(0).toISOString(),updatedAt:new Date(0).toISOString()},{client:n,serverId:s,hostname:o}=await this.deps.connectToDaemon(Object.assign({host:t,connection:e.connection},void 0!==e.timeoutMs?{timeoutMs:e.timeoutMs}:{}));return{profile:await this.upsertHostConnection({serverId:s,label:e.label??o??void 0,connection:e.connection,existingClient:n}),serverId:s,hostname:o}}async probeAndUpsertDirectConnection(e){const t=(0,u.normalizeHostPort)(e.endpoint),n=e.password?.trim();return this.probeAndUpsertConnection({label:e.label,connection:Object.assign({id:`direct:${t}`,type:"directTcp",endpoint:t,useTls:e.useTls??!1},n?{password:n}:{})})}async probeAndUpsertRemoteSshConnection(e){return this.probeAndUpsertConnection({label:e.label,connection:(0,l.createRemoteSshHostConnection)(e)})}async upsertRelayConnection(e){const t=(0,u.normalizeHostPort)(e.relayEndpoint),n=e.useTls??!1,s=e.daemonPublicKeyB64.trim();if(!s)throw new Error("daemonPublicKeyB64 is required");const o=void 0!==e.useTls;return this.upsertHostConnection({serverId:e.serverId,label:e.label,connection:Object.assign({id:n?`relay:wss:${t}`:`relay:${t}`,type:"relay",relayEndpoint:t},o?{useTls:n}:{},{daemonPublicKeyB64:s})})}async upsertConnectionFromOffer(e,t){const n=e.relay.useTls??(0,u.shouldUseTlsForDefaultHostedRelay)(e.relay.endpoint);return this.upsertRelayConnection({serverId:e.serverId,relayEndpoint:e.relay.endpoint,useTls:n,daemonPublicKeyB64:e.daemonPublicKeyB64,label:t})}async upsertConnectionFromOfferUrl(e,t){const n="#offer=",s=e.indexOf(n);if(-1===s)throw new Error("Missing #offer= fragment");const o=e.slice(s+7).trim();if(!o)throw new Error("Offer payload is empty");const c=(0,u.decodeOfferFragmentPayload)(o),l=y.ConnectionOfferSchema.parse(c);return this.upsertConnectionFromOffer(l,t)}async upsertConnectionFromListen(e){const t=e.listenAddress.trim(),n=e.serverId.trim(),s=(0,l.connectionFromListen)(t);if(!s)throw new Error(`Unsupported listen address: ${e.listenAddress}`);if(!n)throw new Error("Desktop daemon did not return a server id.");return this.upsertHostConnection({serverId:n,label:e.hostname??void 0,connection:s})}async updateHost(e,t){const n=(new Date).toISOString(),s=this.hosts.map(s=>s.serverId===e?Object.assign({},t(s),{updatedAt:n}):s);this.setHostsAndSync(s),await this.persistHosts()}async renameHost(e,t){await this.updateHost(e,e=>Object.assign({},e,{label:t}))}async setHostColor(e,t){await this.updateHostAppearance(e,e=>Object.assign({},e,{appearance:Object.assign({},e.appearance,{color:t})}))}async setHostBadgeDisplay(e,t){await this.updateHostAppearance(e,e=>Object.assign({},e,{appearance:Object.assign({},e.appearance,{badgeDisplay:t})}))}updateHostAppearance(e,t){const n=this.hostAppearanceMutationTail.then(()=>this.applyHostAppearance(e,t));return this.hostAppearanceMutationTail=n.catch(()=>{}),n}async applyHostAppearance(e,t){const n=(new Date).toISOString(),s=this.hosts.map(s=>s.serverId===e?Object.assign({},t(s),{updatedAt:n}):s);await this.persistHosts(s),this.setHostsAndSync(s)}async removeHost(e){await this.revokePushNotifications({client:this.getClient(e),serverId:e});const t=this.hosts.filter(t=>t.serverId!==e);this.setHostsAndSync(t),await this.persistHosts()}async removeConnection(e,t){const n=this.hosts.find(t=>t.serverId===e);if(1===n?.connections.length&&n.connections[0]?.id===t)return void await this.removeHost(e);const s=(new Date).toISOString(),o=this.hosts.map(n=>{if(n.serverId!==e)return n;const o=n.connections.filter(e=>e.id!==t);if(0===o.length)return null;const c=n.preferredConnectionId===t?o[0]?.id??null:n.preferredConnectionId;return Object.assign({},n,{connections:o,preferredConnectionId:c,updatedAt:s})}).filter(e=>null!==e);this.setHostsAndSync(o),await this.persistHosts()}async upsertHostConnection(e){const t=(new Date).toISOString(),n=(0,l.upsertHostConnectionInProfiles)({profiles:this.hosts,serverId:e.serverId,label:e.label,connection:e.connection,now:t});this.setHostsAndSync(n,{initialConnectionByServerId:e.existingClient?new Map([[e.serverId,{connectionId:e.connection.id,existingClient:e.existingClient}]]):void 0}),this.persistHosts().catch(e=>console.error("[HostRuntime] Failed to persist host registry",e));const s=n.find(t=>t.serverId===e.serverId);if(!s)throw new Error(`Host ${e.serverId} was not inserted`);return s}setHostsAndSync(e,t){this.hosts=e,this.syncHosts(e,t),this.emitHostList()}async persistHosts(e=this.hosts){await this.storage.setItem(le,JSON.stringify(e))}emitHostList(){this.hostListVersion+=1;for(const e of this.hostListListeners)e()}syncHosts(e,t){this.replicaCache.setHosts(e.map(e=>e.serverId)),W.projectIconCache.setHosts(e.map(e=>e.serverId));const n=new Set(e.map(e=>e.serverId));for(const[e,t]of this.controllers)n.has(e)||(this.controllers.delete(e),this.lastConnectionStatusByServer.delete(e),this.connectionStatusStartedAtByServer.delete(e),this.directorySyncByServer.get(e)?.dispose(),this.directorySyncByServer.delete(e),this.timelineReplicaByServer.delete(e),this.clearHostReplica(e),t.stop(),this.emit(e));for(const n of e){const e=t?.initialConnectionByServerId?.get(n.serverId),s=this.controllers.get(n.serverId);if(s){s.updateHost(n),e&&s.activateConnection(e).catch(()=>{e.existingClient.close().catch(()=>{})});continue}const o=new ae({host:n,deps:this.deps,onReconcileServerId:(e,t)=>this.reconcileServerId(e,t)});this.controllers.set(n.serverId,o),E.useSessionStore.getState().initializeSession(n.serverId,null);const c=new j.DirectorySync(n.serverId,{onAgentStoppedRunning:e=>this.drainQueuedAgentMessage(n.serverId,e),markAgentLoading:()=>o.markAgentDirectorySyncLoading(),markAgentReady:()=>o.markAgentDirectorySyncReady(),markAgentError:e=>o.markAgentDirectorySyncError(e)},this.replicaCache);this.directorySyncByServer.set(n.serverId,c),this.timelineReplicaByServer.set(n.serverId,(0,V.createTimelineReplica)({serverId:n.serverId,storage:this.replicaCache,prepareAgent:e=>c.prepareAgentRoute(e)}));const l=o.getSnapshot();this.lastConnectionStatusByServer.set(n.serverId,l.connectionStatus),this.connectionStatusStartedAtByServer.set(n.serverId,Date.now()),o.subscribe(()=>{const e=o.getSnapshot();this.syncSessionReplica(e.serverId,e),this.syncDirectoryConnection(e.serverId),this.emit(e.serverId)}),o.start(e?{initialConnection:e}:{}).catch(e=>{const t=e instanceof Error?e.message:String(e);o.markStartupError(t)}),this.emit(n.serverId)}}syncSessionReplica(e,t){if(!t.client)return;const n=E.useSessionStore.getState();n.initializeSession(e,t.client,t.clientGeneration),n.updateSessionClient(e,t.client,t.clientGeneration)}clearHostReplica(e){E.useSessionStore.getState().clearSession(e),P.useWorkspaceSetupStore.getState().clearServer(e)}syncDirectoryConnection(e){const t=this.controllers.get(e);if(!t)return this.lastConnectionStatusByServer.delete(e),void this.connectionStatusStartedAtByServer.delete(e);const n=t.getSnapshot(),s=this.directorySyncByServer.get(e);s?.connectionChanged({client:n.client,status:"online"===n.connectionStatus?"online":"offline",source:{clientGeneration:n.clientGeneration,connectionEpoch:n.connectionEpoch}});const o=this.lastConnectionStatusByServer.get(e),c=o!==n.connectionStatus,l="online"!==n.connectionStatus&&"idle"!==n.connectionStatus;!c||void 0!==o&&"online"!==o&&"idle"!==o&&l||this.connectionStatusStartedAtByServer.set(e,Date.now()),this.lastConnectionStatusByServer.set(e,n.connectionStatus);"online"===n.connectionStatus&&"online"!==o&&(E.useSessionStore.getState().bumpHistorySyncGeneration(e),(0,O.invalidateCheckoutGitQueriesForServer)(L.queryClient,e),(0,_.invalidateServerDataQueriesAfterReconnect)({queryClient:L.queryClient,serverId:e}),L.queryClient.invalidateQueries({queryKey:M.schedulesQueryBaseKey}))}drainQueuedAgentMessage(e,t){const n=`${e}:${t}`;if(this.queuedAgentDrainInFlight.has(n))return;const s=E.useSessionStore.getState().sessions[e],o=s?.queuedMessages.get(t),c=s?.client;if(!c||!o?.length||!0===s.initializingAgents.get(t))return;this.queuedAgentDrainInFlight.add(n);const l=o[0];(0,B.sendQueuedComposerMessageNow)({agentId:t,messageId:l.id,queue:{read:t=>E.useSessionStore.getState().sessions[e]?.queuedMessages.get(t)??[],write:t=>E.useSessionStore.getState().setQueuedMessages(e,t)},submitMessage:async({text:n,attachments:s})=>{const o=!0===E.useSessionStore.getState().sessions[e]?.serverInfo?.features?.forgeSearch;await(0,B.dispatchComposerAgentMessage)({client:c,agentId:t,text:n,attachments:s,attachmentSubmitFormat:(0,F.resolveComposerAttachmentSubmitFormat)({supportsForgeAttachments:o}),encodeImages:q.encodeImages,submission:(0,k.createMessageSubmissionWriter)(e)})}}).then(n=>("failed"===n.status&&console.error("[HostRuntime] failed to drain queued agent message",{serverId:e,agentId:t,error:n.errorMessage}),n)).finally(()=>{this.queuedAgentDrainInFlight.delete(n)})}applyAgentTurnLiveness(e,t,n){this.directorySyncByServer.get(e)?.applyAgentTurnLiveness(t,n)}beginAgentCancellation(e,t){const n=++this.nextCancellationRequestId;return this.applyAgentTurnLiveness(e,t,{type:"cancellation_started",requestId:n}),n}settleAgentCancellation(e,t,n){this.applyAgentTurnLiveness(e,t,{type:"cancellation_settled",requestId:n})}acceptAgentSnapshot(e,t){return this.requireDirectory(e).acceptAgent(t)}archiveAgentSnapshot(e,t,n){this.requireDirectory(e).archiveAgent(t,n)}restoreAgentSnapshot(e,t,n){const s=this.requireDirectory(e);n?s.acceptAgent(n):s.removeAgent(t)}acceptWorkspaceSnapshots(e,t){this.requireDirectory(e).acceptWorkspaces(t)}acceptProjectSnapshot(e,t){this.requireDirectory(e).acceptProject(t)}removeWorkspaceSnapshot(e,t){this.requireDirectory(e).removeWorkspace(t)}requireDirectory(e){const t=this.directorySyncByServer.get(e);if(!t)throw new Error(`Unknown host runtime for serverId ${e}`);return t}getSnapshot(e){return this.controllers.get(e)?.getSnapshot()??null}getConnectionStatusSince(e){return this.connectionStatusStartedAtByServer.get(e)??null}getVersion(){return this.version}getClient(e){return this.controllers.get(e)?.getClient()??null}subscribe(e,t){const n=this.serverListeners.get(e)??new Set;return n.add(t),this.serverListeners.set(e,n),()=>{const n=this.serverListeners.get(e);n&&(n.delete(t),0===n.size&&this.serverListeners.delete(e))}}subscribeAll(e){return this.globalListeners.add(e),()=>{this.globalListeners.delete(e)}}getEarliestOnlineHostServerId(){let e=null,t=null;for(const n of this.hosts){const s=this.getSnapshot(n.serverId);Q(s)&&s?.lastOnlineAt&&((!t||s.lastOnlineAt<t)&&(t=s.lastOnlineAt,e=n.serverId))}return e}ensureConnectedAll(e){for(const t of this.controllers.values())t.ensureConnected(e)}setAppVisible(e){e?this.ensureConnectedAll({verify:!0}):this.replicaCache.flush()}runProbeCycleNow(e){return e?this.controllers.get(e)?.runProbeCycleNow()??Promise.resolve():Promise.all(Array.from(this.controllers.values(),e=>e.runProbeCycleNow())).then(()=>{})}async refreshAgentDirectory(e){const t=this.directorySyncByServer.get(e.serverId);if(!t)throw new Error(`Unknown host runtime for serverId ${e.serverId}`);return t.refreshAgents(e)}async refreshWorkspaceDirectory(e){const t=this.directorySyncByServer.get(e.serverId);if(!t)throw new Error(`Unknown host runtime for serverId ${e.serverId}`);await t.refreshWorkspaces({subscribe:e.subscribe})}async refreshDirectories(e){const t=this.directorySyncByServer.get(e);if(!t)throw new Error(`Unknown host runtime for serverId ${e}`);await t.refreshDemand()}acquireDirectoryDemand(e){const t=this.directorySyncByServer.get(e);if(!t)return()=>{};const n={};return t.setDemand(n,!0),()=>t.setDemand(n,!1)}async prepareAgentRoute(e,t){const n=this.directorySyncByServer.get(e);if(!n)throw new Error(`Unknown host runtime for serverId ${e}`);await n.prepareAgentRoute(t)}async prepareWorkspaceRoute(e,t){const n=this.directorySyncByServer.get(e);if(!n)throw new Error(`Unknown host runtime for serverId ${e}`);await n.prepareWorkspaceRoute(t)}async prepareAgentTimeline(e,t){const n=this.timelineReplicaByServer.get(e);if(!n)throw new Error(`Unknown host runtime for serverId ${e}`);await n.prepare(t)}async fetchAgentTimeline(e,t,n){const s=this.directorySyncByServer.get(e);if(!s)throw new Error(`Unknown host runtime for serverId ${e}`);const o=E.useSessionStore.getState().sessions[e]?.viewedTimelineSync,c=await s.fetchTimeline(t,n);return o&&E.useSessionStore.getState().sessions[e]?.viewedTimelineSync===o&&(o.flushStreamAgent(t),o.applyTimelineResponse(c)),c}createViewedTimelineOwner(e,t){const n=this.directorySyncByServer.get(e);if(!n)throw new Error(`Unknown host runtime for serverId ${e}`);const s=this.timelineReplicaByServer.get(e);if(!s)throw new Error(`Unknown host runtime for serverId ${e}`);return(0,V.createViewedTimelineOwner)({serverId:e,replica:s,replaceDemandedAgentIds:e=>n.setAgentRouteDemand(e),drainQueuedAgentMessage:t=>this.drainQueuedAgentMessage(e,t),ports:t})}emit(e){this.version+=1;const t=this.serverListeners.get(e);if(t){for(const e of t)e();for(const e of this.globalListeners)e()}else for(const e of this.globalListeners)e()}}let me=null;const be="__paseoHostRuntimeStore";function Ie(){if(me)return me;const e=Reflect.get(globalThis,be);return e instanceof Ce?(me=e,e):(me=new Ce,Reflect.set(globalThis,be,me),me)}},3466,[453,36,884,3467,3468,3518,3521,3523,3463,3524,3525,880,3527,3528,2898,2979,3531,3529,881,3479,3491,3420,3532,3539,848,3541,3552,3570,3572,3583,3574,3584,3590,3620,3624,3625,3629,3631,3633,3634]);
|
|
15112
15112
|
__d(function(g,r,_i,_a,m,e,d){'use strict';m.exports=function t(n,f){if(n===f)return!0;if(n&&f&&'object'==typeof n&&'object'==typeof f){if(n.constructor!==f.constructor)return!1;var i,o,u;if(Array.isArray(n)){if((i=n.length)!=f.length)return!1;for(o=i;0!==o--;)if(!t(n[o],f[o]))return!1;return!0}if(n instanceof Map&&f instanceof Map){if(n.size!==f.size)return!1;for(o of n.entries())if(!f.has(o[0]))return!1;for(o of n.entries())if(!t(o[1],f.get(o[0])))return!1;return!0}if(n instanceof Set&&f instanceof Set){if(n.size!==f.size)return!1;for(o of n.entries())if(!f.has(o[0]))return!1;return!0}if(ArrayBuffer.isView(n)&&ArrayBuffer.isView(f)){if((i=n.length)!=f.length)return!1;for(o=i;0!==o--;)if(n[o]!==f[o])return!1;return!0}if(n.constructor===RegExp)return n.source===f.source&&n.flags===f.flags;if(n.valueOf!==Object.prototype.valueOf)return n.valueOf()===f.valueOf();if(n.toString!==Object.prototype.toString)return n.toString()===f.toString();if((i=(u=Object.keys(n)).length)!==Object.keys(f).length)return!1;for(o=i;0!==o--;)if(!Object.prototype.hasOwnProperty.call(f,u[o]))return!1;for(o=i;0!==o--;){var s=u[o];if(!t(n[s],f[s]))return!1}return!0}return n!=n&&f!=f}},3467,[]);
|
|
@@ -15234,18 +15234,18 @@ __d(function(g,r,i,a,m,e,d){m.exports=r(d[0])},3588,[3589]);
|
|
|
15234
15234
|
__d(function(g,r,i,a,m,e,d){function n(n,t){const o=g[`${__METRO_GLOBAL_PREFIX__}__loadBundleAsync`];if(null!=o){const s=String(n);if(null!=t){const n=t[s];if(null!=n)return o(n)}}}function t(t,o){const s=n(t,o),u=()=>r.importAll(t);return null!=s?s.then(u):u()}async function o(n,o,s){return t(n,o)}o.unstable_importMaybeSync=function(n,o){return t(n,o)},o.prefetch=function(t,o,s){n(t,o)?.then(()=>{},()=>{})},o.unstable_resolve=function(n,t){if(!t)throw new Error('Bundle splitting is required for Web Worker imports');const o=t[n];if(!o)throw new Error('Worker import is missing from split bundle paths: '+o);return o},o.unstable_createWorker=function(n,t){if('undefined'==typeof crossOriginIsolated||!crossOriginIsolated)return new Worker(n,t);try{const s=(o=n,`\n const ASYNC_WORKER_BASE = ${JSON.stringify(o)};\n const IMPORT_SCRIPTS = importScripts;\n const FETCH = fetch;\n const fromBaseURL = (input) => new URL(input, ASYNC_WORKER_BASE).href;\n self.fetch = function(input, init) {\n return FETCH(typeof input === 'string' ? fromBaseURL(input) : input, init);\n };\n self.importScripts = function(...urls) {\n return IMPORT_SCRIPTS.apply(self, urls.map(fromBaseURL));\n };\n importScripts(ASYNC_WORKER_BASE);\n `);return n=URL.createObjectURL(new Blob([s],{type:'text/javascript'})),new Worker(n,t)}finally{URL.revokeObjectURL(n)}var o},m.exports=o},3589,[]);
|
|
15235
15235
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"DirectorySync",{enumerable:!0,get:function(){return f}}),Object.defineProperty(e,"DirectoryRefreshSupersededError",{enumerable:!0,get:function(){return S}});var s=r(d[0]),t=r(d[1]),n=r(d[2]),o=r(d[3]),c=r(d[4]),h=r(d[5]);const p=[{key:"updated_at",direction:"desc"}];function u(s){return{hasMore:s.hasMore??s.hasMoreAfter??!1,nextCursor:s.nextCursor??s.afterCursor??null}}function l(s,n,o){o&&"changes"!==n.sync?.mode&&s.workspaces.clear(),o&&((s.syncModes??={}).workspaces=n.sync?.mode??"snapshot");for(const o of n.entries){const n=(0,t.normalizeWorkspaceDescriptor)(o);s.workspaces.set(n.id,n),(s.touchedWorkspaceIds??=new Set).add(n.id),(s.touchedProjectIds??=new Set).add(n.projectId)}for(const t of n.sync?.removals??[])s.workspaces.delete(t.id),(s.touchedWorkspaceIds??=new Set).add(t.id);n.sync&&((s.syncCursors??={}).workspaces={generation:n.sync.generation,afterSeq:n.sync.headSeq});for(const o of n.emptyProjects??[]){const n=(0,t.normalizeProjectDescriptor)(o);s.projects.set(n.projectId,n),(s.touchedProjectIds??=new Set).add(n.projectId)}}class f{agentTransactions=new c.DirectoryTransactionOwner;workspaceTransactions=new c.DirectoryTransactionOwner;connection={client:null,status:"offline",source:{clientGeneration:0,connectionEpoch:0}};agentSubscription=null;workspaceSubscription=null;eventSubscription=null;abortSessionWaits=new Set;cacheLoad=null;cacheAccepted=!1;revision=0;workspaceRevision=0;routeDemandIds=new Set;fullDemandSources=new Set;demandRefresh=null;satisfiedDemandSource=null;cursors={};constructor(s,t,c){this.serverId=s,this.callbacks=t,this.checkpoints=c;this.agents=new n.AgentDirectoryReplica(s,t.onAgentStoppedRunning,s=>this.checkpoints?.commitDirectoryMutations(this.serverId,s)),this.workspaces=new o.WorkspaceDirectoryReplica(s)}connectionChanged(s){const t=this.connection.client!==s.client||this.connection.source.clientGeneration!==s.source.clientGeneration||this.connection.source.connectionEpoch!==s.source.connectionEpoch,n="online"===this.connection.status&&"offline"===s.status;return t||n?(this.flushAbortedTransactions(),this.releaseSubscriptions(),h.workspaceLabels.disconnect(this.serverId),this.connection=s,this.abortPendingSessionWaits(),!s.client||"online"!==s.status||(this.hasDemand()&&this.requestDemandRefresh().catch(()=>{}),!0)):(this.connection=s,!1)}setDemand(s,t){const n=this.fullDemandSources.size>0;t?this.fullDemandSources.add(s):this.fullDemandSources.delete(s),this.hasDemand()||this.releaseSubscriptions(),!n&&this.fullDemandSources.size>0&&(this.loadCachedDirectory().catch(()=>{}),this.getOnlineConnection()&&this.requestDemandRefresh().catch(()=>{}))}setAgentRouteDemand(s){const t=new Set(s);if(t.size!==this.routeDemandIds.size||![...t].every(s=>this.routeDemandIds.has(s))){this.routeDemandIds.clear();for(const s of t)this.routeDemandIds.add(s);this.hasDemand()||this.releaseSubscriptions(),this.routeDemandIds.size>0&&this.getOnlineConnection()&&this.requestDemandRefresh().catch(()=>{})}}dispose(){this.flushAbortedTransactions(),this.abortPendingSessionWaits(),this.releaseSubscriptions(),this.fullDemandSources.clear(),this.routeDemandIds.clear(),h.workspaceLabels.disconnect(this.serverId)}releaseSubscriptions(){for(const s of[this.agentSubscription,this.workspaceSubscription,this.eventSubscription])s?.release().catch(()=>{});this.agentSubscription=null,this.workspaceSubscription=null,this.eventSubscription=null,this.satisfiedDemandSource=null}receiveAgentDelta(s,t){this.revision+=1,this.agentTransactions.record(s,t)||(this.agents.applyDelta(t),this.noteLiveCursor("agents",t),this.persistCheckpoint())}receiveWorkspaceDelta(s,t){this.revision+=1,this.workspaceRevision+=1,this.workspaceTransactions.record(s,t)||(this.applyWorkspaceDelta(t),"script_status"!==t.kind&&this.noteLiveCursor("projectId"in t||"project"in t?"projects":"workspaces",t),this.persistCheckpoint())}observeDirectoryEvents(){if(this.eventSubscription)return;const{client:s,source:t}=this.requireOnline();this.eventSubscription=s.observeEvents(["project.update","script_status_update"]),this.eventSubscription.subscribe({snapshot:()=>{},update:n=>{this.isCurrent(s,t)&&("project.update"===n.type&&this.receiveWorkspaceDelta(t,n.payload),"script_status_update"===n.type&&this.receiveWorkspaceDelta(t,{kind:"script_status",update:n.payload}))}})}hasDemand(){return this.fullDemandSources.size>0||this.routeDemandIds.size>0}requestDemandRefresh(s=!1){if(this.demandRefresh)return this.demandRefresh;if(!this.hasDemand())return Promise.resolve();if(!this.getOnlineConnection())return this.fullDemandSources.size>0?this.loadCachedDirectory():Promise.resolve();this.observeDirectoryEvents();const t=this.connection.source;if(!s&&this.satisfiedDemandSource?.clientGeneration===t.clientGeneration&&this.satisfiedDemandSource.connectionEpoch===t.connectionEpoch)return Promise.resolve();const n=this.fullDemandSources.size>0?this.refreshAll():Promise.all([this.refreshAgentsInternal({subscribe:{}},!1),this.refreshWorkspacesInternal({subscribe:!0},!1)]).then(()=>{});return this.demandRefresh=n.then(()=>{this.satisfiedDemandSource=t}).finally(()=>{this.demandRefresh=null;const s=this.connection.source;!this.hasDemand()||s.clientGeneration===t.clientGeneration&&s.connectionEpoch===t.connectionEpoch||this.requestDemandRefresh().catch(()=>{})}),this.demandRefresh}refreshDemand(){return this.requestDemandRefresh(!0)}async loadCachedAgent(s){if(!this.checkpoints)return;if(t.useSessionStore.getState().sessions[this.serverId]?.agents.has(s))return;const n=this.agents.captureCache(s),o=await this.checkpoints.readAgent(this.serverId,s);if(!o)return;const c=t.useSessionStore.getState().sessions[this.serverId];c&&!c.agents.has(s)&&this.agents.commitCachedAgent(n,o)}async prepareAgentRoute(s){await this.loadCachedAgent(s);const n=t.useSessionStore.getState().sessions[this.serverId]?.agents.get(s);n?.workspaceId&&await this.loadCachedWorkspace(n.workspaceId)}async prepareWorkspaceRoute(s){await this.loadCachedWorkspace(s)}async loadCachedWorkspace(s){if(!this.checkpoints)return;if(t.useSessionStore.getState().sessions[this.serverId]?.workspaces.has(s))return;const n=this.workspaceRevision,o=await this.checkpoints.readWorkspace(this.serverId,s);if(!o)return;if(this.workspaceRevision!==n)return;t.useSessionStore.getState().sessions[this.serverId]&&this.workspaces.commitCachedWorkspace(o.workspace,o.project)}loadCachedDirectory(){const s=this.checkpoints;return s?(this.cacheLoad??=(async()=>{const n=this.revision,o=await s.readDirectory(this.serverId);this.cacheAccepted||t.useSessionStore.getState().sessions[this.serverId]&&(this.agents.commitCached(o.agents),this.workspaces.commitCached(o),this.revision===n&&(this.cursors=o.checkpoint??{}),this.cacheAccepted=!0)})(),this.cacheLoad):Promise.resolve()}restoreCachedDirectory(){return this.loadCachedDirectory()}applyAgentTurnLiveness(s,t){this.agents.applyTurnLiveness(s,t)}acceptAgent(s){return this.agents.accept(s)}async fetchTimeline(t,n){const{client:o}=this.requireOnline(),c=this.agents.captureTimeline(t),h=await(0,s.fetchAgentTimelineOnce)(o,t,n);return h.agent&&this.agents.submitTimelineAgent(c,h.agent)&&(this.revision+=1,this.persistCheckpoint()),h}async refreshAgents(s={}){return this.refreshAgentsInternal(s,!0)}async refreshAgentsInternal(s,n){n&&(this.primeAgentTransactionForCacheLoad(),await this.loadCachedDirectory());const o=this.getOnlineConnection();if(!o)return this.callbacks.markAgentReady(),{agents:new Map(t.useSessionStore.getState().sessions[this.serverId]?.agents),subscriptionId:null};const{client:c,source:h}=o,p=this.agentTransactions.begin(h,()=>({entries:[],subscriptionId:null,syncRemovals:[]}));this.callbacks.markAgentLoading();try{if(await this.waitForSession(c,h),await this.fetchAgents(c,h,p,s),!this.isCurrent(c,h)||!this.hasMatchingSession(c,h))throw new S("agent completion no longer current");const t=this.agentTransactions.complete(p);if("stale"===t.kind)throw new S("agent completion was superseded");this.revision+=1;const n=this.commitAgentSnapshot(t.snapshot,t.deltas);return this.persistAgentCursors(t.snapshot,t.deltas),this.persistCheckpoint(),this.callbacks.markAgentReady(),{agents:n,subscriptionId:t.snapshot.subscriptionId}}catch(s){const t=this.agentTransactions.fail(p);if(t)for(const s of t)this.agents.applyDelta(s);throw s instanceof S||this.callbacks.markAgentError(s instanceof Error?s.message:String(s)),s}}async refreshWorkspaces(s){return this.refreshWorkspacesInternal(s,!0)}async refreshWorkspacesInternal(s,n){n&&await this.loadCachedDirectory();const o=this.getOnlineConnection();if(!o)return;const{client:c,source:h}=o,p=this.workspaceTransactions.begin(h,()=>({workspaces:new Map(t.useSessionStore.getState().sessions[this.serverId]?.workspaces),projects:new Map(t.useSessionStore.getState().sessions[this.serverId]?.projects),syncCursors:{},syncModes:{},touchedWorkspaceIds:new Set,touchedProjectIds:new Set}));try{await this.waitForSessionMetadata(c,h);const n=t.useSessionStore.getState().sessions[this.serverId]?.serverInfo,o=!0===n?.features?.projectList,u=!0===n?.features?.directorySync;o&&await this.fetchProjectSnapshot(c,h,p,u),await this.fetchWorkspaceSnapshot(c,h,p,!0===s?.subscribe,u),o||(this.buildLegacyProjectSnapshot(p.snapshot),(p.snapshot.syncModes??={}).projects=p.snapshot.syncModes?.workspaces),this.completeWorkspaceRefresh(c,h,p)}catch(s){const t=this.workspaceTransactions.fail(p);if(t)for(const s of t)this.applyWorkspaceDelta(s);throw s}}async fetchWorkspaceSnapshot(s,t,n,o,c){let h=null,p=o;for(;;){const o=Object.assign({sort:[{key:"activity_at",direction:"desc"}],page:h?{limit:200,cursor:h}:{limit:200}},c?{sync:this.readCursors().workspaces??{}}:{});let u;if(p){this.workspaceSubscription?.release().catch(()=>{});const n=s.observeWorkspaces(o);this.workspaceSubscription=n,n.subscribe({snapshot:()=>{},update:n=>{"workspace_update"===n.type&&this.isCurrent(s,t)&&this.receiveWorkspaceDelta(t,n.payload)}}),u=await n.ready}else u=await s.fetchWorkspaces(o);if(this.assertWorkspaceTransactionCurrent(s,t,n),l(n.snapshot,u,null===h),!u.pageInfo.hasMore||!u.pageInfo.nextCursor)return;h=u.pageInfo.nextCursor,p=!1}}buildLegacyProjectSnapshot(s){for(const t of s.workspaces.values())if(!s.projects.has(t.projectId)){const n=k(t);s.projects.set(n.projectId,n)}}async refreshAll(){await Promise.all([this.refreshAgents({subscribe:{}}),this.refreshWorkspaces({subscribe:!0})]),this.checkpoints?.replaceDirectoryBaseline?.(this.serverId,Object.assign({agents:this.agents.snapshot()},this.workspaces.snapshot(),{checkpoint:this.cursors})),this.getOnlineConnection()&&await this.connectWorkspaceLabels()}async connectWorkspaceLabels(){const{client:s}=this.requireOnline(),t=s.getLastServerInfoMessage();await h.workspaceLabels.connect({serverId:this.serverId,client:s,supportsWorkspaceLabels:!0===t?.features?.workspaceLabels})}acceptWorkspaces(s){const t=this.workspaces.acceptWorkspaces(s);this.checkpoints?.commitDirectoryMutations(this.serverId,t)}archiveAgent(s,t){this.agents.archive(s,t)}removeAgent(s){this.agents.remove(s)}acceptProject(s){const t=this.workspaces.acceptProject(s);this.checkpoints?.commitDirectoryMutations(this.serverId,t)}removeWorkspace(s){const t=this.workspaces.removeWorkspaceSnapshot(s);this.checkpoints?.commitDirectoryMutations(this.serverId,t)}markWorkspacesHydrated(s){t.useSessionStore.getState().setHasHydratedWorkspaces(this.serverId,s)}async fetchAgents(s,t,n,o){let c=o.page?.cursor??null,h=o.subscribe;for(;;){const l=o.page?.limit??200,f=Object.assign({},o.filter?{filter:o.filter}:{scope:"active"},{sort:p,page:c?{limit:l,cursor:c}:{limit:l}},!o.filter&&null===c&&this.supportsDirectorySync()?{sync:this.readCursors().agents??{}}:{});let k;if(h){if(h.subscriptionId)throw new Error("Subscription IDs are assigned by the host");this.agentSubscription?.release().catch(()=>{});const n=s.observeAgents(f);this.agentSubscription=n,n.subscribe({snapshot:()=>{},update:n=>{"agent_update"===n.type&&this.isCurrent(s,t)&&this.receiveAgentDelta(t,n.payload)}}),k=await n.ready}else k=await s.fetchAgents(f);this.assertAgentTransactionCurrent(s,t,n),n.snapshot.entries.push(...k.entries),n.snapshot.subscriptionId??=k.subscriptionId??null,this.recordAgentSync(n.snapshot,k.sync);const{hasMore:S,nextCursor:w}=u(k.pageInfo);if(!S||!w)break;c=w,h=void 0}}assertAgentTransactionCurrent(s,t,n){if(!this.agentTransactions.isCurrent(n)||!this.isCurrent(s,t))throw new S("agent page no longer current")}assertWorkspaceTransactionCurrent(s,t,n){if(!this.workspaceTransactions.isCurrent(n)||!this.isCurrent(s,t))throw new S("workspace fetch no longer current")}requireOnline(){const s=this.getOnlineConnection();if(!s)throw new Error(`Host ${this.serverId} is not connected`);return s}getOnlineConnection(){return this.connection.client&&"online"===this.connection.status?{client:this.connection.client,source:this.connection.source}:null}primeAgentTransactionForCacheLoad(){const s=this.getOnlineConnection();s&&this.agentTransactions.begin(s.source,()=>({entries:[],subscriptionId:null,syncRemovals:[]}))}supportsDirectorySync(){return!0===t.useSessionStore.getState().sessions[this.serverId]?.serverInfo?.features?.directorySync}commitAgentSnapshot(s,t){return"changes"===s.syncMode?this.agents.commitChanges(s.entries,s.syncRemovals,t):this.agents.commitSnapshot(s.entries,t)}persistAgentCursors(s,t){s.syncCursor&&this.writeCursor("agents",s.syncCursor);for(const s of t)this.noteLiveCursor("agents",s)}async fetchProjectSnapshot(s,n,o,c){const h=await s.listProjects(c?{sync:this.readCursors().projects??{}}:void 0);this.assertWorkspaceTransactionCurrent(s,n,o),"changes"!==h.sync?.mode&&o.snapshot.projects.clear(),(o.snapshot.syncModes??={}).projects=h.sync?.mode??"snapshot";for(const s of h.projects){const n=(0,t.normalizeProjectDescriptor)(s);o.snapshot.projects.set(n.projectId,n),(o.snapshot.touchedProjectIds??=new Set).add(n.projectId)}for(const s of h.sync?.removals??[])o.snapshot.projects.delete(s.id),(o.snapshot.touchedProjectIds??=new Set).add(s.id);h.sync&&((o.snapshot.syncCursors??={}).projects={generation:h.sync.generation,afterSeq:h.sync.headSeq})}completeWorkspaceRefresh(s,t,n){if(!this.isCurrent(s,t)||!this.hasMatchingSession(s,t))throw new S("workspace completion no longer current");const o=this.workspaceTransactions.complete(n);if("stale"===o.kind)throw new S("workspace completion was superseded");this.revision+=1,this.workspaceRevision+=1;const c=this.readWorkspaceState(),h=this.workspaces.commitSnapshot(o.snapshot,o.deltas),p=this.workspaces.snapshot(),u="changes"===o.snapshot.syncModes?.workspaces?new Set(o.snapshot.touchedWorkspaceIds):new Set([...c.workspaces.keys(),...p.workspaces.keys()]),l="changes"===o.snapshot.syncModes?.projects?new Set(o.snapshot.touchedProjectIds):new Set([...c.projects.keys(),...p.projects.keys()]);for(const s of h)"workspace"===s.kind&&u.add(s.id),"project"===s.kind&&l.add(s.id);this.persistWorkspaceChanges(c,u,l);for(const[s,t]of Object.entries(o.snapshot.syncCursors??{}))t&&this.writeCursor(s,t);for(const s of o.deltas){if("script_status"===s.kind)continue;const t="projectId"in s||"project"in s?"projects":"workspaces";this.noteLiveCursor(t,s)}this.persistCheckpoint()}persistCheckpoint(){this.checkpoints?.commitDirectoryMutations(this.serverId,[],this.cursors)}readWorkspaceState(){return this.workspaces.snapshot()}applyWorkspaceDelta(s){const t=this.workspaces.applyDelta(s);this.checkpoints?.commitDirectoryMutations(this.serverId,t)}persistWorkspaceChanges(s,t,n){const o=this.workspaces.snapshot(),c=[];for(const n of t){const t=o.workspaces.get(n);t?c.push({kind:"workspace",type:"upsert",id:n,value:t}):s.workspaces.has(n)&&c.push({kind:"workspace",type:"delete",id:n})}for(const t of n){const n=o.projects.get(t);n?c.push({kind:"project",type:"upsert",id:t,value:n}):s.projects.has(t)&&c.push({kind:"project",type:"delete",id:t})}this.checkpoints?.commitDirectoryMutations(this.serverId,c)}recordAgentSync(s,t){t&&(s.syncMode=t.mode,s.syncRemovals.push(...t.removals),s.syncCursor={generation:t.generation,afterSeq:t.headSeq})}noteLiveCursor(s,t){t.generation&&void 0!==t.seq&&this.writeCursor(s,{generation:t.generation,afterSeq:t.seq})}readCursors(){return this.cursors}writeCursor(s,t){const n=this.readCursors(),o=n[s];o?.generation===t.generation&&o.afterSeq>=t.afterSeq||(this.cursors=Object.assign({},n,{[s]:t}))}isCurrent(s,t){return this.connection.client===s&&"online"===this.connection.status&&this.connection.source.clientGeneration===t.clientGeneration&&this.connection.source.connectionEpoch===t.connectionEpoch}async waitForSession(s,t){await this.waitForSessionState(s,t,()=>this.hasMatchingSession(s,t))}async waitForSessionMetadata(s,n){await this.waitForSessionState(s,n,()=>{const o=t.useSessionStore.getState().sessions[this.serverId];return this.hasMatchingSession(s,n)&&null!==o?.serverInfo})}async waitForSessionState(s,n,o){o()||await new Promise((c,h)=>{let p=!1,u=()=>{};const l=s=>{p||(p=!0,u(),this.abortSessionWaits.delete(f),"ready"===s?c():h(new S("session wait no longer current")))},f=()=>l("aborted"),k=()=>{o()?l("ready"):this.isCurrent(s,n)||l("aborted")};this.abortSessionWaits.add(f),u=t.useSessionStore.subscribe(k),k()})}hasMatchingSession(s,n){const o=t.useSessionStore.getState().sessions[this.serverId];return o?.client===s&&o.clientGeneration===n.clientGeneration}flushAbortedTransactions(){for(const s of this.agentTransactions.abort())this.agents.applyDelta(s);for(const s of this.workspaceTransactions.abort())this.applyWorkspaceDelta(s)}abortPendingSessionWaits(){for(const s of this.abortSessionWaits)s()}}function k(s){return{projectId:s.projectId,projectKey:null,projectDisplayName:s.projectDisplayName,projectCustomName:s.projectCustomName??null,projectRootPath:s.projectRootPath,projectKind:s.projectKind}}class S extends Error{}},3590,[3591,3420,3592,3612,3614,3615]);
|
|
15236
15236
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.fetchAgentTimelineOnce=function(n,c,s){let o=t.get(n);o||(o=new Map,t.set(n,o));const f=`${c}:${JSON.stringify(s)}`,u=o.get(f);if(u)return u;const l=n.fetchAgentTimeline(c,s);o.set(f,l);const _=()=>{o.get(f)===l&&o.delete(f)};return l.then(_,_),l};const t=new WeakMap},3591,[]);
|
|
15237
|
-
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"AgentDirectoryReplica",{enumerable:!0,get:function(){return
|
|
15237
|
+
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"AgentDirectoryReplica",{enumerable:!0,get:function(){return u}});var t=r(d[0]),s=r(d[1]),n=r(d[2]),o=r(d[3]),c=r(d[4]),h=r(d[5]),p=r(d[6]);function l(t){return{agent:(0,n.projectAgentSnapshot)(t),project:(0,c.resolveProjectPlacement)({projectPlacement:t.projectPlacement,cwd:t.cwd})}}class u{lifecycleVersions=new Map;members=new Set;pendingCacheReads=new Set;constructor(t,s,n){this.serverId=t,this.onStoppedRunning=s,this.persist=n,this.storeProjection=new p.AgentStoreProjection(t)}captureTimeline(t){return{agentId:t,version:this.lifecycleVersions.get(t)??0}}snapshot(){return this.storeProjection.snapshot()}captureCache(t){return this.pendingCacheReads.add(t),this.captureTimeline(t)}commitCached(t){const s=this.storeProjection.commitCached(t);this.members.clear();for(const t of s.keys())this.members.add(t)}commitCachedAgent(t,s){return this.pendingCacheReads.delete(t.agentId),t.version===(this.lifecycleVersions.get(t.agentId)??0)&&(!this.members.has(s.id)&&(this.members.add(s.id),this.storeProjection.accept(s),this.storeProjection.publishActivity(s),!0))}submitTimelineAgent(o,c){if(o.version!==(this.lifecycleVersions.get(o.agentId)??0))return!1;const p=this.storeProjection.get(o.agentId),l=(0,h.applyLegacyDaemonWorkspaceOwnership)({serverId:this.serverId,agent:(0,n.normalizeAgentSnapshot)(c,this.serverId)}),u=Object.assign({},l,{projectPlacement:l.projectPlacement??p?.projectPlacement}),v=this.storeProjection.accept(u);return this.members.add(v.id),this.storeProjection.replacePendingPermissions(v),this.storeProjection.publishActivity(v),v.archivedAt&&(0,t.clearArchiveAgentPending)({queryClient:s.queryClient,serverId:this.serverId,agentId:v.id}),this.persist([this.agentUpsert(v)]),!0}applyDelta(t){const s=this.members.has("remove"===t.kind?t.agentId:t.agent.id),n=this.storeProjection.applyDelta(t);"remove"===t.kind?(this.members.delete(t.agentId),this.advance(t.agentId)):(this.members.add(t.agent.id),s||this.advance(t.agent.id)),n.stoppedRunning&&this.onStoppedRunning(n.agentId),this.persist(n.agent?[this.agentUpsert(n.agent)]:[{kind:"agent",type:"delete",id:n.agentId}])}accept(t){const s=this.storeProjection.accept(t);return this.members.add(s.id),this.persist([this.agentUpsert(s)]),s}commitSnapshot(t,s,n=!0){const c=this.storeProjection.snapshot(),h=(0,o.reconcileAgentDirectory)({snapshot:t,deltas:s}),p=new Set(h.map(t=>t.agent.id));for(const t of this.pendingCacheReads)p.has(t)||this.advance(t);for(const t of this.members)p.has(t)||this.advance(t);for(const t of p)this.members.has(t)||this.advance(t);for(const t of c.keys())p.has(t)||this.storeProjection.removeFromDirectory(t);this.members.clear(),this.pendingCacheReads.clear();for(const t of p)this.members.add(t);const l=this.storeProjection.replaceFetched(h);for(const[t,s]of c)"open"===s.turn.phase&&"idle"===l.get(t)?.turn.phase&&this.onStoppedRunning(t);return n&&this.persist([...Array.from(c.keys()).filter(t=>!l.has(t)).map(t=>({kind:"agent",type:"delete",id:t})),...Array.from(l.values(),t=>this.agentUpsert(t))]),l}commitChanges(t,s,n){const o=this.storeProjection.snapshot(),c=new Map;for(const t of o.values())c.set(t.id,l(t));for(const s of t)c.set(s.agent.id,s);const h=s.map(({id:t})=>({kind:"remove",agentId:t})),p=this.commitSnapshot(Array.from(c.values()),[...h,...n],!1),u=new Set([...t.map(t=>t.agent.id),...s.map(({id:t})=>t),...n.map(t=>"remove"===t.kind?t.agentId:t.agent.id)]);return this.persist(Array.from(u,t=>{const s=p.get(t);return s?this.agentUpsert(s):{kind:"agent",type:"delete",id:t}})),p}archive(n,o){this.advance(n);const c=this.storeProjection.archive(n,o);c&&this.persist([this.agentUpsert(c)]),(0,t.clearArchiveAgentPending)({queryClient:s.queryClient,serverId:this.serverId,agentId:n})}remove(t){this.members.delete(t),this.advance(t),this.storeProjection.remove(t),this.persist([{kind:"agent",type:"delete",id:t}])}applyTurnLiveness(t,s){const n="open"===this.storeProjection.get(t)?.turn.phase,o=this.storeProjection.applyTurn(t,s);o&&(this.persist([this.agentUpsert(o)]),n&&"idle"===o.turn.phase&&this.onStoppedRunning(t))}agentUpsert(t){return{kind:"agent",type:"upsert",id:t.id,value:t}}advance(t){this.lifecycleVersions.set(t,(this.lifecycleVersions.get(t)??0)+1)}}},3592,[3593,848,3595,3597,3599,3601,3602]);
|
|
15238
15238
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"ARCHIVE_AGENT_PENDING_QUERY_KEY",{enumerable:!0,get:function(){return y}}),e.toArchiveKey=v,e.readPendingState=A,e.selectPendingArchiveAgentIds=I,e.setAgentArchiving=f,e.isAgentArchiving=function(t){const n=v(t);if(!n)return!1;return A(t.queryClient)[n]??!1},e.removeAgentFromListPayload=h,e.removeAgentFromCachedLists=Q,e.markAgentArchivedInHistoryPayload=q,e.markAgentArchivedInHistoryCache=b,e.clearArchiveAgentPending=K,e.applyArchivedAgentCloseResults=p,e.usePendingArchiveAgentIds=function(n){const s=(0,t.c)(5),u=O();let o,c;s[0]!==u.data?(o=u.data??{},s[0]=u.data,s[1]=o):o=s[1];s[2]!==n||s[3]!==o?(c=I(o,n),s[2]=n,s[3]=o,s[4]=c):c=s[4];return c},e.useArchiveAgent=function(){const y=(0,t.c)(19),l=(0,s.useQueryClient)(),{t:A}=(0,u.useTranslation)(),I=O();let h,Q,q,b,H;y[0]!==A?(h=async t=>{const n=o.useSessionStore.getState().sessions[t.serverId]?.client??null;if(!n)throw new Error(A("common.errors.daemonClientUnavailable"));return await n.archiveAgent(t.agentId)},y[0]=A,y[1]=h):h=y[1];y[2]!==l?(Q=t=>{const n={agent:(s=t,o.useSessionStore.getState().sessions[s.serverId]?.agents.get(s.agentId)),lists:S(l,t.serverId)};var s;const u=(new Date).toISOString();return p({queryClient:l,serverId:t.serverId,results:[{agentId:t.agentId,archivedAt:u}],invalidateQueries:!1}),f({queryClient:l,serverId:t.serverId,agentId:t.agentId,isArchiving:!0}),n},y[2]=l,y[3]=Q):Q=y[3];y[4]!==l?(q=(t,s,u)=>{var o;u&&(o={serverId:s.serverId,agentId:s.agentId,agent:u.agent},(0,n.getHostRuntimeStore)().restoreAgentSnapshot(o.serverId,o.agentId,o.agent),C(l,s.serverId,u.lists))},b=(t,n,s)=>{K({queryClient:l,serverId:s.serverId,agentId:s.agentId}),l.invalidateQueries({queryKey:["sidebarAgentsList",s.serverId]}),l.invalidateQueries({queryKey:["allAgents",s.serverId]}),l.invalidateQueries({queryKey:(0,c.agentHistoryQueryKey)(s.serverId)}),l.invalidateQueries({queryKey:(0,c.allAgentHistoryQueryRootKey)()})},y[4]=l,y[5]=q,y[6]=b):(q=y[5],b=y[6]);y[7]!==h||y[8]!==Q||y[9]!==q||y[10]!==b?(H={mutationFn:h,onMutate:Q,onSuccess:j,onError:q,onSettled:b},y[7]=h,y[8]=Q,y[9]=q,y[10]=b,y[11]=H):H=y[11];const D=(0,s.useMutation)(H).mutateAsync;let _;y[12]!==D?(_=async t=>{await D(t)},y[12]=D,y[13]=_):_=y[13];const w=_;let L;y[14]!==I.data?(L=t=>{const n=v(t);return!!n&&((I.data??{})[n]??!1)},y[14]=I.data,y[15]=L):L=y[15];const N=L;let P;y[16]!==w||y[17]!==N?(P={archiveAgent:w,isArchivingAgent:N},y[16]=w,y[17]=N,y[18]=P):P=y[18];return P};var t=r(d[0]),n=r(d[1]);r(d[2]);var s=r(d[3]),u=r(d[4]),o=r(d[5]),c=r(d[6]);const y=["archive-agent-pending"],l=new Set;function v(t){const n=t.serverId.trim(),s=t.agentId.trim();return n&&s?`${n}:${s}`:""}function A(t){return t.getQueryData(y)??{}}function I(t,n){const s=n.trim();if(!s)return l;const u=`${s}:`;let o=null;for(const n of Object.keys(t)){if(!n.startsWith(u))continue;const t=n.slice(u.length);t&&(o??=[],o.push(t))}return o&&0!==o.length?new Set(o):l}function f(t){const n=v(t);n&&t.queryClient.setQueryData(y,s=>{const u=s??{};if(t.isArchiving)return u[n]?u:Object.assign({},u,{[n]:!0});if(!u[n])return u;const o=Object.assign({},u);return delete o[n],o})}function h(t,n){if(!t||!Array.isArray(t.entries)||!n)return t;const s=t.entries.filter(t=>t?.agent?.id!==n);return s.length===t.entries.length?t:Object.assign({},t,{entries:s})}function Q(t,n){const s=n.agentId.trim();s&&(t.setQueryData(["sidebarAgentsList",n.serverId],t=>h(t,s)),t.setQueryData(["allAgents",n.serverId],t=>h(t,s)))}function q(t,n){if(!t||!Array.isArray(t.pages)||!n.agentId)return t;const s=new Date(n.archivedAt);if(Number.isNaN(s.getTime()))return t;let u=!1;const o=t.pages.map(t=>{if(!Array.isArray(t.agents))return t;let o=!1;const c=t.agents.map(t=>t.id!==n.agentId||null!=t.serverId&&t.serverId!==n.serverId?t:(o=!0,u=!0,Object.assign({},t,{archivedAt:s})));return o?Object.assign({},t,{agents:c}):t});return u?Object.assign({},t,{pages:o}):t}function b(t,n){t.setQueryData((0,c.agentHistoryQueryKey)(n.serverId),t=>q(t,n)),t.setQueriesData({queryKey:(0,c.allAgentHistoryQueryRootKey)()},t=>q(t,n))}function K(t){f(Object.assign({},t,{isArchiving:!1}))}function S(t,n){return{sidebarAgentsList:t.getQueryData(["sidebarAgentsList",n]),allAgents:t.getQueryData(["allAgents",n]),agentHistory:t.getQueryData((0,c.agentHistoryQueryKey)(n)),allAgentHistory:t.getQueriesData({queryKey:(0,c.allAgentHistoryQueryRootKey)()})}}function H(t,n,s){void 0!==s?t.setQueryData(n,s):t.removeQueries({queryKey:n,exact:!0})}function C(t,n,s){H(t,["sidebarAgentsList",n],s.sidebarAgentsList),H(t,["allAgents",n],s.allAgents),H(t,(0,c.agentHistoryQueryKey)(n),s.agentHistory);for(const[n,u]of s.allAgentHistory)H(t,n,u)}function D(t){const s=new Date(t.archivedAt);Number.isNaN(s.getTime())||(0,n.getHostRuntimeStore)().archiveAgentSnapshot(t.serverId,t.agentId,s.toISOString())}function p(t){if(0!==t.results.length){for(const n of t.results)D({serverId:t.serverId,agentId:n.agentId,archivedAt:n.archivedAt}),Q(t.queryClient,{serverId:t.serverId,agentId:n.agentId}),b(t.queryClient,{serverId:t.serverId,agentId:n.agentId,archivedAt:n.archivedAt});(t.invalidateQueries??1)&&(t.queryClient.invalidateQueries({queryKey:["sidebarAgentsList",t.serverId]}),t.queryClient.invalidateQueries({queryKey:["allAgents",t.serverId]}),t.queryClient.invalidateQueries({queryKey:(0,c.agentHistoryQueryKey)(t.serverId)}),t.queryClient.invalidateQueries({queryKey:(0,c.allAgentHistoryQueryRootKey)()}))}}function O(){const n=(0,t.c)(2);let u,o;return n[0]===Symbol.for("react.memo_cache_sentinel")?(u={},n[0]=u):u=n[0],n[1]===Symbol.for("react.memo_cache_sentinel")?(o={queryKey:y,queryFn:_,initialData:u,staleTime:1/0,gcTime:1/0},n[1]=o):o=n[1],(0,s.useQuery)(o)}async function _(){return{}}function j(t,n){D({serverId:n.serverId,agentId:n.agentId,archivedAt:t.archivedAt})}},3593,[453,3466,36,799,853,3420,3594]);
|
|
15239
15239
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.agentHistoryQueryKey=function(t){return["agentHistory",t]},e.allAgentHistoryQueryRootKey=function(){return t},e.allAgentHistoryQueryKey=function(n){return[...t,...[...n].sort()]};const t=["allAgentHistory"]},3594,[]);
|
|
15240
15240
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.derivePendingPermissionKey=function(t,n){const s=n.id||("string"==typeof n.metadata?.id?n.metadata.id:void 0)||n.name||n.title||`${n.kind}:${JSON.stringify(n.input??n.metadata??{})}`;return`${t}:${s}`},e.projectAgentSnapshot=function(t){return Object.assign({id:t.id,provider:t.provider,cwd:t.cwd},t.workspaceId?{workspaceId:t.workspaceId}:{},{model:t.model},t.features?{features:t.features}:{},{thinkingOptionId:t.thinkingOptionId??null,createdAt:t.createdAt.toISOString(),updatedAt:t.updatedAt.toISOString(),lastUserMessageAt:t.lastUserMessageAt?.toISOString()??null,status:t.status},u(t),{capabilities:t.capabilities,currentModeId:t.currentModeId,availableModes:t.availableModes,pendingPermissions:t.pendingPermissions,persistence:t.persistence},t.runtimeInfo?{runtimeInfo:t.runtimeInfo}:{},t.lastUsage?{lastUsage:t.lastUsage}:{},t.lastError?{lastError:t.lastError}:{},{title:t.title,labels:t.labels,requiresAttention:t.requiresAttention??!1,attentionReason:t.attentionReason??null,attentionTimestamp:t.attentionTimestamp?.toISOString()??null,archivedAt:t.archivedAt?.toISOString()??null})},e.normalizeAgentSnapshot=function(n,s){const u=new Date(n.createdAt),o=new Date(n.updatedAt),c=n.lastUserMessageAt?new Date(n.lastUserMessageAt):null,p=n.attentionTimestamp?new Date(n.attentionTimestamp):null,I=n.archivedAt?new Date(n.archivedAt):null,A=(0,t.getParentAgentIdFromLabels)(n.labels),v=l(n,c);return{serverId:s,id:n.id,provider:n.provider,status:n.status,turn:v,createdAt:u,updatedAt:o,lastUserMessageAt:c,lastActivityAt:o,capabilities:n.capabilities,currentModeId:n.currentModeId,availableModes:n.availableModes??[],pendingPermissions:n.pendingPermissions??[],persistence:n.persistence??null,runtimeInfo:n.runtimeInfo,lastUsage:n.lastUsage,lastError:n.lastError??null,title:n.title??null,cwd:n.cwd,workspaceId:n.workspaceId,model:n.model??null,features:n.features,thinkingOptionId:n.thinkingOptionId??null,requiresAttention:n.requiresAttention??!1,attentionReason:n.attentionReason??null,attentionTimestamp:p,archivedAt:I,parentAgentId:A,labels:n.labels}};var t=r(d[0]),n=r(d[1]);function s(t,n){return null===t.activeTurn?null:t.activeTurn?{turnId:t.activeTurn.turnId,startedAt:t.activeTurn.startedAt?new Date(t.activeTurn.startedAt):null}:"running"===t.status?{turnId:null,startedAt:n}:null}function l(t,l){const u=s(t,l);return u?Object.assign({phase:"open"},u,{cancellationRequestId:null}):n.TURN_LIVENESS_IDLE}function u(t){return"idle"===t.turn.phase?{activeTurn:null}:null===t.turn.turnId?{}:{activeTurn:{turnId:t.turn.turnId,startedAt:t.turn.startedAt?.toISOString()??null}}}},3595,[3596,3439]);
|
|
15241
15241
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"PARENT_AGENT_ID_LABEL",{enumerable:!0,get:function(){return t}}),e.getOpenAgentTabLabel=function(t){return`${n}${t}`},e.isOpenAgentTabLabel=u,e.getParentAgentIdFromLabels=o,e.isDelegatedAgent=function(t){return null!==o(t.labels)},e.hasOpenAgentTab=function(t){return Object.entries(t??{}).some(([t,n])=>u(t)&&"true"===n)};const t="paseo.parent-agent-id",n="paseo.open-agent-tab.";function u(t){return t.startsWith(n)}function o(n){const u=n?.[t];return"string"==typeof u&&u.trim().length>0?u.trim():null}},3596,[]);
|
|
15242
15242
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.reconcileAgentDirectory=function(n){const o=new Map(n.snapshot.map(t=>[t.agent.id,t]));for(const c of n.deltas){if("remove"===c.kind){o.delete(c.agentId);continue}const n=o.get(c.agent.id),l=(0,t.acceptAgentDirectoryUpdate)(n?.agent,c.agent),s=n?.project,u=l===c.agent?c.project??s:s;o.set(c.agent.id,{agent:l,project:u??{projectKey:c.agent.cwd,projectName:/[^/]+$/.exec(c.agent.cwd)?.[0]??c.agent.cwd,checkout:{cwd:c.agent.cwd,isGit:!1,currentBranch:null,remoteUrl:null,worktreeRoot:null,isPaseoOwnedWorktree:!1,mainRepoRoot:null}}})}return Array.from(o.values())};var t=r(d[0])},3597,[3598]);
|
|
15243
15243
|
__d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),_e.acceptAgentDirectoryUpdate=function(e,t){return!e||n(t.updatedAt)>=n(e.updatedAt)?t:void 0===t.lastUsage||(0,s.default)(t.lastUsage,e.lastUsage)?e:Object.assign({},e,{lastUsage:t.lastUsage})};var e,t=r(d[0]),s=(e=t)&&e.__esModule?e:{default:e};function n(e){return e instanceof Date?e.getTime():Date.parse(e)}},3598,[533]);
|
|
15244
|
-
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.
|
|
15245
|
-
__d(function(g,r,i,
|
|
15246
|
-
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.
|
|
15247
|
-
__d(function(g,r,i,a,m,
|
|
15248
|
-
__d(function(g,r,i,
|
|
15244
|
+
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.deriveProjectPlacementFromCwd=n,e.resolveProjectPlacement=function(t){return t.projectPlacement??n(t.cwd)};var t=r(d[0]);function o(t){const o=t.trim();return o.length>0?o:"."}function n(n){const c=o(n),l=(0,t.deriveProjectKey)(c);return{projectKey:l,projectName:(0,t.deriveProjectName)(l),workspaceName:null,checkout:{cwd:c,isGit:!1,currentBranch:null,remoteUrl:null,worktreeRoot:null,isPaseoOwnedWorktree:!1,mainRepoRoot:null}}}},3599,[3600]);
|
|
15245
|
+
__d(function(g,r,i,_a,m,e,d){"use strict";function t(t){const n=t.indexOf(".paseo/worktrees/");return-1!==n?t.slice(0,n).replace(/\/$/,""):t}function n(t){if(!t)return null;const n=t.trim();if(!n)return null;let o=null,c=null;const s=n.match(/^[^@]+@([^:]+):(.+)$/);if(s)o=s[1]??null,c=s[2]??null;else if(n.includes("://"))try{const t=new URL(n);o=t.hostname||null,c=t.pathname?t.pathname.replace(/^\//,""):null}catch{}if(!o||!c)return null;let l=c.trim().replace(/^\/+/,"").replace(/\/+$/,"");if(l.endsWith(".git")&&(l=l.slice(0,-4)),!l.includes("/"))return null;const u=o.toLowerCase();return"github.com"===u?`remote:github.com/${l}`:`remote:${u}/${l}`}function o(t){if(!t)return null;let n=t;if(n.startsWith("git@")){const t=n.indexOf(":");-1!==t&&(n=n.slice(t+1))}else if(n.includes("://")){const t=n.split("://")[1];if(t){const o=t.indexOf("/");-1!==o&&(n=t.slice(o+1))}}return n.endsWith(".git")&&(n=n.slice(0,-4)),n.includes("/")?n:null}function c(t){const n="remote:github.com/";if(t.startsWith(n))return t.slice(18)||t;const o=t.split("/").filter(Boolean);return o[o.length-1]||t}function s(t){const n=new Date,o=new Date(n.getFullYear(),n.getMonth(),n.getDate()),c=new Date(o.getTime()-864e5),s=new Date(t.getFullYear(),t.getMonth(),t.getDate());if(s.getTime()>=o.getTime())return"Recent";if(s.getTime()>=c.getTime())return"Yesterday";const l=o.getTime()-s.getTime(),u=Math.floor(l/864e5);return u<=7?"This week":u<=30?"This month":"Older"}Object.defineProperty(e,'__esModule',{value:!0}),e.deriveProjectKey=t,e.deriveRemoteProjectKey=n,e.parseRepoNameFromRemoteUrl=o,e.parseRepoShortNameFromRemoteUrl=function(t){const n=o(t);if(!n)return null;const c=n.split("/");return c[c.length-1]||null},e.deriveProjectName=c,e.deriveProjectDisplayName=function(t){const n="remote:github.com/";if(t.projectKey.startsWith(n))return t.projectKey.slice(18);if(t.projectKey.startsWith("remote:")){const n=t.projectKey.slice(7),o=n.indexOf("/");if(o>=0){const t=n.slice(o+1).trim();if(t.length>0)return t}return n}const o=t.projectName.trim();if(o.length>0)return o;const c=t.projectKey.replace(/\\/g,"/").replace(/\/+$/,"").split("/").filter(Boolean);return c[c.length-1]??t.projectKey},e.deriveDateGroup=s,e.groupAgents=function(t,n){const{activeAgents:o,inactiveAgents:c}=f(t,Date.now()),s=v(p(o,n)),l=y(c);return{activeGroups:s,inactiveGroups:l}};const l=1728e5,u=5;function a(t){return"open"===t.turn.phase||t.requiresAttention||(t.pendingPermissionCount??0)>0}function f(t,n){const o=[],c=[];for(const s of t){if(s.archivedAt){c.push(s);continue}const t=n-s.lastActivityAt.getTime()<l;a(s)||t?o.push(s):c.push(s)}return{activeAgents:o,inactiveAgents:c}}function p(o,c){const s=new Map;for(const l of o){const o=n(c?.getRemoteUrl?.(l)??null)??t(l.cwd),u=s.get(o)||{trulyActive:[],recentlyActive:[]};a(l)?u.trulyActive.push(l):u.recentlyActive.push(l),s.set(o,u)}return s}function h(t,n){return n.lastActivityAt.getTime()-t.lastActivityAt.getTime()}function v(t){const n=[];for(const[o,{trulyActive:s,recentlyActive:l}]of t){s.sort(h),l.sort(h);const t=l.slice(0,u),a=[...s,...t];a.sort(h),n.push({projectKey:o,projectName:c(o),agents:a,activeCount:s.length,totalCount:s.length+l.length})}return n.sort((t,n)=>{const o=t.agents[0]?.lastActivityAt.getTime()??0;return(n.agents[0]?.lastActivityAt.getTime()??0)-o}),n}function y(t){const n=new Map;for(const o of t){const t=s(o.lastActivityAt),c=n.get(t)||[];c.push(o),n.set(t,c)}const o=["Recent","Yesterday","This week","This month","Older"],c=[];for(const t of o){const o=n.get(t);o&&o.length>0&&(o.sort(h),c.push({label:t,agents:o}))}return c}},3600,[]);
|
|
15246
|
+
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.applyLegacyDaemonWorkspaceOwnership=function(n){if(n.agent.workspaceId)return n.agent;const o=t.useSessionStore.getState().sessions[n.serverId];if(c=o?.serverInfo,!0===c?.features?.workspaceMultiplicity)return n.agent;var c;const u=o?.agents.get(n.agent.id)??o?.agentDetails.get(n.agent.id),p=o?.workspaces,l=u?.workspaceId??s(n.agent,p)??null;if(!l)return n.agent;return Object.assign({},n.agent,{workspaceId:l,projectPlacement:n.agent.projectPlacement??u?.projectPlacement})};var t=r(d[0]),n=r(d[1]);function s(t,s){const o=(0,n.normalizeWorkspacePath)(t.cwd);if(!o)return null;for(const t of s?.values()??[])if((0,n.normalizeWorkspacePath)(t.workspaceDirectory)===o)return t.id;return o}},3601,[3420,3429]);
|
|
15247
|
+
__d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),Object.defineProperty(_e,"AgentStoreProjection",{enumerable:!0,get:function(){return w}});var e,t=r(d[0]),s=(e=t)&&e.__esModule?e:{default:e},n=r(d[1]),o=r(d[2]),c=r(d[3]),u=r(d[4]),l=r(d[5]),v=r(d[6]),h=r(d[7]),p=r(d[8]),I=r(d[9]),A=r(d[10]),S=r(d[11]);function f(e){return t=>{if(!t.has(e))return t;const s=new Map(t);return s.delete(e),s}}function y(e,t){if(!e)return t;const s="open"===t.turn.phase?{turnId:t.turn.turnId,startedAt:t.turn.startedAt}:null,n=(0,S.reduceTurnLiveness)(e.turn,{type:"snapshot",activeTurn:s});return n===t.turn?t:Object.assign({},t,{turn:n})}class w{constructor(e){this.serverId=e}snapshot(){return n.useSessionStore.getState().sessions[this.serverId]?.agents??new Map}get(e){const t=n.useSessionStore.getState().sessions[this.serverId];return t?.agents.get(e)??t?.agentDetails.get(e)}commitCached(e){const t=new Map(e);for(const[e,s]of this.snapshot())t.set(e,s);for(const e of t.values())this.publishActivity(e);return n.useSessionStore.getState().setAgents(this.serverId,t),t}publishActivity(e){n.useSessionStore.getState().setAgentLastActivity(e.id,e.lastActivityAt)}accept(e){let t=e;return n.useSessionStore.getState().setAgents(this.serverId,s=>{const n=s.get(e.id);if(t=(0,o.acceptAgentDirectoryUpdate)(n,y(n,e)),t===n)return s;const c=new Map(s);return c.set(e.id,t),c}),t}applyDelta(e){if("remove"===e.kind)return this.removeFromDirectory(e.agentId),{agentId:e.agentId,stoppedRunning:!1};const t=(0,u.normalizeAgentSnapshot)(e.agent,this.serverId),s=n.useSessionStore.getState().sessions[this.serverId],o=s?.agents.get(t.id)??s?.agentDetails.get(t.id),c=o?.workspaceId??Array.from(s?.workspaces.values()??[]).find(e=>!0!==s?.serverInfo?.features?.workspaceMultiplicity&&e.workspaceDirectory===t.cwd)?.id,p=this.accept(Object.assign({},t,{workspaceId:t.workspaceId??c,projectPlacement:(0,l.resolveProjectPlacement)({projectPlacement:e.project,cwd:t.cwd})??o?.projectPlacement}));return p.archivedAt&&(0,v.clearArchiveAgentPending)({queryClient:h.queryClient,serverId:this.serverId,agentId:p.id}),this.replacePendingPermissions(p),n.useSessionStore.getState().setAgentLastActivity(p.id,p.lastActivityAt),{agentId:p.id,stoppedRunning:"open"===o?.turn.phase&&"idle"===p.turn.phase,agent:p}}replaceFetched(e){const{agents:t,pendingPermissions:o}=(0,c.buildAgentDirectoryState)({serverId:this.serverId,entries:e}),u=n.useSessionStore.getState(),l=u.sessions[this.serverId]?.agents??new Map,p=new Map;for(const[e,n]of t){const t=l.get(e),o=y(t,n);p.set(e,t&&(0,s.default)(t,o)?t:o),n.archivedAt&&(0,v.clearArchiveAgentPending)({queryClient:h.queryClient,serverId:this.serverId,agentId:e})}return u.setAgents(this.serverId,p),u.setAgentDetails(this.serverId,e=>{let t=null;for(const s of p.keys())e.has(s)&&(t??=new Map(e),t.delete(s));return t??e}),u.setAgentLastActivityBatch(new Map(Array.from(p.values(),e=>[e.id,e.lastActivityAt]))),u.setPendingPermissions(this.serverId,new Map(o)),u.setHasHydratedAgents(this.serverId,!0),p}replacePendingPermissions(e){const t=new Map(n.useSessionStore.getState().sessions[this.serverId]?.pendingPermissions);for(const[s,n]of t)n.agentId===e.id&&t.delete(s);for(const s of e.pendingPermissions){const n=(0,u.derivePendingPermissionKey)(e.id,s);t.set(n,{key:n,agentId:e.id,request:s})}n.useSessionStore.getState().setPendingPermissions(this.serverId,t)}removeFromDirectory(e){const t=n.useSessionStore.getState(),s=f(e);(0,v.clearArchiveAgentPending)({queryClient:h.queryClient,serverId:this.serverId,agentId:e}),t.setAgents(this.serverId,s),t.setAgentDetails(this.serverId,s),t.setQueuedMessages(this.serverId,s),t.setInitializingAgents(this.serverId,s),t.setPendingPermissions(this.serverId,t=>{const s=new Map(t);for(const[t,n]of s)n.agentId===e&&s.delete(t);return s.size===t.size?t:s}),n.useSessionStore.setState(t=>{if(!t.agentLastActivity.has(e))return t;const s=new Map(t.agentLastActivity);return s.delete(e),Object.assign({},t,{agentLastActivity:s})}),I.useDraftStore.getState().clearDraftInput({draftKey:(0,p.buildDraftStoreKey)({serverId:this.serverId,agentId:e})});const o=(0,A.getInitKey)(this.serverId,e);(0,A.getInitDeferred)(o)&&(0,A.rejectInitDeferred)(o,new Error("Agent was removed during initialization"))}remove(e){this.removeFromDirectory(e);const t=n.useSessionStore.getState(),s=f(e);t.setAgentTimelineCursor(this.serverId,s),t.setAgentAuthoritativeHistoryApplied(this.serverId,e,!1),t.setAgentStreamTail(this.serverId,s),t.clearAgentStreamHead(this.serverId,e)}archive(e,t){let s=null;return n.useSessionStore.getState().setAgents(this.serverId,n=>{const o=n.get(e);if(!o)return n;s=Object.assign({},o,{turn:{phase:"idle",cancellationRequestId:null},archivedAt:new Date(t)});const c=new Map(n);return c.set(e,s),c}),s}applyTurn(e,t){const s=Array.isArray(t)?t:[t];let o=null;return n.useSessionStore.getState().setAgents(this.serverId,t=>{const n=t.get(e);if(!n)return t;const c=s.reduce(S.reduceTurnLiveness,n.turn);if(c===n.turn)return t;o=Object.assign({},n,{turn:c});const u=new Map(t);return u.set(e,o),u}),o}}},3602,[533,3420,3598,3603,3595,3599,3593,848,3537,3604,3611,3439]);
|
|
15248
|
+
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.buildAgentDirectoryState=function(s){const o=new Map,c=new Map;for(const p of s.entries){const P=(0,n.normalizeAgentSnapshot)(p.agent,s.serverId),l=(0,t.resolveProjectPlacement)({projectPlacement:p.project,cwd:P.cwd}),u=Object.assign({},P,{projectPlacement:l});o.set(u.id,u);for(const t of u.pendingPermissions){const s=(0,n.derivePendingPermissionKey)(u.id,t);c.set(s,{key:s,agentId:u.id,request:t})}}return{agents:o,pendingPermissions:c}};var n=r(d[0]),t=r(d[1])},3603,[3595,3599]);
|
|
15249
15249
|
__d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),_e.flushDraftPersistStorage=function(){return w?.flush()??Promise.resolve()},Object.defineProperty(_e,"useDraftStore",{enumerable:!0,get:function(){return K}});var t,e=r(d[0]),s=r(d[1]),n=r(d[2]),c=(t=n)&&t.__esModule?t:{default:t},o=r(d[3]),f=r(d[4]),l=r(d[5]),u=r(d[6]),y=r(d[7]),p=r(d[8]),D=r(d[9]),h=r(d[10]),v=r(d[11]),S=r(d[12]);let I=!1;const w=(0,v.createDraftPersistStorage)((0,S.createValidatedPersistStorage)(c.default,h.PersistedDraftStoreSchema));function b(t){return{input:{text:t.draft.text,attachments:t.draft.attachments.map(D.normalizeComposerAttachment)},lifecycle:t.lifecycle,updatedAt:Date.now(),version:(t.previousVersion??0)+1}}const O=async t=>{if(0===t.length)return[];return(await Promise.all(t.map(async t=>{if((0,D.isAttachmentMetadata)(t))return t;if(!(0,D.isLegacyDraftImage)(t))return null;try{return t.uri.startsWith("data:")?await(0,f.persistAttachmentFromDataUrl)({dataUrl:t.uri,mimeType:t.mimeType}):await(0,f.persistAttachmentFromFileUri)({uri:t.uri,mimeType:t.mimeType})}catch(e){return console.warn("[DraftStore] Failed to migrate legacy draft attachment",{uri:t.uri,error:e}),null}}))).filter(t=>null!==t)};async function A(){I=!1;const t=Date.now();K.setState(e=>{const s=(0,D.pruneFinalizedDraftRecords)({drafts:e.drafts,nowMs:t});return s===e.drafts?e:Object.assign({},e,{drafts:s})});const e=new Set;for(const t of K.getState().collectActiveAttachmentIds())e.add(t);for(const t of(0,l.collectRetainedAttachmentIds)())e.add(t);const s=u.useCreateFlowStore.getState().pendingByDraftId;for(const t of Object.values(s))if("active"===t.lifecycle&&t.images)for(const s of t.images)e.add(s.id);const n=y.useSessionStore.getState().sessions;for(const t of Object.values(n))M(t,e),j(t.agentStreamTail,e),j(t.agentStreamHead,e);const c=p.useWorkspaceAttachmentsStore.getState().attachmentsByScope;for(const t of Object.values(c))for(const s of t)"browser_element"===s.kind&&s.attachment.screenshot&&e.add(s.attachment.screenshot.id);try{await(0,f.garbageCollectAttachments)({referencedIds:e})}catch(t){console.warn("[DraftStore] Attachment garbage collection failed",t)}}function M(t,e){for(const s of t.queuedMessages.values())for(const t of s)for(const s of t.attachments)"image"===s.kind&&e.add(s.metadata.id)}function j(t,e){for(const s of t.values())for(const t of s)if("user_message"===t.kind)for(const s of t.images??[])e.add(s.id)}function R(){I||(I=!0,"function"!=typeof queueMicrotask?setTimeout(()=>{A()},0):queueMicrotask(()=>{A()}))}async function F(){const t=K.getState(),e=Object.entries(t.drafts).filter(([,t])=>"active"===t.lifecycle&&!(0,D.isCanonicalDraftInput)(t.input)).map(([t])=>t);for(const s of e)try{await t.hydrateDraftInput({draftKey:s})}catch(t){console.warn("[DraftStore] Failed to migrate draft during startup",{draftKey:s,error:t})}}const K=(0,e.create)()((0,s.persist)((t,e)=>({drafts:{},createModalDraft:null,attachmentFocusRequestByDraftKey:{},getDraftInput:t=>{const s=e().drafts[t];return(0,D.toDraftInputIfReady)(s)},hydrateDraftInput:async({draftKey:s})=>{const n=e().drafts[s];if(!n)return;if("active"!==n.lifecycle)return;const c=(0,D.toDraftInputIfReady)(n);if(c)return c;const o=await(0,h.migrateDraftInput)({rawInput:n.input},{migrateLegacyImages:O});return t(t=>{const e=t.drafts[s];return e&&e.version===n.version?{drafts:Object.assign({},t.drafts,{[s]:b({draft:o,lifecycle:e.lifecycle,previousVersion:e.version})})}:t}),R(),o},saveDraftInput:({draftKey:e,draft:s})=>{t(t=>{const n=t.drafts[e];return{drafts:Object.assign({},t.drafts,{[e]:b({draft:s,lifecycle:"active",previousVersion:n?.version})})}}),R()},editDraftText:({draftKey:e,text:s})=>{t(t=>{const n=t.drafts[e],c=(0,D.editDraftRecordText)(n,s,Date.now());return c===n?t:{drafts:Object.assign({},t.drafts,{[e]:c})}})},markDraftLifecycle:({draftKey:e,lifecycle:s})=>{t(t=>{const n=t.drafts[e];return n&&n.lifecycle!==s?{drafts:Object.assign({},t.drafts,{[e]:Object.assign({},n,{lifecycle:s,updatedAt:Date.now(),version:n.version+1})})}:t}),R()},clearDraftInput:({draftKey:e,lifecycle:s})=>{t(t=>{const n=t.drafts[e];if(!n)return t;const c=(0,D.applyClearDraftRecord)({record:n,lifecycle:s,nowMs:Date.now()});if(c)return{drafts:Object.assign({},t.drafts,{[e]:c})};const o=Object.assign({},t.drafts);return delete o[e],{drafts:o}}),R()},attachWorkspaceFile:async({draftKey:s,attachment:n})=>{await e().hydrateDraftInput({draftKey:s}),t(t=>{const e=t.drafts[s],c=(0,D.toDraftInputIfReady)(e)??{text:"",attachments:[]};return{drafts:Object.assign({},t.drafts,{[s]:b({draft:Object.assign({},c,{attachments:(0,o.appendWorkspaceFileAttachment)(c.attachments,n)}),lifecycle:"active",previousVersion:e?.version})}),attachmentFocusRequestByDraftKey:Object.assign({},t.attachmentFocusRequestByDraftKey,{[s]:(t.attachmentFocusRequestByDraftKey[s]??0)+1})}}),R()},getCreateModalDraft:()=>{const t=e().createModalDraft;return(0,D.toDraftInputIfReady)(t)??null},saveCreateModalDraft:e=>{t(t=>e?{createModalDraft:b({draft:e,lifecycle:"active",previousVersion:t.createModalDraft?.version})}:{createModalDraft:null}),R()},collectActiveAttachmentIds:()=>Array.from((0,D.collectReferencedAttachmentIdsFromState)(e()).values())}),{name:"paseo-drafts",version:D.DRAFT_STORE_VERSION,storage:w,partialize:({drafts:t,createModalDraft:e})=>({drafts:t,createModalDraft:e}),migrate:t=>(0,h.migratePersistedState)(t,{migrateLegacyImages:O,nowMs:Date.now()}),onRehydrateStorage:()=>()=>{F(),R()}}))},3604,[3421,3424,884,3576,3585,3586,3605,3420,3606,3607,3609,3610,3555]);
|
|
15250
15250
|
__d(function(g,_r,_i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),_e.isActiveCreateFlowForDraft=function(e){const t=e.draftId?.trim();return Boolean(t&&e.pending?.draftId===t&&e.pending.serverId===e.serverId&&"active"===e.pending.lifecycle)},Object.defineProperty(_e,"useCreateFlowStore",{enumerable:!0,get:function(){return f}});var e,t=_r(d[0]),r=(e=t)&&e.__esModule?e:{default:e};function n(e){var t=i(e,"string");return"symbol"==typeof t?t:t+""}function i(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}const f=(0,_r(d[1]).create)((e,t)=>({pendingByDraftId:{},setPending:t=>e(e=>({pendingByDraftId:Object.assign({},e.pendingByDraftId,{[t.draftId]:Object.assign({},t,{lifecycle:"active"})})})),trySetPending:e=>{const r=t().pendingByDraftId[e.draftId];return(r?.serverId!==e.serverId||"abandoned"===r.lifecycle)&&(t().setPending(e),!0)},updateAgentId:({draftId:t,agentId:r})=>e(e=>{const n=e.pendingByDraftId[t];return n&&n.agentId!==r?{pendingByDraftId:Object.assign({},e.pendingByDraftId,{[t]:Object.assign({},n,{agentId:r})})}:e}),markLifecycle:({draftId:t,lifecycle:r,errorMessage:n})=>e(e=>{const i=e.pendingByDraftId[t];return i&&i.lifecycle!==r?{pendingByDraftId:Object.assign({},e.pendingByDraftId,{[t]:Object.assign({},i,{lifecycle:r,errorMessage:n})})}:e}),rekeyDraft:({fromDraftId:t,toDraftId:i})=>e(e=>{const f=e.pendingByDraftId[t];if(!f)return e;if(t===i)return e;const c=e.pendingByDraftId,s=(0,r.default)(c,[t].map(n));return{pendingByDraftId:Object.assign({},s,{[i]:Object.assign({},f,{draftId:i})})}}),clear:({draftId:t})=>e(e=>{if(!e.pendingByDraftId[t])return e;const i=e.pendingByDraftId;return{pendingByDraftId:(0,r.default)(i,[t].map(n))}}),clearByAgent:({serverId:t,agentId:r})=>e(e=>{const n=Object.fromEntries(Object.entries(e.pendingByDraftId).filter(([,e])=>"sent"!==e.lifecycle||e.serverId!==t||e.agentId!==r));return Object.keys(n).length===Object.keys(e.pendingByDraftId).length?e:{pendingByDraftId:n}}),clearAll:()=>e({pendingByDraftId:{}})}))},3605,[35,3421]);
|
|
15251
15251
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.buildWorkspaceAttachmentScopeKey=p,e.buildDraftWorkspaceAttachmentScopeKey=h,e.appendWorkspaceAttachment=k,Object.defineProperty(e,"useWorkspaceAttachmentsStore",{enumerable:!0,get:function(){return y}}),e.useWorkspaceAttachmentScopeKey=function(c){const n=(0,t.c)(6),o="draft"===c.kind,s=o?c.draftId:"",u=o?"":c.serverId,f=o?void 0:c.workspaceId,l=o?"":c.cwd;let k;t:{if(o){let t;n[0]!==s?(t=h(s),n[0]=s,n[1]=t):t=n[1],k=t;break t}let t;n[2]!==l||n[3]!==u||n[4]!==f?(t=p({serverId:u,workspaceId:f,cwd:l}),n[2]=l,n[3]=u,n[4]=f,n[5]=t):t=n[5],k=t}return k},e.useDraftWorkspaceAttachmentScopeKey=function(c){const n=(0,t.c)(4);let o;n[0]!==c?(o=c?.trim()??"",n[0]=c,n[1]=o):o=n[1];const s=o;let u;n[2]!==s?(u=s?h(s):"",n[2]=s,n[3]=u):u=n[3];return u},e.useWorkspaceAttachments=function(c){const n=(0,t.c)(2);let s;n[0]!==c?(s=t=>t.attachmentsByScope[c]??o,n[0]=c,n[1]=s):s=n[1];return y(s)},e.collectWorkspaceAttachmentsForScopes=S,e.useWorkspaceAttachmentsForScopes=function(c){const o=(0,t.c)(5);let s;o[0]!==c?(s=(c??[]).map(_).filter(Boolean),o[0]=c,o[1]=s):s=o[1];const u=s,p=y((0,n.useShallow)(B));let h;o[2]!==p||o[3]!==u?(h=S({attachmentsByScope:p,scopeKeys:u}),o[2]=p,o[3]=u,o[4]=h):h=o[4];return h},e.resetWorkspaceAttachmentsStore=function(){y.setState({attachmentsByScope:{}})};var t=r(d[0]);r(d[1]);var c=r(d[2]),n=r(d[3]);const o=[];function s(t){return encodeURIComponent(t.trim())}function u(t){const c=t.trim();return"/"===c?c:c.replace(/\/+$/,"")}function p(t){const c=t.workspaceId?.trim(),n=c?`workspace=${s(c)}`:`cwd=${s(u(t.cwd))}`;return["workspace-attachments",`server=${s(t.serverId)}`,n].join(":")}function h(t){return["workspace-attachments",`draft=${s(t)}`].join(":")}function f(t,c){return t===c||t.length===c.length&&t.every((t,n)=>t===c[n])}function l(t){return"chat_history"!==t.kind&&"forge.change_request_comment"!==t.kind&&"forge.change_request_review"!==t.kind&&"forge.change_request_check"!==t.kind&&"github.pull_request_comment"!==t.kind&&"github.pull_request_review"!==t.kind&&"github.pull_request_check"!==t.kind?null:JSON.stringify({kind:t.kind,id:t.id})}function k(t,c){const n=l(c);if(null===n)return[...t,c];return[...t.filter(t=>l(t)!==n),c]}const y=(0,c.create)()(t=>({attachmentsByScope:{},setWorkspaceAttachments:({scopeKey:c,attachments:n})=>{t(t=>{if(f(t.attachmentsByScope[c]??o,n))return t;if(0===n.length){if(!t.attachmentsByScope[c])return t;const n=Object.assign({},t.attachmentsByScope);return delete n[c],{attachmentsByScope:n}}return{attachmentsByScope:Object.assign({},t.attachmentsByScope,{[c]:n})}})},addWorkspaceAttachment:({scopeKey:c,attachment:n})=>{t(t=>{const s=t.attachmentsByScope[c]??o,u=k(s,n);return f(s,u)?t:{attachmentsByScope:Object.assign({},t.attachmentsByScope,{[c]:u})}})},clearWorkspaceAttachments:({scopeKey:c})=>{t(t=>{if(!t.attachmentsByScope[c])return t;const n=Object.assign({},t.attachmentsByScope);return delete n[c],{attachmentsByScope:n}})}}));function S(t){const c=[];for(const n of t.scopeKeys){const s=n.trim();s&&c.push(...t.attachmentsByScope[s]??o)}return c}function B(t){return t.attachmentsByScope}function _(t){return t.trim()}},3606,[453,36,3421,3417]);
|
|
@@ -16007,7 +16007,7 @@ __d(function(g,r,i,a,m,e,d){"use strict";function o(o){return(o.modes??[]).map(o
|
|
|
16007
16007
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.resolveProviderDiscoveredModels=function({serverId:s,provider:l,currentModels:c,providerSnapshotRefreshing:t,previousCache:n}){const v=(0,o.filterSelectableModels)(c??null)??[];if(v.length>0){return{models:v,cache:{serverId:s,provider:l,models:v}}}if(t&&n?.serverId===s&&n.provider===l)return{models:n.models,cache:n};return{models:[],cache:n}};var o=r(d[0])},4352,[4353]);
|
|
16008
16008
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.findModelByReference=function(l,n){if(!l||0===l.length)return null;const t=n.trim();return t?l.find(l=>l.id===t)??l.find(l=>l.aliases?.includes(t))??null:null},e.filterSelectableModels=function(l){return l?.filter(l=>!1!==l.isSelectable)??null}},4353,[]);
|
|
16009
16009
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"useProviderSettingsStore",{enumerable:!0,get:function(){return t}});const t=(0,r(d[0]).create)()(t=>({serverId:null,provider:null,overlayParentLayer:0,visible:!1,open:({serverId:n,provider:o,overlayParentLayer:l=0})=>{t({serverId:n,provider:o,overlayParentLayer:l,visible:!0})},close:()=>{t({visible:!1})}}))},4354,[3421]);
|
|
16010
|
-
__d(function(g,r,i,a,m,_e,d){"use strict";const e=["workspaceId"];Object.defineProperty(_e,'__esModule',{value:!0}),_e.WorkspaceSetupDialog=function(){const{t:t}=(0,w.useTranslation)(),o=(0,v.useToast)(),k=(0,x.useWorkspaceSetupStore)(e=>e.pendingWorkspaceSetup),L=(0,x.useWorkspaceSetupStore)(e=>e.clearWorkspaceSetup),K=(0,u.useCallback)((e,t)=>{(0,l.getHostRuntimeStore)().acceptWorkspaceSnapshots(e,Array.from(t))},[]),U=(0,C.useSessionStore)(e=>e.setHasHydratedWorkspaces),[Z,B]=(0,u.useState)(null),[G,J]=(0,u.useState)(null),[Q,X]=(0,u.useState)(null),Y=k?.serverId??"",ee=(0,C.useSessionStore)(e=>!0===e.sessions[Y]?.serverInfo?.features?.forgeSearch),te=k?.sourceDirectory??"",re=k?.displayName?.trim()??"",oe=G,ne=(0,l.useHostRuntimeClient)(Y),se=(0,l.useHostRuntimeIsConnected)(Y),ae=(0,b.useAgentInputDraft)({draftKey:`workspace-setup:${Y}:${te}`,composer:H({serverId:Y,workspaceDirectory:oe?.workspaceDirectory,sourceDirectory:te,pendingWorkspaceSetup:k})}),ce=ae.composerState;if(!ce&&k)throw new Error(t("workspaceSetup.errors.composerStateRequired"));const{icon:ie}=(0,D.useProjectIcon)({serverId:Y,cwd:te}),de=P(ie);(0,u.useEffect)(()=>{B(null),J(null),X(null)},[k?.creationId]);const pe=(0,u.useCallback)(()=>{L()},[L]),le=(0,u.useCallback)((e,t)=>{k&&(L(),"agent"!==t.kind?(0,R.navigateToWorkspace)({serverId:k.serverId,workspaceId:e,target:t}):(0,O.navigateToAgent)({serverId:k.serverId,agentId:t.agentId}))},[L,k]),ue=(0,u.useCallback)(()=>{if(!ne||!se)throw new Error(t("workspaceSetup.errors.hostDisconnected"));return ne},[ne,se,t]),ge=(0,u.useCallback)(async e=>{if(!k)throw new Error(t("workspaceSetup.errors.pendingRequired"));if(G&&!e.agent)return G;const o=ue(),n=await $({creationMethod:k.creationMethod,creationId:k.creationId,worktreeSlug:k.worktreeSlug,connectedClient:o,input:e});if(n.error||!n.workspace)throw new Error(n.error??N(k.creationMethod,t));n.agent&&e.onAgentCreated?.(n.agent);const s=(0,C.normalizeWorkspaceDescriptor)(n.workspace);return K(k.serverId,[s]),"open_project"===k.creationMethod&&U(k.serverId,!0),J(s),s},[G,K,k,U,t,ue]),me=(0,u.useCallback)(()=>{const e=x.useWorkspaceSetupStore.getState().pendingWorkspaceSetup;return e?.serverId===k?.serverId&&e?.sourceDirectory===k?.sourceDirectory&&e?.creationMethod===k?.creationMethod},[k?.creationMethod,k?.serverId,k?.sourceDirectory]),ke=(0,u.useCallback)(async({text:s,attachments:c,cwd:p})=>{try{if(X("chat"),B(null),!ce)throw new Error(t("workspaceSetup.errors.composerStateRequired"));if(!ce.selectedProvider)throw new Error(t("workspaceSetup.errors.selectModel"));const o=(0,T.splitComposerAttachmentsForSubmit)(c,{format:(0,T.resolveComposerAttachmentSubmitFormat)({supportsForgeAttachments:ee})}),u=await(0,W.encodeImages)(o.images);if(!k)throw new Error(t("workspaceSetup.errors.pendingRequired"));let w;const S=V({composerState:ce,text:s,attachments:o.attachments,encodedImages:u??null,workspaceDirectory:p,workspaceId:"",provider:ce.selectedProvider}),h=(0,n.default)(S,e),f=await ge({cwd:p,attachments:c,agent:Object.assign({},h,{clientMessageId:`${k.creationId}:initial-message`}),onAgentCreated:e=>{w=e}});if(!w)throw new Error("The daemon did not create the requested agent");const I=w;if(!me())return;(0,l.getHostRuntimeStore)().acceptAgentSnapshot(Y,(0,j.applyLegacyDaemonWorkspaceOwnership)({serverId:Y,agent:(0,M.normalizeAgentSnapshot)(I,Y)})),le(f.id,{kind:"agent",agentId:I.id})}catch(e){const t=(0,_.toErrorMessage)(e);B(t),o.error(t)}finally{me()&&X(null)}},[ce,k,me,le,Y,ge,t,o,ee]),we=F({workspace:oe,displayName:re,sourceDirectory:te}),Se=(0,A.projectIconPlaceholderLabelFromDisplayName)(we).charAt(0).toUpperCase(),he=(0,u.useMemo)(()=>ce?Object.assign({},ce.agentControls,{disabled:null!==Q}):void 0,[ce,Q]),fe=(0,u.useMemo)(()=>(0,E.jsxs)(s.View,{style:q.subtitleRow,children:[(0,E.jsx)(I.ProjectIconView,{iconDataUri:de,initial:Se,projectViewKey:te,size:y.ICON_SIZE.md,textStyle:q.projectIconFallbackText}),(0,E.jsx)(c.Text,{style:q.projectTitle,numberOfLines:1,children:we})]}),[de,Se,te,we]),Ie=(0,u.useMemo)(()=>({title:t("workspaceSetup.title"),subtitle:fe}),[fe,t]);if(!k||!te)return null;return(0,E.jsxs)(S.AdaptiveModalSheet,{header:Ie,visible:!0,onClose:pe,snapPoints:z,testID:"workspace-setup-dialog",desktopMaxWidth:640,children:[(0,E.jsx)(h.FileDropZone,{style:q.section,children:(0,E.jsx)(p.KeyboardTranslateView,{children:(0,E.jsx)(f.Composer,{agentId:`workspace-setup:${Y}:${te}`,serverId:Y,isPaneFocused:!0,onSubmitMessage:ke,isSubmitLoading:"chat"===Q,blurOnSubmit:!0,textSource:ae.textSource,onChangeText:ae.editText,textReplacement:ae.textReplacement,attachments:ae.attachments,onChangeAttachments:ae.setAttachments,cwd:te,clearDraft:ae.clear,autoFocus:!0,commandDraftConfig:ce?.commandDraftConfig,agentControls:he,inputWrapperStyle:q.composerInputWrapper})})}),Z?(0,E.jsx)(c.Text,{style:q.errorText,children:Z}):null]})};var t,o=r(d[0]),n=(t=o)&&t.__esModule?t:{default:t},s=r(d[1]),c=r(d[2]),p=r(d[3]),l=r(d[4]),u=r(d[5]);r(d[6]),r(d[7]);var k=r(d[8]),w=r(d[9]),S=r(d[10]),h=r(d[11]),f=r(d[12]),I=r(d[13]),y=r(d[14]),v=r(d[15]),b=r(d[16]),D=r(d[17]),C=r(d[18]),x=r(d[19]),M=r(d[20]),j=r(d[21]),W=r(d[22]),_=r(d[23]),T=r(d[24]),A=r(d[25]),O=r(d[26]),R=r(d[27]),E=r(d[28]);function P(e){return e?`data:${e.mimeType};base64,${e.data}`:null}const z=["82%","94%"];function F({workspace:e,displayName:t,sourceDirectory:o}){return e?.name||e?.projectDisplayName||t||o.split(/[\\/]/).findLast(Boolean)||o}function H({serverId:e,workspaceDirectory:t,sourceDirectory:o,pendingWorkspaceSetup:n}){return{initialServerId:e||null,isVisible:null!==n,lockedWorkingDir:t||o||void 0}}async function $({creationMethod:e,connectedClient:t,creationId:o,worktreeSlug:n,input:s}){return t.createWorkspace({idempotencyKey:o,agent:s.agent,source:"create_worktree"===e?{kind:"worktree",cwd:s.cwd,worktreeSlug:n}:{kind:"directory",path:s.cwd}})}function N(e,t){return t("create_worktree"===e?"workspaceSetup.errors.failedCreateWorktree":"workspaceSetup.errors.failedOpenProject")}function V({composerState:e,text:t,attachments:o,encodedImages:n,workspaceDirectory:s,workspaceId:c,provider:p}){const l=e.modeOptions.map(e=>e.id),u=l.includes(e.selectedMode)?e.selectedMode:l[0]??"";return Object.assign({provider:p,cwd:s,workspaceId:c},""!==u?{modeId:u}:{},e.effectiveModelId?{model:e.effectiveModelId}:{},e.effectiveThinkingOptionId?{thinkingOptionId:e.effectiveThinkingOptionId}:{},t.trim()?{initialPrompt:t.trim()}:{},n&&n.length>0?{images:n}:{},o.length>0?{attachments:o}:{})}const q=k.StyleSheet.create(e=>({subtitleRow:{flexDirection:"row",alignItems:"center",gap:e.spacing[2],uni__dependencies:[0]},projectIconFallbackText:{fontSize:9},projectTitle:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,uni__dependencies:[0]},section:{gap:e.spacing[3],marginHorizontal:-e.spacing[6],marginVertical:-e.spacing[2],uni__dependencies:[0]},errorText:{fontSize:e.fontSize.base,color:e.colors.destructive,lineHeight:20,uni__dependencies:[0]},composerInputWrapper:{backgroundColor:e.colors.surface2,uni__dependencies:[0]}}))},4355,[35,895,896,4331,3466,36,234,146,56,853,3677,4356,4361,4100,305,893,4502,4102,3420,3532,3595,
|
|
16010
|
+
__d(function(g,r,i,a,m,_e,d){"use strict";const e=["workspaceId"];Object.defineProperty(_e,'__esModule',{value:!0}),_e.WorkspaceSetupDialog=function(){const{t:t}=(0,w.useTranslation)(),o=(0,v.useToast)(),k=(0,x.useWorkspaceSetupStore)(e=>e.pendingWorkspaceSetup),L=(0,x.useWorkspaceSetupStore)(e=>e.clearWorkspaceSetup),K=(0,u.useCallback)((e,t)=>{(0,l.getHostRuntimeStore)().acceptWorkspaceSnapshots(e,Array.from(t))},[]),U=(0,C.useSessionStore)(e=>e.setHasHydratedWorkspaces),[Z,B]=(0,u.useState)(null),[G,J]=(0,u.useState)(null),[Q,X]=(0,u.useState)(null),Y=k?.serverId??"",ee=(0,C.useSessionStore)(e=>!0===e.sessions[Y]?.serverInfo?.features?.forgeSearch),te=k?.sourceDirectory??"",re=k?.displayName?.trim()??"",oe=G,ne=(0,l.useHostRuntimeClient)(Y),se=(0,l.useHostRuntimeIsConnected)(Y),ae=(0,b.useAgentInputDraft)({draftKey:`workspace-setup:${Y}:${te}`,composer:H({serverId:Y,workspaceDirectory:oe?.workspaceDirectory,sourceDirectory:te,pendingWorkspaceSetup:k})}),ce=ae.composerState;if(!ce&&k)throw new Error(t("workspaceSetup.errors.composerStateRequired"));const{icon:ie}=(0,D.useProjectIcon)({serverId:Y,cwd:te}),de=P(ie);(0,u.useEffect)(()=>{B(null),J(null),X(null)},[k?.creationId]);const pe=(0,u.useCallback)(()=>{L()},[L]),le=(0,u.useCallback)((e,t)=>{k&&(L(),"agent"!==t.kind?(0,R.navigateToWorkspace)({serverId:k.serverId,workspaceId:e,target:t}):(0,O.navigateToAgent)({serverId:k.serverId,agentId:t.agentId}))},[L,k]),ue=(0,u.useCallback)(()=>{if(!ne||!se)throw new Error(t("workspaceSetup.errors.hostDisconnected"));return ne},[ne,se,t]),ge=(0,u.useCallback)(async e=>{if(!k)throw new Error(t("workspaceSetup.errors.pendingRequired"));if(G&&!e.agent)return G;const o=ue(),n=await $({creationMethod:k.creationMethod,creationId:k.creationId,worktreeSlug:k.worktreeSlug,connectedClient:o,input:e});if(n.error||!n.workspace)throw new Error(n.error??N(k.creationMethod,t));n.agent&&e.onAgentCreated?.(n.agent);const s=(0,C.normalizeWorkspaceDescriptor)(n.workspace);return K(k.serverId,[s]),"open_project"===k.creationMethod&&U(k.serverId,!0),J(s),s},[G,K,k,U,t,ue]),me=(0,u.useCallback)(()=>{const e=x.useWorkspaceSetupStore.getState().pendingWorkspaceSetup;return e?.serverId===k?.serverId&&e?.sourceDirectory===k?.sourceDirectory&&e?.creationMethod===k?.creationMethod},[k?.creationMethod,k?.serverId,k?.sourceDirectory]),ke=(0,u.useCallback)(async({text:s,attachments:c,cwd:p})=>{try{if(X("chat"),B(null),!ce)throw new Error(t("workspaceSetup.errors.composerStateRequired"));if(!ce.selectedProvider)throw new Error(t("workspaceSetup.errors.selectModel"));const o=(0,T.splitComposerAttachmentsForSubmit)(c,{format:(0,T.resolveComposerAttachmentSubmitFormat)({supportsForgeAttachments:ee})}),u=await(0,W.encodeImages)(o.images);if(!k)throw new Error(t("workspaceSetup.errors.pendingRequired"));let w;const S=V({composerState:ce,text:s,attachments:o.attachments,encodedImages:u??null,workspaceDirectory:p,workspaceId:"",provider:ce.selectedProvider}),h=(0,n.default)(S,e),f=await ge({cwd:p,attachments:c,agent:Object.assign({},h,{clientMessageId:`${k.creationId}:initial-message`}),onAgentCreated:e=>{w=e}});if(!w)throw new Error("The daemon did not create the requested agent");const I=w;if(!me())return;(0,l.getHostRuntimeStore)().acceptAgentSnapshot(Y,(0,j.applyLegacyDaemonWorkspaceOwnership)({serverId:Y,agent:(0,M.normalizeAgentSnapshot)(I,Y)})),le(f.id,{kind:"agent",agentId:I.id})}catch(e){const t=(0,_.toErrorMessage)(e);B(t),o.error(t)}finally{me()&&X(null)}},[ce,k,me,le,Y,ge,t,o,ee]),we=F({workspace:oe,displayName:re,sourceDirectory:te}),Se=(0,A.projectIconPlaceholderLabelFromDisplayName)(we).charAt(0).toUpperCase(),he=(0,u.useMemo)(()=>ce?Object.assign({},ce.agentControls,{disabled:null!==Q}):void 0,[ce,Q]),fe=(0,u.useMemo)(()=>(0,E.jsxs)(s.View,{style:q.subtitleRow,children:[(0,E.jsx)(I.ProjectIconView,{iconDataUri:de,initial:Se,projectViewKey:te,size:y.ICON_SIZE.md,textStyle:q.projectIconFallbackText}),(0,E.jsx)(c.Text,{style:q.projectTitle,numberOfLines:1,children:we})]}),[de,Se,te,we]),Ie=(0,u.useMemo)(()=>({title:t("workspaceSetup.title"),subtitle:fe}),[fe,t]);if(!k||!te)return null;return(0,E.jsxs)(S.AdaptiveModalSheet,{header:Ie,visible:!0,onClose:pe,snapPoints:z,testID:"workspace-setup-dialog",desktopMaxWidth:640,children:[(0,E.jsx)(h.FileDropZone,{style:q.section,children:(0,E.jsx)(p.KeyboardTranslateView,{children:(0,E.jsx)(f.Composer,{agentId:`workspace-setup:${Y}:${te}`,serverId:Y,isPaneFocused:!0,onSubmitMessage:ke,isSubmitLoading:"chat"===Q,blurOnSubmit:!0,textSource:ae.textSource,onChangeText:ae.editText,textReplacement:ae.textReplacement,attachments:ae.attachments,onChangeAttachments:ae.setAttachments,cwd:te,clearDraft:ae.clear,autoFocus:!0,commandDraftConfig:ce?.commandDraftConfig,agentControls:he,inputWrapperStyle:q.composerInputWrapper})})}),Z?(0,E.jsx)(c.Text,{style:q.errorText,children:Z}):null]})};var t,o=r(d[0]),n=(t=o)&&t.__esModule?t:{default:t},s=r(d[1]),c=r(d[2]),p=r(d[3]),l=r(d[4]),u=r(d[5]);r(d[6]),r(d[7]);var k=r(d[8]),w=r(d[9]),S=r(d[10]),h=r(d[11]),f=r(d[12]),I=r(d[13]),y=r(d[14]),v=r(d[15]),b=r(d[16]),D=r(d[17]),C=r(d[18]),x=r(d[19]),M=r(d[20]),j=r(d[21]),W=r(d[22]),_=r(d[23]),T=r(d[24]),A=r(d[25]),O=r(d[26]),R=r(d[27]),E=r(d[28]);function P(e){return e?`data:${e.mimeType};base64,${e.data}`:null}const z=["82%","94%"];function F({workspace:e,displayName:t,sourceDirectory:o}){return e?.name||e?.projectDisplayName||t||o.split(/[\\/]/).findLast(Boolean)||o}function H({serverId:e,workspaceDirectory:t,sourceDirectory:o,pendingWorkspaceSetup:n}){return{initialServerId:e||null,isVisible:null!==n,lockedWorkingDir:t||o||void 0}}async function $({creationMethod:e,connectedClient:t,creationId:o,worktreeSlug:n,input:s}){return t.createWorkspace({idempotencyKey:o,agent:s.agent,source:"create_worktree"===e?{kind:"worktree",cwd:s.cwd,worktreeSlug:n}:{kind:"directory",path:s.cwd}})}function N(e,t){return t("create_worktree"===e?"workspaceSetup.errors.failedCreateWorktree":"workspaceSetup.errors.failedOpenProject")}function V({composerState:e,text:t,attachments:o,encodedImages:n,workspaceDirectory:s,workspaceId:c,provider:p}){const l=e.modeOptions.map(e=>e.id),u=l.includes(e.selectedMode)?e.selectedMode:l[0]??"";return Object.assign({provider:p,cwd:s,workspaceId:c},""!==u?{modeId:u}:{},e.effectiveModelId?{model:e.effectiveModelId}:{},e.effectiveThinkingOptionId?{thinkingOptionId:e.effectiveThinkingOptionId}:{},t.trim()?{initialPrompt:t.trim()}:{},n&&n.length>0?{images:n}:{},o.length>0?{attachments:o}:{})}const q=k.StyleSheet.create(e=>({subtitleRow:{flexDirection:"row",alignItems:"center",gap:e.spacing[2],uni__dependencies:[0]},projectIconFallbackText:{fontSize:9},projectTitle:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,uni__dependencies:[0]},section:{gap:e.spacing[3],marginHorizontal:-e.spacing[6],marginVertical:-e.spacing[2],uni__dependencies:[0]},errorText:{fontSize:e.fontSize.base,color:e.colors.destructive,lineHeight:20,uni__dependencies:[0]},composerInputWrapper:{backgroundColor:e.colors.surface2,uni__dependencies:[0]}}))},4355,[35,895,896,4331,3466,36,234,146,56,853,3677,4356,4361,4100,305,893,4502,4102,3420,3532,3595,3601,3584,3571,3574,3650,3761,3654,279]);
|
|
16011
16011
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.FileDropZone=function({children:t,disabled:S=!1,style:k}){const x=(0,n.useSharedValue)(!1),D=(0,n.useSharedValue)(!1),b=(0,n.useSharedValue)(!1),f=(0,l.useRef)(null),j=(0,l.useCallback)(s=>(f.current=s,b.value=!0,()=>{f.current===s&&(f.current=null,b.value=!1)}),[b]),y=(0,l.useCallback)(()=>f.current?.()??null,[]),V=(0,l.useMemo)(()=>({isDragging:x,suppressed:D,hasSink:b,registerSink:j}),[x,D,b,j]),C=(0,p.useDropListeners)({isDragging:x,suppressed:D,hasSink:b,getSink:y,disabled:S}),F=(0,l.useMemo)(()=>[v.target,k],[k]);if(!u.isWeb)return(0,h.jsx)(o.FileDropContext.Provider,{value:V,children:(0,h.jsx)(s.View,{style:F,children:t})});return(0,h.jsx)(o.FileDropContext.Provider,{value:V,children:(0,h.jsxs)(s.View,{ref:C,style:F,children:[t,(0,h.jsx)(c.FileDropBackdrop,{})]})})};var s=r(d[0]),l=r(d[1]);r(d[2]);var t=r(d[3]),n=r(d[4]),u=r(d[5]),o=r(d[6]),c=r(d[7]),p=r(d[8]),h=r(d[9]);const v=t.StyleSheet.create({target:{position:"relative"}})},4356,[895,36,146,56,898,880,4357,4358,4359,279]);
|
|
16012
16012
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"FileDropContext",{enumerable:!0,get:function(){return n}}),e.useFileDropContext=function(){return(0,t.useContext)(n)};var t=r(d[0]);const n=(0,t.createContext)(null)},4357,[36]);
|
|
16013
16013
|
__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.FileDropBackdrop=function(){const e=(0,t.c)(11),{t:o}=(0,p.useTranslation)(),l=(0,h.useFileDropContext)(),_=l?.isDragging,b=l?.suppressed,w=l?.hasSink,j=(0,c.useAnimatedStyle)((function({_worklet_2693010592129_init_data:e,isDragging:n,hasSink:s,suppressed:t,withTiming:o}){const l=function(){return{opacity:o(n?.value&&s?.value&&!t?.value?1:0,{duration:150})}};return l.__closure={isDragging:n,hasSink:s,suppressed:t,withTiming:o},l.__workletHash=2693010592129,l.__initData=e,l})({_worklet_2693010592129_init_data:k,isDragging:_,hasSink:w,suppressed:b,withTiming:c.withTiming}));let x;e[0]!==j?(x=[y.overlay,j],e[0]=j,e[1]=x):x=e[1];const T=x;if(!l)return null;let F,O,z,C,I;e[2]===Symbol.for("react.memo_cache_sentinel")?(F=(0,f.jsx)(s.View,{style:D.backdrop}),e[2]=F):F=e[2];e[3]===Symbol.for("react.memo_cache_sentinel")?(O=(0,f.jsx)(v,{size:32,uniProps:S}),e[3]=O):O=e[3];e[4]!==o?(z=o("composer.attachments.dropFilesHere"),e[4]=o,e[5]=z):z=e[5];e[6]!==z?(C=(0,f.jsxs)(s.View,{style:D.content,children:[O,(0,f.jsx)(n.Text,{style:D.text,children:z})]}),e[6]=z,e[7]=C):C=e[7];e[8]!==T||e[9]!==C?(I=(0,f.jsxs)(u.default.View,{style:T,pointerEvents:"none",children:[F,C]}),e[8]=T,e[9]=C,e[10]=I):I=e[10];return I};var n=r(d[0]),s=r(d[1]),t=r(d[2]);r(d[3]),r(d[4]);var o=e(r(d[5])),l=r(d[6]),c=r(d[7]),u=e(c),_=r(d[8]);r(d[9]);var p=r(d[10]),h=r(d[11]),f=r(d[12]);const v=(0,l.withUnistyles)(_.Upload),S=e=>({color:e.colors.primary}),k={code:"function fileDropBackdropTsx1(){const{isDragging,hasSink,suppressed,withTiming}=this.__closure;var _isDragging,_hasSink,_suppressed;const active=((_isDragging=isDragging)===null||_isDragging===void 0?void 0:_isDragging.value)&&((_hasSink=hasSink)===null||_hasSink===void 0?void 0:_hasSink.value)&&!((_suppressed=suppressed)!==null&&_suppressed!==void 0&&_suppressed.value);return{opacity:withTiming(active?1:0,{duration:150})};}"};const y=o.default.create({overlay:Object.assign({},o.default.absoluteFillObject,{alignItems:"center",justifyContent:"center",zIndex:1e3})}),D=l.StyleSheet.create(e=>({backdrop:Object.assign({},l.StyleSheet.absoluteFillObject,{backgroundColor:e.colors.surface0,opacity:.7,uni__dependencies:[0]}),content:{alignItems:"center",gap:e.spacing[2],uni__dependencies:[0]},text:{fontSize:e.fontSize.base,fontWeight:e.fontWeight.medium,color:e.colors.foreground,uni__dependencies:[0]}}))},4358,[896,895,453,146,234,59,56,898,1217,36,853,4357,279]);
|
|
@@ -16249,7 +16249,7 @@ __d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{v
|
|
|
16249
16249
|
__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(){}},4594,[453,36,3561,4323,3881,4595,4596,4262,279]);
|
|
16250
16250
|
__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},4595,[853,3561,3563]);
|
|
16251
16251
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.ensurePanelsRegistered=function(){if(v)return;(0,R.registerPanel)(l.draftPanelRegistration),(0,R.registerPanel)(_.newTabPanelRegistration),(0,R.registerPanel)(t.agentPanelRegistration),(0,R.registerPanel)(c.providerSubagentPanelRegistration),(0,R.registerPanel)(u.setupPanelRegistration),(0,R.registerPanel)(f.terminalPanelRegistration),(0,R.registerPanel)(n.browserPanelRegistration),(0,R.registerPanel)(P.filePanelRegistration),(0,R.registerPanel)(o.filesPanelRegistration),(0,R.registerPanel)(p.pullRequestPanelRegistration),(0,R.registerPanel)(s.commitDiffPanelRegistration),(0,R.registerPanel)(s.workingDiffPanelRegistration),(0,R.registerPanel)(s.changesTreePanelRegistration),(0,R.registerPanel)(b.pluginPanelRegistration),v=!0};var t=r(d[0]),n=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]),_=r(d[12]);let v=!1},4596,[4597,4732,4734,4738,4739,4838,4595,4839,4840,4875,4876,4877,4878]);
|
|
16252
|
-
__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=xe,Object.defineProperty(_e,"agentPanelRegistration",{enumerable:!0,get:function(){return we}}),_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,Z.useCreateFlowStore)((0,S.useShallow)(o));let c;n[3]!==a?(c=(0,U.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]),y=r(d[15]),v=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]),M=r(d[33]),V=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]),N=r(d[42]),U=r(d[43]),J=r(d[44]),G=r(d[45]),X=r(d[46]),Z=r(d[47]),Q=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]);function ue(e,t,n){if(!n)return null;const s=e.sessions[t];return s?.agents?.get(n)??s?.agentDetails?.get(n)??null}const ge={serverId:null,id:null,status:null,cwd:null,lastError:null,archivedAt:null,requiresAttention:!1,attentionReason:null};function pe(e,t,n){const s=ue(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,archivedAt:s.archivedAt??null,requiresAttention:s.requiresAttention??!1,attentionReason:s.attentionReason??null}:ge}function fe(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 he(e){const o=(0,s.c)(15),{message:c,onRetry:l}=e,{t:u}=(0,p.useTranslation)();let f,h,I,S,y,v;return o[0]!==u?(f=u("agentPanel.states.failedToLoad"),o[0]=u,o[1]=f):f=o[1],o[2]!==f?(h=(0,de.jsx)(n.Text,{style:Xe.errorText,children:f}),o[2]=f,o[3]=h):h=o[3],o[4]!==c?(I=(0,de.jsx)(n.Text,{style:Xe.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?(y=(0,de.jsx)(t.View,{style:Xe.errorAction,children:(0,de.jsx)(a.Button,{size:"sm",variant:"secondary",onPress:l,testID:"agent-load-error-retry",children:S})}),o[8]=l,o[9]=S,o[10]=y):y=o[10],o[11]!==h||o[12]!==I||o[13]!==y?(v=(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-load-error",children:(0,de.jsxs)(t.View,{style:Xe.errorContainer,children:[h,I,y]})}),o[11]=h,o[12]=I,o[13]=y,o[14]=v):v=o[14],v}function me(e){const{viewState:s,effectiveAgent:o,t:a,onRetryLoad:c}=e;return"not_found"===s.tag?(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-not-found",children:(0,de.jsx)(t.View,{style:Xe.errorContainer,children:(0,de.jsx)(n.Text,{style:Xe.errorText,children:a("agentPanel.states.notFound")})})}):"error"===s.tag?(0,de.jsx)(he,{message:s.message,onRetry:c}):"boot"!==s.tag&&o?null:(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-loading",children:(0,de.jsx)(t.View,{style:Xe.errorContainer,children:(0,de.jsx)(Ne,{size:"large",uniProps:Ue})})})}function Ie(e){return e?e.split(/[-_\s]+/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "):"Agent"}function Se(e){if("string"!=typeof e)return null;const t=e.trim();return t?"new agent"===t.toLowerCase()?null:t:null}function ye(e){const t=(0,oe.normalizeAgentSnapshot)(e.result.agent,e.serverId),n=(0,ae.applyLegacyDaemonWorkspaceOwnership)({serverId:e.serverId,agent:Object.assign({},t,{projectPlacement:e.result.project})}),s=Y.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,oe.derivePendingPermissionKey)(n.id,e);t.set(s,{key:s,agentId:n.id,request:e})}return t}),n}function ve(){const e=(0,s.c)(6),{serverId:t,workspaceId:n,target:o,openFileInWorkspace:a}=(0,L.usePaneContext)(),{isInteractive:c}=(0,L.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,de.jsx)(b.RetainedChatContent,{children:(0,de.jsx)(Fe,{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 Ae(){const e=(0,s.c)(13),{serverId:t,workspaceId:n,tabId:a,target:c,openFileInWorkspace:l,openImportSheet:u,retargetCurrentTab:p}=(0,L.usePaneContext)(),{isInteractive:f}=(0,L.usePaneFocus)();let h;(0,I.default)("draft"===c.kind,"DraftPanel requires draft target"),e[0]!==p||e[1]!==t?(h=e=>{const n=(0,oe.normalizeAgentSnapshot)(e,t),s=(0,ae.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 y;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?(y=(0,de.jsx)(G.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]=y):y=e[12],y}function xe(){const e=(0,s.c)(2),{target:t}=(0,L.usePaneContext)();if("draft"===t.kind){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=(0,de.jsx)(Ae,{}),e[0]=t):t=e[0],t}if("agent"===t.kind){let t;return e[1]===Symbol.for("react.memo_cache_sentinel")?(t=(0,de.jsx)(ve,{}),e[1]=t):t=e[1],t}(0,I.default)(!1,"AgentConversationPanel requires an agent or draft target")}const we=(0,K.definePanel)("agent",{component:xe,useDescriptor:function(e,t){const n=(0,s.c)(26);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,Y.selectAgentTurnPresentation)(s,e.agentId).isActive}},n[0]=t.serverId,n[1]=e.agentId,n[2]=o):o=n[2];const a=(0,Y.useSessionStore)((0,S.useShallow)(o)),c=a.provider;let l;n[3]!==a.title?(l=Se(a.title),n[3]=a.title,n[4]=l):l=n[4];const u=l;let p;n[5]!==t.serverId||n[6]!==c?(p=(0,F.getProviderIcon)(c,t.serverId),n[5]=t.serverId,n[6]=c,n[7]=p):p=n[7];const f=p,h=u??"";let I;n[8]!==c?(I=Ie(c),n[8]=c,n[9]=I):I=n[9];const y=`${I} agent`;let v;n[10]!==u||n[11]!==c?(v=u??`${Ie(c)} agent`,n[10]=u,n[11]=c,n[12]=v):v=n[12];const A=u?"ready":"loading";let x,w;return n[13]!==a.attentionReason||n[14]!==a.isTurnActive||n[15]!==a.pendingPermissionCount||n[16]!==a.requiresAttention||n[17]!==a.status?(x=a.status?(0,ce.deriveSidebarStateBucket)({status:a.isTurnActive?"running":a.status,pendingPermissionCount:a.pendingPermissionCount,requiresAttention:a.requiresAttention,attentionReason:a.attentionReason}):null,n[13]=a.attentionReason,n[14]=a.isTurnActive,n[15]=a.pendingPermissionCount,n[16]=a.requiresAttention,n[17]=a.status,n[18]=x):x=n[18],n[19]!==f||n[20]!==h||n[21]!==y||n[22]!==v||n[23]!==A||n[24]!==x?(w={label:h,subtitle:y,tooltip:v,titleState:A,icon:f,statusBucket:x},n[19]=f,n[20]=h,n[21]=y,n[22]=v,n[23]=A,n[24]=x,n[25]=w):w=n[25],w}});const Ce=[],be=[],ke=new Map,Pe=[];function je(e){return!!e.agentId&&Object.values(e.pendingByDraftId).some(t=>"sent"===t.lifecycle&&t.serverId===e.serverId&&t.agentId===e.agentId)}function Te(e){return e instanceof Error?e.message:String(e)}function Re(e){return/agent not found|not found/i.test(e)}function Fe(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 y=S,v=(0,o.useHosts)(),A=y??"",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]!==y?(k=e=>{if(!y||!I)return!1;const t=e.sessions[y];return Boolean(t?.agents.has(I)||t?.agentDetails.has(I))},t[4]=I,t[5]=y,t[6]=k):k=t[6];const P=(0,Y.useSessionStore)(k),j=y??null;let T;t[7]!==j||t[8]!==v?(T=j?v.find(e=>e.serverId===j)??null:null,t[7]=j,t[8]=v,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(!y||!x&&!P){let e;return t[14]!==O||t[15]!==D||t[16]!==W||t[17]!==_||t[18]!==f?(e=(0,de.jsx)($e,{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]!==y||t[24]!==x||t[25]!==w||t[26]!==a?(H=(0,de.jsx)(De,{serverId:y,workspaceId:a,agentId:I,isPaneFocused:l,client:x,isConnected:w,onOpenWorkspaceFile:u}),t[20]=l,t[21]=u,t[22]=I,t[23]=y,t[24]=x,t[25]=w,t[26]=a,t[27]=H):H=t[27],H}function De({serverId:e,workspaceId:s,agentId:o,isPaneFocused:a,client:c,isConnected:l,onOpenWorkspaceFile:f}){const{t:h}=(0,p.useTranslation)(),{isArchivingAgent:I}=(0,z.useArchiveAgent)(),v=(0,Y.useSessionStore)(t=>Boolean(t.sessions[e])),A=(0,y.useStoreWithEqualityFn)(Y.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,Y.useSessionStore)((0,S.useShallow)(t=>pe(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||!v)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?(ye({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=Te(e);Re(n)?C({tag:"not_found",message:n}):C({tag:"error",message:n})})},[o,x.id,c,v,l,w.tag,e]),"not_found"===w.tag)return(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-not-found",children:(0,de.jsx)(t.View,{style:Xe.errorContainer,children:(0,de.jsx)(n.Text,{style:Xe.errorText,children:h("agentPanel.states.notFound")})})});if("error"===w.tag)return(0,de.jsx)(he,{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,de.jsx)(Oe,{serverId:e,workspaceId:s,agentId:o,isPaneFocused:a,client:c,isConnected:l,onOpenWorkspaceFile:f}):(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-loading",children:(0,de.jsx)(t.View,{style:Xe.errorContainer,children:(0,de.jsx)(Ne,{size:"large",uniProps:Ue})})})}function Oe({serverId:e,workspaceId:t,agentId:n,isPaneFocused:s,client:o,isConnected:a,onOpenWorkspaceFile:c}){const{t:l}=(0,p.useTranslation)(),f=(0,C.useRetainedPanelActive)(),{api:h,toast:v,dismiss:A}=(0,_.useToastHost)(),{isArchivingAgent:x}=(0,z.useArchiveAgent)(),w=(0,u.useRef)(null),b=(0,u.useRef)(()=>{}),k=(0,u.useRef)(s),P=(0,u.useRef)(0),j=(0,u.useRef)(null),T=(0,Y.useSessionStore)((0,S.useShallow)(t=>pe(t,e,n))),R=(0,y.useStoreWithEqualityFn)(Y.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,Y.useSessionStore)(t=>!!n&&(t.sessions[e]?.initializingAgents?.get(n)??!1)),D=(0,Y.useSessionStore)(t=>t.sessions[e]?.historySyncGeneration??0),O=(0,Y.useSessionStore)(t=>n?(0,Y.selectAgentTimelineState)(t.sessions[e],n).status:"cold"),W="synced"===O,M=(0,Y.useSessionStore)(t=>n?t.sessions[e]?.agentHistorySyncGeneration?.get(n)??-1:-1),B=(0,Y.useSessionStore)(t=>t.sessions[e]?.viewedTimelineSync??null),q=(0,u.useCallback)(e=>B?.subscribe(e)??(()=>{}),[B]),L=(0,u.useCallback)(()=>n&&B?B.getAgentTimelineStatus(n):"ready",[n,B]),K=(0,u.useSyncExternalStore)(q,L,L),$=f?K:"ready",N=(U={agentId:n,status:$,sync:B}).agentId&&"error"===U.status&&U.sync?U.sync.getAgentTimelineError(U.agentId):null;var U;const G=(0,Z.useCreateFlowStore)(t=>je({pendingByDraftId:t.pendingByDraftId,serverId:e,agentId:n})),X=(0,Y.useSessionStore)(t=>Boolean(t.sessions[e])),[Q,ee]=(0,u.useState)({kind:"idle"}),te=W||"painted"===O,ne=(0,H.useAgentAttentionClear)({agentId:n,client:o,isConnected:a,requiresAttention:T.requiresAttention,attentionReason:T.attentionReason,isScreenFocused:s});(0,u.useEffect)(()=>{b.current=ne.clearOnAgentBlur},[ne.clearOnAgentBlur]);const se=Boolean(n&&x({serverId:e,agentId:n}));(0,u.useEffect)(()=>{k.current&&!s&&b.current(),k.current=s},[s]),(0,u.useEffect)(()=>()=>{k.current&&b.current()},[]);const re=!!n&&F,oe=(0,u.useMemo)(()=>{if(!n||!re)return!1;const t=(0,ie.getInitKey)(e,n);return Boolean((0,ie.getInitDeferred)(t))},[n,re,e]),ae=(0,u.useMemo)(()=>!!n&&M<D,[M,n,D]),ce=(0,u.useMemo)(()=>fe(T,R),[T,R]),le=(0,u.useMemo)(()=>G&&n?{kind:"optimistic-create",agent:{serverId:e,id:n,status:"running",cwd:ce?.cwd??".",projectPlacement:ce?.projectPlacement??null}}:{kind:"none"},[ce,n,G,e]),ue=(0,V.useAgentScreenStateMachine)({routeKey:`${e}:${n??""}`,input:{agent:ce??null,isArchived:null!==T.archivedAt,missingAgentState:Q,isConnected:a,isArchivingCurrentAgent:se,isHistorySyncing:oe,needsAuthoritativeSync:ae,visibilityCatchUpStatus:$,visibilityCatchUpError:N,continuity:le,hasHydratedHistoryBefore:te}}),ge="ready"===ue.tag?ue.agent:null,he=n?`${e}:${n}`:null;j.current=(0,J.deriveRouteBottomAnchorIntent)({cachedIntent:j.current,routeKey:he,hasAppliedAuthoritativeHistoryAtEntry:W});const Ie=(0,u.useMemo)(()=>(0,J.deriveRouteBottomAnchorRequest)({intent:j.current,effectiveAgentId:ge?.id??null}),[ge?.id]),Se=(0,u.useCallback)(e=>{n&&w.current?.prepareForViewportChange()},[n]),ve=(0,u.useCallback)(()=>{n&&w.current?.scrollToBottom("message-sent")},[n]),Ae=(0,u.useCallback)(()=>{w.current?.scrollToBottom("rewind")},[]),xe=(0,u.useCallback)(()=>{ee({kind:"idle"}),n&&B&&B.retryVisibleAgentTimeline(n)},[n,B]),we=(0,u.useCallback)(()=>{n&&B&&B.retryVisibleAgentTimeline(n)},[n,B]);(0,u.useEffect)(()=>{P.current+=1,ee({kind:"idle"})},[n,e]),(0,u.useEffect)(()=>{if(!n)return;if(T.archivedAt)return;if(T.id&&W)return void("resolving"!==Q.kind&&"not_found"!==Q.kind&&"error"!==Q.kind||ee(E.reconcileMissingAgentStateWithPresentAgent));if(!(o&&B&&f&&a&&X&&"ready"===$))return;if("resolving"===Q.kind||"not_found"===Q.kind||"error"===Q.kind)return;ee({kind:"resolving"});const t=++P.current;Promise.resolve().then(async()=>{if(t!==P.current)return;const s=Y.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 ee({kind:"not_found",message:`Agent not found: ${n}`});ye({serverId:e,result:s})}t===P.current&&ee({kind:"idle"})}).catch(e=>{if(t!==P.current)return;const n=Te(e);Re(n)?ee({kind:"not_found",message:n}):ee({kind:"error",message:n})})},[T.id,T.archivedAt,W,n,o,X,a,f,Q.kind,e,B,$]);const Ce=me({viewState:ue,effectiveAgent:ge,t:l,onRetryLoad:xe});if(Ce)return Ce;(0,I.default)(n,"agent id is defined when agent content is ready"),(0,I.default)(ge,"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"===ue.tag&&"catching_up"===ue.sync.status&&"overlay"===ue.sync.ui,Pe="ready"===ue.tag&&"sync_error"===ue.sync.status,Fe="ready"===ue.tag&&"sync_error"===ue.sync.status&&ue.sync.isRetrying;return(0,de.jsx)(We,{serverId:e,workspaceId:t,agentId:n,isPaneFocused:s,isArchivingCurrentAgent:se,agentState:T,effectiveAgent:ge,routeBottomAnchorRequest:Ie,hasAppliedAuthoritativeHistory:W,toastApi:h,toast:v,dismiss:A,streamViewRef:w,handleComposerHeightChange:Se,handleMessageSent:ve,handleRewindComplete:Ae,timelineSync:f&&"ready"===ue.tag?ue.sync:null,showHistorySyncOverlay:ke,showHistorySyncError:Pe,isRetryingHistorySync:Fe,cwd:be,retryTimelineSync:we,onAttentionInputFocus:ne.clearOnInputFocus,onAttentionPromptSend:ne.clearOnPromptSend,onOpenWorkspaceFile:c})}const We=(0,u.memo)(function(e){const o=(0,s.c)(107),{serverId:a,workspaceId:c,agentId:l,isPaneFocused:u,isArchivingCurrentAgent:f,agentState:h,effectiveAgent:I,routeBottomAnchorRequest:S,hasAppliedAuthoritativeHistory:y,toastApi:v,toast:A,dismiss:x,streamViewRef:w,handleComposerHeightChange:C,handleMessageSent:b,handleRewindComplete:k,timelineSync:P,showHistorySyncOverlay:j,showHistorySyncError:T,isRetryingHistorySync:F,retryTimelineSync:_,cwd:D,onAttentionInputFocus:O,onAttentionPromptSend:W,onOpenWorkspaceFile:H}=e,{t:V}=(0,p.useTranslation)();let z;o[0]!==l||o[1]!==a?(z={serverId:a,parentAgentId:l},o[0]=l,o[1]=a,o[2]=z):z=o[2];const B=(0,re.useSubagentsForParent)(z);let E;o[3]!==l||o[4]!==a?(E=e=>e.sessions[a]?.agentTasks.get(l),o[3]=l,o[4]=a,o[5]=E):E=o[5];const L=(0,Y.useSessionStore)(E);let K;o[6]!==l||o[7]!==a||o[8]!==B?(K={serverId:a,parentAgentId:l,rows:B},o[6]=l,o[7]=a,o[8]=B,o[9]=K):K=o[9];const U=(0,re.useArchiveFinishedSubagents)(K),J=(0,N.useHasPluginComposerPills)(a,c,l),G=!h.archivedAt&&!f;let Z;o[10]!==U.status||o[11]!==J||o[12]!==B||o[13]!==L?(Z=(0,X.hasAgentTracks)({subagentRows:B,tasks:L,archiveFinishedStatus:U.status,hasPluginComposerPills:J}),o[10]=U.status,o[11]=J,o[12]=B,o[13]=L,o[14]=Z):Z=o[14];const ee=Z;let te,ne;o[15]!==l||o[16]!==a?(te=(0,Q.buildDraftStoreKey)({serverId:a,agentId:l}),o[15]=l,o[16]=a,o[17]=te):te=o[17],o[18]!==te?(ne={draftKey:te},o[18]=te,o[19]=ne):ne=o[19];const se=(0,M.useAgentInputDraft)(ne),{textSource:ie,editText:oe,replaceText:ae,textReplacement:ce,attachments:le,setAttachments:ue,clear:ge,isHydrated:pe,attachmentFocusRequestId:fe,composerState:he}=se;let me;o[20]!==fe||o[21]!==le||o[22]!==ge||o[23]!==he||o[24]!==oe||o[25]!==pe||o[26]!==ae||o[27]!==ue||o[28]!==ce||o[29]!==ie?(me={textSource:ie,editText:oe,replaceText:ae,textReplacement:ce,attachments:le,setAttachments:ue,clear:ge,isHydrated:pe,attachmentFocusRequestId:fe,composerState:he},o[20]=fe,o[21]=le,o[22]=ge,o[23]=he,o[24]=oe,o[25]=pe,o[26]=ae,o[27]=ue,o[28]=ce,o[29]=ie,o[30]=me):me=o[30];const Ie=me,Se=`AgentComposerSection:${l}`;let ye,ve;o[31]!==l||o[32]!==Ie||o[33]!==h.archivedAt||o[34]!==D||o[35]!==C||o[36]!==b||o[37]!==f||o[38]!==u||o[39]!==O||o[40]!==W||o[41]!==a?(ye=(0,de.jsx)(ze,{agentId:l,serverId:a,isPaneFocused:u,isArchivingCurrentAgent:f,archivedAt:h.archivedAt,cwd:D,isSubmitLoading:!1,agentInputDraft:Ie,onAttentionInputFocus:O,onAttentionPromptSend:W,onComposerHeightChange:C,onMessageSent:b}),o[31]=l,o[32]=Ie,o[33]=h.archivedAt,o[34]=D,o[35]=C,o[36]=b,o[37]=f,o[38]=u,o[39]=O,o[40]=W,o[41]=a,o[42]=ye):ye=o[42],o[43]!==Se||o[44]!==ye?(ve=(0,de.jsx)($.RenderProfile,{id:Se,children:ye}),o[43]=Se,o[44]=ye,o[45]=ve):ve=o[45];const Ae=ve,xe=`AgentStreamSection:${l}`;let we,Ce,be,ke;o[46]!==l||o[47]!==I||o[48]!==G||o[49]!==y||o[50]!==ee||o[51]!==H||o[52]!==S||o[53]!==a||o[54]!==w||o[55]!==v||o[56]!==c?(we=(0,de.jsx)(Ve,{streamViewRef:w,serverId:a,workspaceId:c,agentId:l,agent:I,routeBottomAnchorRequest:S,hasAppliedAuthoritativeHistory:y,hasActiveComposer:G,hasVisibleAgentTracks:ee,toast:v,onOpenWorkspaceFile:H}),o[46]=l,o[47]=I,o[48]=G,o[49]=y,o[50]=ee,o[51]=H,o[52]=S,o[53]=a,o[54]=w,o[55]=v,o[56]=c,o[57]=we):we=o[57],o[58]!==xe||o[59]!==we?(Ce=(0,de.jsx)($.RenderProfile,{id:xe,children:we}),o[58]=xe,o[59]=we,o[60]=Ce):Ce=o[60],o[61]!==l||o[62]!==U.archiveFinished||o[63]!==U.status||o[64]!==D||o[65]!==G||o[66]!==J||o[67]!==a||o[68]!==B||o[69]!==L||o[70]!==c?(be=G?(0,de.jsx)(X.AgentTracks,{serverId:a,workspaceId:c,agentId:l,cwd:D,subagentRows:B,tasks:L,archiveFinishedStatus:U.status,onArchiveFinished:U.archiveFinished,hasPluginComposerPills:J}):null,o[61]=l,o[62]=U.archiveFinished,o[63]=U.status,o[64]=D,o[65]=G,o[66]=J,o[67]=a,o[68]=B,o[69]=L,o[70]=c,o[71]=be):be=o[71],o[72]!==Ce||o[73]!==be?(ke=(0,de.jsxs)(t.View,{style:Ge.content,children:[Ce,be]}),o[72]=Ce,o[73]=be,o[74]=ke):ke=o[74];const Pe=ke;let je,Te;o[75]!==F||o[76]!==_||o[77]!==T?(je=T?(0,de.jsx)(Me,{isRetrying:F,onRetry:_}):null,o[75]=F,o[76]=_,o[77]=T,o[78]=je):je=o[78],o[79]!==Pe||o[80]!==je?(Te=(0,de.jsxs)(t.View,{style:Xe.contentContainer,children:[Pe,je]}),o[79]=Pe,o[80]=je,o[81]=Te):Te=o[81];const Re=Te;let Fe,De,Oe;o[82]!==j?(Fe=j?(0,de.jsx)(t.View,{style:Xe.historySyncOverlay,testID:"agent-history-overlay",children:(0,de.jsx)(Ne,{size:"large",uniProps:Ue})}):null,o[82]=j,o[83]=Fe):Fe=o[83],o[84]!==x||o[85]!==P||o[86]!==A?(De=(0,de.jsx)(q.TimelineSyncStatus,{sync:P,toast:A,onDismiss:x}),o[84]=x,o[85]=P,o[86]=A,o[87]=De):De=o[87],o[88]!==Fe||o[89]!==De?(Oe=(0,de.jsxs)(de.Fragment,{children:[Fe,De]}),o[88]=Fe,o[89]=De,o[90]=Oe):Oe=o[90];const We=Oe;let Be;o[91]!==Ae||o[92]!==Re||o[93]!==We||o[94]!==f?(Be=(0,de.jsxs)(He,{disabled:f,children:[Re,Ae,We]}),o[91]=Ae,o[92]=Re,o[93]=We,o[94]=f,o[95]=Be):Be=o[95];const Ee=Be;let qe,Le,Ke;return o[96]!==f||o[97]!==V?(qe=f?(0,de.jsxs)(t.View,{style:Xe.archivingOverlay,testID:"agent-archiving-overlay",children:[(0,de.jsx)(Ne,{size:"large",uniProps:Je}),(0,de.jsx)(n.Text,{style:Xe.archivingTitle,children:V("agentPanel.states.archivingTitle")}),(0,de.jsx)(n.Text,{style:Xe.archivingSubtitle,children:V("agentPanel.states.archivingSubtitle")})]}):null,o[96]=f,o[97]=V,o[98]=qe):qe=o[98],o[99]!==Ee||o[100]!==qe?(Le=(0,de.jsxs)(t.View,{style:Xe.root,children:[Ee,qe]}),o[99]=Ee,o[100]=qe,o[101]=Le):Le=o[101],o[102]!==Ie.replaceText||o[103]!==Ie.textSource||o[104]!==k||o[105]!==Le?(Ke=(0,de.jsx)(R.RewindComposerRestoreProvider,{textSource:Ie.textSource,setText:Ie.replaceText,onRewindComplete:k,children:Le}),o[102]=Ie.replaceText,o[103]=Ie.textSource,o[104]=k,o[105]=Le,o[106]=Ke):Ke=o[106],Ke});function He(e){const t=(0,s.c)(5),{children:n,disabled:o}=e;let a,c;return t[0]!==n?(a=(0,de.jsx)(x.ComposerDock,{children:n}),t[0]=n,t[1]=a):a=t[1],t[2]!==o||t[3]!==a?(c=(0,de.jsx)(w.FileDropZone,{style:Xe.container,disabled:o,children:a}),t[2]=o,t[3]=a,t[4]=c):c=t[4],c}function Me(e){const o=(0,s.c)(14),{isRetrying:c,onRetry:l}=e,{t:u}=(0,p.useTranslation)();let f,h,I,S,y;return o[0]!==u?(f=u("agentPanel.states.timelineSyncFailed"),o[0]=u,o[1]=f):f=o[1],o[2]!==f?(h=(0,de.jsx)(n.Text,{style:Xe.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,de.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?(y=(0,de.jsx)(t.View,{style:Xe.timelineSyncCalloutRail,children:(0,de.jsx)(t.View,{style:Xe.timelineSyncCalloutContent,children:(0,de.jsxs)(t.View,{style:Xe.timelineSyncCallout,testID:"agent-timeline-sync-error",children:[h,S]})})}),o[11]=h,o[12]=S,o[13]=y):y=o[13],y}const Ve=(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,O.useIsCompactFormFactor)(),A=(0,P.useWorkspaceHasDiffStat)(t,n),x=l&&(p||A),w=x?(0,j.resolveComposerTrackTailClearance)(I):0,C=x?(0,j.resolveComposerTrackControlClearance)(I):0,b=(0,Y.useSessionStore)(e=>s?e.sessions[t]?.agentStreamTail?.get(s):void 0),k=(0,Y.useSessionStore)((0,S.useShallow)(e=>s?(0,T.getActiveMessageSubmissions)(e.sessions[t]?.messageSubmissions.get(s)):be)),R=(0,Y.useSessionStore)((0,S.useShallow)(e=>s?(0,Y.selectAgentTurnPresentation)(e.sessions[t],s):{isActive:!1,isCancelling:!1,startedAt:null,turnId:null})),F=b??Ce,_=(0,y.useStoreWithEqualityFn)(Y.useSessionStore,e=>{if(!s)return Pe;const n=e.sessions[t]?.pendingPermissions;if(!n)return Pe;const o=[];for(const e of n.values())e.agentId===s&&o.push(e);return o.length>0?o:Pe},S.shallow),D=(0,u.useMemo)(()=>0===_.length?ke:new Map(_.map(e=>[e.key,e])),[_]);return(0,de.jsx)(v.AgentStreamView,{ref:e,agentId:o.id,serverId:t,context:o,streamItems:F,pendingPermissions:D,routeBottomAnchorRequest:a,isAuthoritativeHistoryReady:c,bottomOverlayTailClearance:w,bottomOverlayControlClearance:C,toast:f,pendingMessageSubmissions:k,turnPresentation:R,onOpenWorkspaceFile:h})}),ze=(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:y}=e;if(!n)return null;if(l){let e;return t[0]!==n||t[1]!==o?(e=(0,de.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 v;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]!==y||t[12]!==o?(v=(0,de.jsx)(Be,{agentId:n,serverId:o,isPaneFocused:a,cwd:u,isSubmitLoading:p,agentInputDraft:f,onAttentionInputFocus:h,onAttentionPromptSend:I,onComposerHeightChange:S,onMessageSent:y}),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]=y,t[12]=o,t[13]=v):v=t[13],v});function Be(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,y=(0,O.useIsCompactFormFactor)();let v;n[0]!==y?(v={initialIsBelow:y},n[0]=y,n[1]=v):v=n[1];const{onLayout:A,isBelow:x}=(0,B.useContainerWidthBelow)(O.COMPACT_FORM_FACTOR_WIDTH,v),w=(0,L.usePaneContext)(),C=(0,se.useSettings)(Ke),{workspaceId:b,tabId:P,retargetCurrentTab:j}=w,{archiveAgent:T}=(0,z.useArchiveAgent)(),R=(0,ee.useWorkspaceLayoutStore)(Le),F=(0,ee.useWorkspaceLayoutStore)(qe),_=(0,ee.useWorkspaceLayoutStore)(Ee);let H;n[2]!==l||n[3]!==a||n[4]!==b?(H={serverId:a,cwd:l,workspaceId:b},n[2]=l,n[3]=a,n[4]=b,n[5]=H):H=n[5];const M=(0,D.useWorkspaceAttachmentScopeKey)(H);let V;n[6]!==M?(V=[M],n[6]=M,n[7]=V):V=n[7];const E=V;let q;n[8]!==l||n[9]!==y||n[10]!==C||n[11]!==a||n[12]!==b?(q=e=>{"review"===e.kind&&(0,ne.openWorkspaceChanges)({isCompact:y,workspaceKey:(0,te.buildWorkspaceTabPersistenceKey)({serverId:a,workspaceId:b}),checkout:{serverId:a,cwd:l,isGit:!0},preferences:C})},n[8]=l,n[9]=y,n[10]=C,n[11]=a,n[12]=b,n[13]=q):q=n[13];const K=q;let $;n[14]!==o||n[15]!==T||n[16]!==R||n[17]!==F||n[18]!==j||n[19]!==a||n[20]!==P||n[21]!==_||n[22]!==b?($=async e=>{const t=ue(Y.useSessionStore.getState(),a,o);if(!t)throw new Error("Agent not found");const n=(0,te.buildWorkspaceTabPersistenceKey)({serverId:a,workspaceId:b});n&&(_(n,o),F(n,o)),"replace-agent-with-draft"===e.kind?j({kind:"draft",draftId:(0,Q.generateDraftId)(),setup:(0,le.buildDraftAgentSetup)(t)}):n&&R(n,P),await T({serverId:a,agentId:o})},n[14]=o,n[15]=T,n[16]=R,n[17]=F,n[18]=j,n[19]=a,n[20]=P,n[21]=_,n[22]=b,n[23]=$):$=n[23];const N=$,U=p.textSource,J=p.editText,G=p.textReplacement,X=p.attachments,Z=p.setAttachments,re=p.clear,ie=String(p.attachmentFocusRequestId);let oe,ae;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]!==E||n[32]!==l||n[33]!==N||n[34]!==K||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]!==ie||n[44]!==b?(oe=(0,de.jsx)(k.Composer,{agentId:o,serverId:a,workspaceId:b,blurOnSubmit:W.isNative,isPaneFocused:c,textSource:U,onChangeText:J,textReplacement:G,attachments:X,attachmentScopeKeys:E,onOpenWorkspaceAttachment:K,onChangeAttachments:Z,cwd:l,clearDraft:re,autoFocus:!0,autoFocusKey:ie,isSubmitLoading:u,onAttentionInputFocus:f,onAttentionPromptSend:h,onComposerHeightChange:I,onMessageSent:S,onClientSlashCommand:N,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]=E,n[32]=l,n[33]=N,n[34]=K,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]=ie,n[44]=b,n[45]=oe):oe=n[45],n[46]!==A||n[47]!==oe?(ae=(0,de.jsx)(t.View,{style:Ge.inputAreaWrapper,onLayout:A,children:oe}),n[46]=A,n[47]=oe,n[48]=ae):ae=n[48],ae}function Ee(e){return e.unpinAgent}function qe(e){return e.hideAgent}function Le(e){return e.closeTab}function Ke(e){return e.openInSidePane}function $e(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,de.jsx)(n.Text,{style:Xe.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,de.jsx)(n.Text,{style:Xe.statusText,children:c}),o[7]=c,o[8]=l):l=o[8],o[9]!==s||o[10]!==l?(u=(0,de.jsx)(t.View,{style:Xe.container,children:(0,de.jsxs)(t.View,{style:Xe.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,de.jsx)(t.View,{style:Xe.container,children:(0,de.jsx)(t.View,{style:Xe.centerState,children:f||h?(0,de.jsxs)(de.Fragment,{children:[(0,de.jsx)(Ne,{size:"large",uniProps:Ue}),(0,de.jsx)(n.Text,{style:Xe.loadingText,children:p(h?"agentPanel.unavailable.preparingSession":"agentPanel.unavailable.connecting",{serverLabel:a})}),(0,de.jsx)(n.Text,{style:Xe.statusText,children:p(h?"agentPanel.unavailable.showSoon":"agentPanel.unavailable.showWhenOnline")})]}):(0,de.jsxs)(de.Fragment,{children:[(0,de.jsx)(n.Text,{style:Xe.offlineTitle,children:p("agentPanel.unavailable.reconnectingTo",{serverLabel:a})}),(0,de.jsx)(n.Text,{style:Xe.offlineDescription,children:p("agentPanel.unavailable.showAgainWhenReachable")}),l?(0,de.jsx)(n.Text,{style:Xe.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 Ne=(0,h.withUnistyles)(c.LoadingSpinner),Ue=e=>({color:e.colors.foregroundMuted}),Je=e=>({color:e.colors.foreground}),Ge=f.default.create({content:{flex:1},inputAreaWrapper:{width:"100%",flexShrink:1}}),Xe=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"},W.isWeb?{userSelect:"none"}:{}),timelineSyncCalloutRail:{width:"100%",alignItems:"center",paddingHorizontal:e.spacing[4],paddingTop:e.spacing[2],uni__dependencies:[0]},timelineSyncCalloutContent:{width:"100%",maxWidth:O.MAX_CONTENT_WIDTH},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]}}))},4597,[895,896,453,3466,2983,2984,1217,36,853,59,234,146,56,3561,3417,3738,4598,4701,4222,4356,3693,4702,4361,4704,4501,3428,4645,3794,894,3606,1216,880,4705,4502,4706,3593,4402,4707,4708,4323,4595,4262,4488,4709,4710,4711,4717,3605,3537,3420,3557,3538,4319,883,4721,3611,3595,3599,3437,4467,279]);
|
|
16252
|
+
__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=xe,Object.defineProperty(_e,"agentPanelRegistration",{enumerable:!0,get:function(){return we}}),_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,Z.useCreateFlowStore)((0,S.useShallow)(o));let c;n[3]!==a?(c=(0,U.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]),y=r(d[15]),v=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]),M=r(d[33]),V=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]),N=r(d[42]),U=r(d[43]),J=r(d[44]),G=r(d[45]),X=r(d[46]),Z=r(d[47]),Q=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]);function ue(e,t,n){if(!n)return null;const s=e.sessions[t];return s?.agents?.get(n)??s?.agentDetails?.get(n)??null}const ge={serverId:null,id:null,status:null,cwd:null,lastError:null,archivedAt:null,requiresAttention:!1,attentionReason:null};function pe(e,t,n){const s=ue(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,archivedAt:s.archivedAt??null,requiresAttention:s.requiresAttention??!1,attentionReason:s.attentionReason??null}:ge}function fe(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 he(e){const o=(0,s.c)(15),{message:c,onRetry:l}=e,{t:u}=(0,p.useTranslation)();let f,h,I,S,y,v;return o[0]!==u?(f=u("agentPanel.states.failedToLoad"),o[0]=u,o[1]=f):f=o[1],o[2]!==f?(h=(0,de.jsx)(n.Text,{style:Xe.errorText,children:f}),o[2]=f,o[3]=h):h=o[3],o[4]!==c?(I=(0,de.jsx)(n.Text,{style:Xe.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?(y=(0,de.jsx)(t.View,{style:Xe.errorAction,children:(0,de.jsx)(a.Button,{size:"sm",variant:"secondary",onPress:l,testID:"agent-load-error-retry",children:S})}),o[8]=l,o[9]=S,o[10]=y):y=o[10],o[11]!==h||o[12]!==I||o[13]!==y?(v=(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-load-error",children:(0,de.jsxs)(t.View,{style:Xe.errorContainer,children:[h,I,y]})}),o[11]=h,o[12]=I,o[13]=y,o[14]=v):v=o[14],v}function me(e){const{viewState:s,effectiveAgent:o,t:a,onRetryLoad:c}=e;return"not_found"===s.tag?(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-not-found",children:(0,de.jsx)(t.View,{style:Xe.errorContainer,children:(0,de.jsx)(n.Text,{style:Xe.errorText,children:a("agentPanel.states.notFound")})})}):"error"===s.tag?(0,de.jsx)(he,{message:s.message,onRetry:c}):"boot"!==s.tag&&o?null:(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-loading",children:(0,de.jsx)(t.View,{style:Xe.errorContainer,children:(0,de.jsx)(Ne,{size:"large",uniProps:Ue})})})}function Ie(e){return e?e.split(/[-_\s]+/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" "):"Agent"}function Se(e){if("string"!=typeof e)return null;const t=e.trim();return t?"new agent"===t.toLowerCase()?null:t:null}function ye(e){const t=(0,oe.normalizeAgentSnapshot)(e.result.agent,e.serverId),n=(0,ae.applyLegacyDaemonWorkspaceOwnership)({serverId:e.serverId,agent:Object.assign({},t,{projectPlacement:e.result.project})}),s=Y.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,oe.derivePendingPermissionKey)(n.id,e);t.set(s,{key:s,agentId:n.id,request:e})}return t}),n}function ve(){const e=(0,s.c)(6),{serverId:t,workspaceId:n,target:o,openFileInWorkspace:a}=(0,L.usePaneContext)(),{isInteractive:c}=(0,L.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,de.jsx)(b.RetainedChatContent,{children:(0,de.jsx)(Fe,{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 Ae(){const e=(0,s.c)(13),{serverId:t,workspaceId:n,tabId:a,target:c,openFileInWorkspace:l,openImportSheet:u,retargetCurrentTab:p}=(0,L.usePaneContext)(),{isInteractive:f}=(0,L.usePaneFocus)();let h;(0,I.default)("draft"===c.kind,"DraftPanel requires draft target"),e[0]!==p||e[1]!==t?(h=e=>{const n=(0,oe.normalizeAgentSnapshot)(e,t),s=(0,ae.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 y;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?(y=(0,de.jsx)(G.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]=y):y=e[12],y}function xe(){const e=(0,s.c)(2),{target:t}=(0,L.usePaneContext)();if("draft"===t.kind){let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=(0,de.jsx)(Ae,{}),e[0]=t):t=e[0],t}if("agent"===t.kind){let t;return e[1]===Symbol.for("react.memo_cache_sentinel")?(t=(0,de.jsx)(ve,{}),e[1]=t):t=e[1],t}(0,I.default)(!1,"AgentConversationPanel requires an agent or draft target")}const we=(0,K.definePanel)("agent",{component:xe,useDescriptor:function(e,t){const n=(0,s.c)(26);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,Y.selectAgentTurnPresentation)(s,e.agentId).isActive}},n[0]=t.serverId,n[1]=e.agentId,n[2]=o):o=n[2];const a=(0,Y.useSessionStore)((0,S.useShallow)(o)),c=a.provider;let l;n[3]!==a.title?(l=Se(a.title),n[3]=a.title,n[4]=l):l=n[4];const u=l;let p;n[5]!==t.serverId||n[6]!==c?(p=(0,F.getProviderIcon)(c,t.serverId),n[5]=t.serverId,n[6]=c,n[7]=p):p=n[7];const f=p,h=u??"";let I;n[8]!==c?(I=Ie(c),n[8]=c,n[9]=I):I=n[9];const y=`${I} agent`;let v;n[10]!==u||n[11]!==c?(v=u??`${Ie(c)} agent`,n[10]=u,n[11]=c,n[12]=v):v=n[12];const A=u?"ready":"loading";let x,w;return n[13]!==a.attentionReason||n[14]!==a.isTurnActive||n[15]!==a.pendingPermissionCount||n[16]!==a.requiresAttention||n[17]!==a.status?(x=a.status?(0,ce.deriveSidebarStateBucket)({status:a.isTurnActive?"running":a.status,pendingPermissionCount:a.pendingPermissionCount,requiresAttention:a.requiresAttention,attentionReason:a.attentionReason}):null,n[13]=a.attentionReason,n[14]=a.isTurnActive,n[15]=a.pendingPermissionCount,n[16]=a.requiresAttention,n[17]=a.status,n[18]=x):x=n[18],n[19]!==f||n[20]!==h||n[21]!==y||n[22]!==v||n[23]!==A||n[24]!==x?(w={label:h,subtitle:y,tooltip:v,titleState:A,icon:f,statusBucket:x},n[19]=f,n[20]=h,n[21]=y,n[22]=v,n[23]=A,n[24]=x,n[25]=w):w=n[25],w}});const Ce=[],be=[],ke=new Map,Pe=[];function je(e){return!!e.agentId&&Object.values(e.pendingByDraftId).some(t=>"sent"===t.lifecycle&&t.serverId===e.serverId&&t.agentId===e.agentId)}function Te(e){return e instanceof Error?e.message:String(e)}function Re(e){return/agent not found|not found/i.test(e)}function Fe(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 y=S,v=(0,o.useHosts)(),A=y??"",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]!==y?(k=e=>{if(!y||!I)return!1;const t=e.sessions[y];return Boolean(t?.agents.has(I)||t?.agentDetails.has(I))},t[4]=I,t[5]=y,t[6]=k):k=t[6];const P=(0,Y.useSessionStore)(k),j=y??null;let T;t[7]!==j||t[8]!==v?(T=j?v.find(e=>e.serverId===j)??null:null,t[7]=j,t[8]=v,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(!y||!x&&!P){let e;return t[14]!==O||t[15]!==D||t[16]!==W||t[17]!==_||t[18]!==f?(e=(0,de.jsx)($e,{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]!==y||t[24]!==x||t[25]!==w||t[26]!==a?(H=(0,de.jsx)(De,{serverId:y,workspaceId:a,agentId:I,isPaneFocused:l,client:x,isConnected:w,onOpenWorkspaceFile:u}),t[20]=l,t[21]=u,t[22]=I,t[23]=y,t[24]=x,t[25]=w,t[26]=a,t[27]=H):H=t[27],H}function De({serverId:e,workspaceId:s,agentId:o,isPaneFocused:a,client:c,isConnected:l,onOpenWorkspaceFile:f}){const{t:h}=(0,p.useTranslation)(),{isArchivingAgent:I}=(0,z.useArchiveAgent)(),v=(0,Y.useSessionStore)(t=>Boolean(t.sessions[e])),A=(0,y.useStoreWithEqualityFn)(Y.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,Y.useSessionStore)((0,S.useShallow)(t=>pe(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||!v)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?(ye({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=Te(e);Re(n)?C({tag:"not_found",message:n}):C({tag:"error",message:n})})},[o,x.id,c,v,l,w.tag,e]),"not_found"===w.tag)return(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-not-found",children:(0,de.jsx)(t.View,{style:Xe.errorContainer,children:(0,de.jsx)(n.Text,{style:Xe.errorText,children:h("agentPanel.states.notFound")})})});if("error"===w.tag)return(0,de.jsx)(he,{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,de.jsx)(Oe,{serverId:e,workspaceId:s,agentId:o,isPaneFocused:a,client:c,isConnected:l,onOpenWorkspaceFile:f}):(0,de.jsx)(t.View,{style:Xe.container,testID:"agent-loading",children:(0,de.jsx)(t.View,{style:Xe.errorContainer,children:(0,de.jsx)(Ne,{size:"large",uniProps:Ue})})})}function Oe({serverId:e,workspaceId:t,agentId:n,isPaneFocused:s,client:o,isConnected:a,onOpenWorkspaceFile:c}){const{t:l}=(0,p.useTranslation)(),f=(0,C.useRetainedPanelActive)(),{api:h,toast:v,dismiss:A}=(0,_.useToastHost)(),{isArchivingAgent:x}=(0,z.useArchiveAgent)(),w=(0,u.useRef)(null),b=(0,u.useRef)(()=>{}),k=(0,u.useRef)(s),P=(0,u.useRef)(0),j=(0,u.useRef)(null),T=(0,Y.useSessionStore)((0,S.useShallow)(t=>pe(t,e,n))),R=(0,y.useStoreWithEqualityFn)(Y.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,Y.useSessionStore)(t=>!!n&&(t.sessions[e]?.initializingAgents?.get(n)??!1)),D=(0,Y.useSessionStore)(t=>t.sessions[e]?.historySyncGeneration??0),O=(0,Y.useSessionStore)(t=>n?(0,Y.selectAgentTimelineState)(t.sessions[e],n).status:"cold"),W="synced"===O,M=(0,Y.useSessionStore)(t=>n?t.sessions[e]?.agentHistorySyncGeneration?.get(n)??-1:-1),B=(0,Y.useSessionStore)(t=>t.sessions[e]?.viewedTimelineSync??null),q=(0,u.useCallback)(e=>B?.subscribe(e)??(()=>{}),[B]),L=(0,u.useCallback)(()=>n&&B?B.getAgentTimelineStatus(n):"ready",[n,B]),K=(0,u.useSyncExternalStore)(q,L,L),$=f?K:"ready",N=(U={agentId:n,status:$,sync:B}).agentId&&"error"===U.status&&U.sync?U.sync.getAgentTimelineError(U.agentId):null;var U;const G=(0,Z.useCreateFlowStore)(t=>je({pendingByDraftId:t.pendingByDraftId,serverId:e,agentId:n})),X=(0,Y.useSessionStore)(t=>Boolean(t.sessions[e])),[Q,ee]=(0,u.useState)({kind:"idle"}),te=W||"painted"===O,ne=(0,H.useAgentAttentionClear)({agentId:n,client:o,isConnected:a,requiresAttention:T.requiresAttention,attentionReason:T.attentionReason,isScreenFocused:s});(0,u.useEffect)(()=>{b.current=ne.clearOnAgentBlur},[ne.clearOnAgentBlur]);const se=Boolean(n&&x({serverId:e,agentId:n}));(0,u.useEffect)(()=>{k.current&&!s&&b.current(),k.current=s},[s]),(0,u.useEffect)(()=>()=>{k.current&&b.current()},[]);const re=!!n&&F,oe=(0,u.useMemo)(()=>{if(!n||!re)return!1;const t=(0,ie.getInitKey)(e,n);return Boolean((0,ie.getInitDeferred)(t))},[n,re,e]),ae=(0,u.useMemo)(()=>!!n&&M<D,[M,n,D]),ce=(0,u.useMemo)(()=>fe(T,R),[T,R]),le=(0,u.useMemo)(()=>G&&n?{kind:"optimistic-create",agent:{serverId:e,id:n,status:"running",cwd:ce?.cwd??".",projectPlacement:ce?.projectPlacement??null}}:{kind:"none"},[ce,n,G,e]),ue=(0,V.useAgentScreenStateMachine)({routeKey:`${e}:${n??""}`,input:{agent:ce??null,isArchived:null!==T.archivedAt,missingAgentState:Q,isConnected:a,isArchivingCurrentAgent:se,isHistorySyncing:oe,needsAuthoritativeSync:ae,visibilityCatchUpStatus:$,visibilityCatchUpError:N,continuity:le,hasHydratedHistoryBefore:te}}),ge="ready"===ue.tag?ue.agent:null,he=n?`${e}:${n}`:null;j.current=(0,J.deriveRouteBottomAnchorIntent)({cachedIntent:j.current,routeKey:he,hasAppliedAuthoritativeHistoryAtEntry:W});const Ie=(0,u.useMemo)(()=>(0,J.deriveRouteBottomAnchorRequest)({intent:j.current,effectiveAgentId:ge?.id??null}),[ge?.id]),Se=(0,u.useCallback)(e=>{n&&w.current?.prepareForViewportChange()},[n]),ve=(0,u.useCallback)(()=>{n&&w.current?.scrollToBottom("message-sent")},[n]),Ae=(0,u.useCallback)(()=>{w.current?.scrollToBottom("rewind")},[]),xe=(0,u.useCallback)(()=>{ee({kind:"idle"}),n&&B&&B.retryVisibleAgentTimeline(n)},[n,B]),we=(0,u.useCallback)(()=>{n&&B&&B.retryVisibleAgentTimeline(n)},[n,B]);(0,u.useEffect)(()=>{P.current+=1,ee({kind:"idle"})},[n,e]),(0,u.useEffect)(()=>{if(!n)return;if(T.archivedAt)return;if(T.id&&W)return void("resolving"!==Q.kind&&"not_found"!==Q.kind&&"error"!==Q.kind||ee(E.reconcileMissingAgentStateWithPresentAgent));if(!(o&&B&&f&&a&&X&&"ready"===$))return;if("resolving"===Q.kind||"not_found"===Q.kind||"error"===Q.kind)return;ee({kind:"resolving"});const t=++P.current;Promise.resolve().then(async()=>{if(t!==P.current)return;const s=Y.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 ee({kind:"not_found",message:`Agent not found: ${n}`});ye({serverId:e,result:s})}t===P.current&&ee({kind:"idle"})}).catch(e=>{if(t!==P.current)return;const n=Te(e);Re(n)?ee({kind:"not_found",message:n}):ee({kind:"error",message:n})})},[T.id,T.archivedAt,W,n,o,X,a,f,Q.kind,e,B,$]);const Ce=me({viewState:ue,effectiveAgent:ge,t:l,onRetryLoad:xe});if(Ce)return Ce;(0,I.default)(n,"agent id is defined when agent content is ready"),(0,I.default)(ge,"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"===ue.tag&&"catching_up"===ue.sync.status&&"overlay"===ue.sync.ui,Pe="ready"===ue.tag&&"sync_error"===ue.sync.status,Fe="ready"===ue.tag&&"sync_error"===ue.sync.status&&ue.sync.isRetrying;return(0,de.jsx)(We,{serverId:e,workspaceId:t,agentId:n,isPaneFocused:s,isArchivingCurrentAgent:se,agentState:T,effectiveAgent:ge,routeBottomAnchorRequest:Ie,hasAppliedAuthoritativeHistory:W,toastApi:h,toast:v,dismiss:A,streamViewRef:w,handleComposerHeightChange:Se,handleMessageSent:ve,handleRewindComplete:Ae,timelineSync:f&&"ready"===ue.tag?ue.sync:null,showHistorySyncOverlay:ke,showHistorySyncError:Pe,isRetryingHistorySync:Fe,cwd:be,retryTimelineSync:we,onAttentionInputFocus:ne.clearOnInputFocus,onAttentionPromptSend:ne.clearOnPromptSend,onOpenWorkspaceFile:c})}const We=(0,u.memo)(function(e){const o=(0,s.c)(107),{serverId:a,workspaceId:c,agentId:l,isPaneFocused:u,isArchivingCurrentAgent:f,agentState:h,effectiveAgent:I,routeBottomAnchorRequest:S,hasAppliedAuthoritativeHistory:y,toastApi:v,toast:A,dismiss:x,streamViewRef:w,handleComposerHeightChange:C,handleMessageSent:b,handleRewindComplete:k,timelineSync:P,showHistorySyncOverlay:j,showHistorySyncError:T,isRetryingHistorySync:F,retryTimelineSync:_,cwd:D,onAttentionInputFocus:O,onAttentionPromptSend:W,onOpenWorkspaceFile:H}=e,{t:V}=(0,p.useTranslation)();let z;o[0]!==l||o[1]!==a?(z={serverId:a,parentAgentId:l},o[0]=l,o[1]=a,o[2]=z):z=o[2];const B=(0,re.useSubagentsForParent)(z);let E;o[3]!==l||o[4]!==a?(E=e=>e.sessions[a]?.agentTasks.get(l),o[3]=l,o[4]=a,o[5]=E):E=o[5];const L=(0,Y.useSessionStore)(E);let K;o[6]!==l||o[7]!==a||o[8]!==B?(K={serverId:a,parentAgentId:l,rows:B},o[6]=l,o[7]=a,o[8]=B,o[9]=K):K=o[9];const U=(0,re.useArchiveFinishedSubagents)(K),J=(0,N.useHasPluginComposerPills)(a,c,l),G=!h.archivedAt&&!f;let Z;o[10]!==U.status||o[11]!==J||o[12]!==B||o[13]!==L?(Z=(0,X.hasAgentTracks)({subagentRows:B,tasks:L,archiveFinishedStatus:U.status,hasPluginComposerPills:J}),o[10]=U.status,o[11]=J,o[12]=B,o[13]=L,o[14]=Z):Z=o[14];const ee=Z;let te,ne;o[15]!==l||o[16]!==a?(te=(0,Q.buildDraftStoreKey)({serverId:a,agentId:l}),o[15]=l,o[16]=a,o[17]=te):te=o[17],o[18]!==te?(ne={draftKey:te},o[18]=te,o[19]=ne):ne=o[19];const se=(0,M.useAgentInputDraft)(ne),{textSource:ie,editText:oe,replaceText:ae,textReplacement:ce,attachments:le,setAttachments:ue,clear:ge,isHydrated:pe,attachmentFocusRequestId:fe,composerState:he}=se;let me;o[20]!==fe||o[21]!==le||o[22]!==ge||o[23]!==he||o[24]!==oe||o[25]!==pe||o[26]!==ae||o[27]!==ue||o[28]!==ce||o[29]!==ie?(me={textSource:ie,editText:oe,replaceText:ae,textReplacement:ce,attachments:le,setAttachments:ue,clear:ge,isHydrated:pe,attachmentFocusRequestId:fe,composerState:he},o[20]=fe,o[21]=le,o[22]=ge,o[23]=he,o[24]=oe,o[25]=pe,o[26]=ae,o[27]=ue,o[28]=ce,o[29]=ie,o[30]=me):me=o[30];const Ie=me,Se=`AgentComposerSection:${l}`;let ye,ve;o[31]!==l||o[32]!==Ie||o[33]!==h.archivedAt||o[34]!==D||o[35]!==C||o[36]!==b||o[37]!==f||o[38]!==u||o[39]!==O||o[40]!==W||o[41]!==a?(ye=(0,de.jsx)(ze,{agentId:l,serverId:a,isPaneFocused:u,isArchivingCurrentAgent:f,archivedAt:h.archivedAt,cwd:D,isSubmitLoading:!1,agentInputDraft:Ie,onAttentionInputFocus:O,onAttentionPromptSend:W,onComposerHeightChange:C,onMessageSent:b}),o[31]=l,o[32]=Ie,o[33]=h.archivedAt,o[34]=D,o[35]=C,o[36]=b,o[37]=f,o[38]=u,o[39]=O,o[40]=W,o[41]=a,o[42]=ye):ye=o[42],o[43]!==Se||o[44]!==ye?(ve=(0,de.jsx)($.RenderProfile,{id:Se,children:ye}),o[43]=Se,o[44]=ye,o[45]=ve):ve=o[45];const Ae=ve,xe=`AgentStreamSection:${l}`;let we,Ce,be,ke;o[46]!==l||o[47]!==I||o[48]!==G||o[49]!==y||o[50]!==ee||o[51]!==H||o[52]!==S||o[53]!==a||o[54]!==w||o[55]!==v||o[56]!==c?(we=(0,de.jsx)(Ve,{streamViewRef:w,serverId:a,workspaceId:c,agentId:l,agent:I,routeBottomAnchorRequest:S,hasAppliedAuthoritativeHistory:y,hasActiveComposer:G,hasVisibleAgentTracks:ee,toast:v,onOpenWorkspaceFile:H}),o[46]=l,o[47]=I,o[48]=G,o[49]=y,o[50]=ee,o[51]=H,o[52]=S,o[53]=a,o[54]=w,o[55]=v,o[56]=c,o[57]=we):we=o[57],o[58]!==xe||o[59]!==we?(Ce=(0,de.jsx)($.RenderProfile,{id:xe,children:we}),o[58]=xe,o[59]=we,o[60]=Ce):Ce=o[60],o[61]!==l||o[62]!==U.archiveFinished||o[63]!==U.status||o[64]!==D||o[65]!==G||o[66]!==J||o[67]!==a||o[68]!==B||o[69]!==L||o[70]!==c?(be=G?(0,de.jsx)(X.AgentTracks,{serverId:a,workspaceId:c,agentId:l,cwd:D,subagentRows:B,tasks:L,archiveFinishedStatus:U.status,onArchiveFinished:U.archiveFinished,hasPluginComposerPills:J}):null,o[61]=l,o[62]=U.archiveFinished,o[63]=U.status,o[64]=D,o[65]=G,o[66]=J,o[67]=a,o[68]=B,o[69]=L,o[70]=c,o[71]=be):be=o[71],o[72]!==Ce||o[73]!==be?(ke=(0,de.jsxs)(t.View,{style:Ge.content,children:[Ce,be]}),o[72]=Ce,o[73]=be,o[74]=ke):ke=o[74];const Pe=ke;let je,Te;o[75]!==F||o[76]!==_||o[77]!==T?(je=T?(0,de.jsx)(Me,{isRetrying:F,onRetry:_}):null,o[75]=F,o[76]=_,o[77]=T,o[78]=je):je=o[78],o[79]!==Pe||o[80]!==je?(Te=(0,de.jsxs)(t.View,{style:Xe.contentContainer,children:[Pe,je]}),o[79]=Pe,o[80]=je,o[81]=Te):Te=o[81];const Re=Te;let Fe,De,Oe;o[82]!==j?(Fe=j?(0,de.jsx)(t.View,{style:Xe.historySyncOverlay,testID:"agent-history-overlay",children:(0,de.jsx)(Ne,{size:"large",uniProps:Ue})}):null,o[82]=j,o[83]=Fe):Fe=o[83],o[84]!==x||o[85]!==P||o[86]!==A?(De=(0,de.jsx)(q.TimelineSyncStatus,{sync:P,toast:A,onDismiss:x}),o[84]=x,o[85]=P,o[86]=A,o[87]=De):De=o[87],o[88]!==Fe||o[89]!==De?(Oe=(0,de.jsxs)(de.Fragment,{children:[Fe,De]}),o[88]=Fe,o[89]=De,o[90]=Oe):Oe=o[90];const We=Oe;let Be;o[91]!==Ae||o[92]!==Re||o[93]!==We||o[94]!==f?(Be=(0,de.jsxs)(He,{disabled:f,children:[Re,Ae,We]}),o[91]=Ae,o[92]=Re,o[93]=We,o[94]=f,o[95]=Be):Be=o[95];const Ee=Be;let qe,Le,Ke;return o[96]!==f||o[97]!==V?(qe=f?(0,de.jsxs)(t.View,{style:Xe.archivingOverlay,testID:"agent-archiving-overlay",children:[(0,de.jsx)(Ne,{size:"large",uniProps:Je}),(0,de.jsx)(n.Text,{style:Xe.archivingTitle,children:V("agentPanel.states.archivingTitle")}),(0,de.jsx)(n.Text,{style:Xe.archivingSubtitle,children:V("agentPanel.states.archivingSubtitle")})]}):null,o[96]=f,o[97]=V,o[98]=qe):qe=o[98],o[99]!==Ee||o[100]!==qe?(Le=(0,de.jsxs)(t.View,{style:Xe.root,children:[Ee,qe]}),o[99]=Ee,o[100]=qe,o[101]=Le):Le=o[101],o[102]!==Ie.replaceText||o[103]!==Ie.textSource||o[104]!==k||o[105]!==Le?(Ke=(0,de.jsx)(R.RewindComposerRestoreProvider,{textSource:Ie.textSource,setText:Ie.replaceText,onRewindComplete:k,children:Le}),o[102]=Ie.replaceText,o[103]=Ie.textSource,o[104]=k,o[105]=Le,o[106]=Ke):Ke=o[106],Ke});function He(e){const t=(0,s.c)(5),{children:n,disabled:o}=e;let a,c;return t[0]!==n?(a=(0,de.jsx)(x.ComposerDock,{children:n}),t[0]=n,t[1]=a):a=t[1],t[2]!==o||t[3]!==a?(c=(0,de.jsx)(w.FileDropZone,{style:Xe.container,disabled:o,children:a}),t[2]=o,t[3]=a,t[4]=c):c=t[4],c}function Me(e){const o=(0,s.c)(14),{isRetrying:c,onRetry:l}=e,{t:u}=(0,p.useTranslation)();let f,h,I,S,y;return o[0]!==u?(f=u("agentPanel.states.timelineSyncFailed"),o[0]=u,o[1]=f):f=o[1],o[2]!==f?(h=(0,de.jsx)(n.Text,{style:Xe.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,de.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?(y=(0,de.jsx)(t.View,{style:Xe.timelineSyncCalloutRail,children:(0,de.jsx)(t.View,{style:Xe.timelineSyncCalloutContent,children:(0,de.jsxs)(t.View,{style:Xe.timelineSyncCallout,testID:"agent-timeline-sync-error",children:[h,S]})})}),o[11]=h,o[12]=S,o[13]=y):y=o[13],y}const Ve=(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,O.useIsCompactFormFactor)(),A=(0,P.useWorkspaceHasDiffStat)(t,n),x=l&&(p||A),w=x?(0,j.resolveComposerTrackTailClearance)(I):0,C=x?(0,j.resolveComposerTrackControlClearance)(I):0,b=(0,Y.useSessionStore)(e=>s?e.sessions[t]?.agentStreamTail?.get(s):void 0),k=(0,Y.useSessionStore)((0,S.useShallow)(e=>s?(0,T.getActiveMessageSubmissions)(e.sessions[t]?.messageSubmissions.get(s)):be)),R=(0,Y.useSessionStore)((0,S.useShallow)(e=>s?(0,Y.selectAgentTurnPresentation)(e.sessions[t],s):{isActive:!1,isCancelling:!1,startedAt:null,turnId:null})),F=b??Ce,_=(0,y.useStoreWithEqualityFn)(Y.useSessionStore,e=>{if(!s)return Pe;const n=e.sessions[t]?.pendingPermissions;if(!n)return Pe;const o=[];for(const e of n.values())e.agentId===s&&o.push(e);return o.length>0?o:Pe},S.shallow),D=(0,u.useMemo)(()=>0===_.length?ke:new Map(_.map(e=>[e.key,e])),[_]);return(0,de.jsx)(v.AgentStreamView,{ref:e,agentId:o.id,serverId:t,context:o,streamItems:F,pendingPermissions:D,routeBottomAnchorRequest:a,isAuthoritativeHistoryReady:c,bottomOverlayTailClearance:w,bottomOverlayControlClearance:C,toast:f,pendingMessageSubmissions:k,turnPresentation:R,onOpenWorkspaceFile:h})}),ze=(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:y}=e;if(!n)return null;if(l){let e;return t[0]!==n||t[1]!==o?(e=(0,de.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 v;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]!==y||t[12]!==o?(v=(0,de.jsx)(Be,{agentId:n,serverId:o,isPaneFocused:a,cwd:u,isSubmitLoading:p,agentInputDraft:f,onAttentionInputFocus:h,onAttentionPromptSend:I,onComposerHeightChange:S,onMessageSent:y}),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]=y,t[12]=o,t[13]=v):v=t[13],v});function Be(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,y=(0,O.useIsCompactFormFactor)();let v;n[0]!==y?(v={initialIsBelow:y},n[0]=y,n[1]=v):v=n[1];const{onLayout:A,isBelow:x}=(0,B.useContainerWidthBelow)(O.COMPACT_FORM_FACTOR_WIDTH,v),w=(0,L.usePaneContext)(),C=(0,se.useSettings)(Ke),{workspaceId:b,tabId:P,retargetCurrentTab:j}=w,{archiveAgent:T}=(0,z.useArchiveAgent)(),R=(0,ee.useWorkspaceLayoutStore)(Le),F=(0,ee.useWorkspaceLayoutStore)(qe),_=(0,ee.useWorkspaceLayoutStore)(Ee);let H;n[2]!==l||n[3]!==a||n[4]!==b?(H={serverId:a,cwd:l,workspaceId:b},n[2]=l,n[3]=a,n[4]=b,n[5]=H):H=n[5];const M=(0,D.useWorkspaceAttachmentScopeKey)(H);let V;n[6]!==M?(V=[M],n[6]=M,n[7]=V):V=n[7];const E=V;let q;n[8]!==l||n[9]!==y||n[10]!==C||n[11]!==a||n[12]!==b?(q=e=>{"review"===e.kind&&(0,ne.openWorkspaceChanges)({isCompact:y,workspaceKey:(0,te.buildWorkspaceTabPersistenceKey)({serverId:a,workspaceId:b}),checkout:{serverId:a,cwd:l,isGit:!0},preferences:C})},n[8]=l,n[9]=y,n[10]=C,n[11]=a,n[12]=b,n[13]=q):q=n[13];const K=q;let $;n[14]!==o||n[15]!==T||n[16]!==R||n[17]!==F||n[18]!==j||n[19]!==a||n[20]!==P||n[21]!==_||n[22]!==b?($=async e=>{const t=ue(Y.useSessionStore.getState(),a,o);if(!t)throw new Error("Agent not found");const n=(0,te.buildWorkspaceTabPersistenceKey)({serverId:a,workspaceId:b});n&&(_(n,o),F(n,o)),"replace-agent-with-draft"===e.kind?j({kind:"draft",draftId:(0,Q.generateDraftId)(),setup:(0,le.buildDraftAgentSetup)(t)}):n&&R(n,P),await T({serverId:a,agentId:o})},n[14]=o,n[15]=T,n[16]=R,n[17]=F,n[18]=j,n[19]=a,n[20]=P,n[21]=_,n[22]=b,n[23]=$):$=n[23];const N=$,U=p.textSource,J=p.editText,G=p.textReplacement,X=p.attachments,Z=p.setAttachments,re=p.clear,ie=String(p.attachmentFocusRequestId);let oe,ae;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]!==E||n[32]!==l||n[33]!==N||n[34]!==K||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]!==ie||n[44]!==b?(oe=(0,de.jsx)(k.Composer,{agentId:o,serverId:a,workspaceId:b,blurOnSubmit:W.isNative,isPaneFocused:c,textSource:U,onChangeText:J,textReplacement:G,attachments:X,attachmentScopeKeys:E,onOpenWorkspaceAttachment:K,onChangeAttachments:Z,cwd:l,clearDraft:re,autoFocus:!0,autoFocusKey:ie,isSubmitLoading:u,onAttentionInputFocus:f,onAttentionPromptSend:h,onComposerHeightChange:I,onMessageSent:S,onClientSlashCommand:N,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]=E,n[32]=l,n[33]=N,n[34]=K,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]=ie,n[44]=b,n[45]=oe):oe=n[45],n[46]!==A||n[47]!==oe?(ae=(0,de.jsx)(t.View,{style:Ge.inputAreaWrapper,onLayout:A,children:oe}),n[46]=A,n[47]=oe,n[48]=ae):ae=n[48],ae}function Ee(e){return e.unpinAgent}function qe(e){return e.hideAgent}function Le(e){return e.closeTab}function Ke(e){return e.openInSidePane}function $e(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,de.jsx)(n.Text,{style:Xe.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,de.jsx)(n.Text,{style:Xe.statusText,children:c}),o[7]=c,o[8]=l):l=o[8],o[9]!==s||o[10]!==l?(u=(0,de.jsx)(t.View,{style:Xe.container,children:(0,de.jsxs)(t.View,{style:Xe.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,de.jsx)(t.View,{style:Xe.container,children:(0,de.jsx)(t.View,{style:Xe.centerState,children:f||h?(0,de.jsxs)(de.Fragment,{children:[(0,de.jsx)(Ne,{size:"large",uniProps:Ue}),(0,de.jsx)(n.Text,{style:Xe.loadingText,children:p(h?"agentPanel.unavailable.preparingSession":"agentPanel.unavailable.connecting",{serverLabel:a})}),(0,de.jsx)(n.Text,{style:Xe.statusText,children:p(h?"agentPanel.unavailable.showSoon":"agentPanel.unavailable.showWhenOnline")})]}):(0,de.jsxs)(de.Fragment,{children:[(0,de.jsx)(n.Text,{style:Xe.offlineTitle,children:p("agentPanel.unavailable.reconnectingTo",{serverLabel:a})}),(0,de.jsx)(n.Text,{style:Xe.offlineDescription,children:p("agentPanel.unavailable.showAgainWhenReachable")}),l?(0,de.jsx)(n.Text,{style:Xe.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 Ne=(0,h.withUnistyles)(c.LoadingSpinner),Ue=e=>({color:e.colors.foregroundMuted}),Je=e=>({color:e.colors.foreground}),Ge=f.default.create({content:{flex:1},inputAreaWrapper:{width:"100%",flexShrink:1}}),Xe=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"},W.isWeb?{userSelect:"none"}:{}),timelineSyncCalloutRail:{width:"100%",alignItems:"center",paddingHorizontal:e.spacing[4],paddingTop:e.spacing[2],uni__dependencies:[0]},timelineSyncCalloutContent:{width:"100%",maxWidth:O.MAX_CONTENT_WIDTH},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]}}))},4597,[895,896,453,3466,2983,2984,1217,36,853,59,234,146,56,3561,3417,3738,4598,4701,4222,4356,3693,4702,4361,4704,4501,3428,4645,3794,894,3606,1216,880,4705,4502,4706,3593,4402,4707,4708,4323,4595,4262,4488,4709,4710,4711,4717,3605,3537,3420,3557,3538,4319,883,4721,3611,3595,3601,3437,4467,279]);
|
|
16253
16253
|
__d(function(g,r,i,a,m,_e,d){"use strict";const e=["itemId","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 je}});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=t(h),y=r(d[8]);r(d[9]),r(d[10]),r(d[11]),r(d[12]);var f=r(d[13]),S=r(d[14]),v=r(d[15]),x=r(d[16]),b=t(x),w=r(d[17]),T=r(d[18]),C=r(d[19]),j=r(d[20]),_=r(d[21]),P=r(d[22]),k=r(d[23]),O=r(d[24]),H=r(d[25]),R=r(d[26]),F=r(d[27]),A=r(d[28]),B=r(d[29]),M=r(d[30]),E=r(d[31]),L=r(d[32]),q=r(d[33]),D=r(d[34]),W=r(d[35]),z=r(d[36]),V=r(d[37]),N=r(d[38]),G=r(d[39]),K=r(d[40]),U=r(d[41]),$=r(d[42]),X=r(d[43]),J=r(d[44]),Q=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]),ie=r(d[53]),re=r(d[54]);function ae(e){return e.pendingPermissions||e.turnFooter||0!==e.bottomOverlayInset?(0,re.jsxs)(re.Fragment,{children:[e.turnFooter,e.pendingPermissions?(0,re.jsx)(l.View,{style:qe.contentWrapper,children:(0,re.jsx)(l.View,{style:qe.listHeaderContent,children:e.pendingPermissions})}):null,e.bottomOverlayInset>0?(0,re.jsx)(le,{height:e.bottomOverlayInset}):null]}):null}function le(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,re.jsx)(l.View,{style:o}),t[2]=o,t[3]=u):u=t[3],u}function de(e){if(!e.content)return null;const t=e.layoutItem.completedFooter,n=t?(0,re.jsx)(G.CompletedTurnFooterRow,{strategy:e.strategy,items:t.items,timing:t.timing,startIndex:t.startIndex,supportsTimelineCursor:e.supportsTimelineCursor,onForkAssistantTurn:e.onForkAssistantTurn}):null,s=(0,re.jsx)(We,{itemId:e.layoutItem.item.id,gapBelow:e.layoutItem.gapBelow,children:e.content});return"footer-then-content"===e.layoutItem.frameOrder?(0,re.jsxs)(re.Fragment,{children:[n,s]}):(0,re.jsxs)(re.Fragment,{children:[s,n]})}function ce(e){return e.renderModel.boundary.hasVirtualizedHistory||e.renderModel.boundary.hasMountedHistory||e.renderModel.boundary.hasLiveHead||e.renderModel.auxiliary.pendingPermissions||e.renderModel.auxiliary.turnFooter?null:(0,re.jsx)(l.View,{style:e.emptyStateStyle,children:(0,re.jsx)(o.Text,{style:qe.emptyStateText,children:e.emptyText})})}const ue=(0,h.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,re.jsx)(re.Fragment,{children:o}),t[3]=o,t[4]=l):l=t[4],l});function pe(e){const t=e.layoutItemById.get(e.item.id);return t?(0,re.jsx)(ue,{item:e.item,layoutItem:t,renderStreamItem:e.renderStreamItem}):null}function me(e){const t=e.layoutItemById.get(e.item.id);return t?e.renderStreamItem(t):null}const ge=["supportsStreaming","supportsSessionPersistence","supportsDynamicModes","supportsMcpServers","supportsReasoningStream","supportsToolInvocations","supportsRewindConversation","supportsRewindFiles","supportsRewindBoth"],he=[];function Ie(e,t){const n=(0,h.useRef)(e);return t&&(n.current=e),t?e:n.current}const ye=[];const fe=(0,h.forwardRef)(function(e,t){const n=(0,c.c)(246),{agentId:o,serverId:p,context:f,streamItems:v,streamHead:_,pendingPermissions:k,pendingMessageSubmissions:A,turnPresentation:B,routeBottomAnchorRequest:ne,isAuthoritativeHistoryReady:le,bottomOverlayTailClearance:ue,bottomOverlayControlClearance:ge,toast:fe,onOpenWorkspaceFile:Se,readOnly:ve,historyPagination:xe}=e,be=void 0===A?ye:A,we=void 0===ne?null:ne,Te=void 0===le||le,Ce=void 0===ue?0:ue,je=void 0!==ve&&ve,{t:Oe}=(0,y.useTranslation)(),He=(0,R.useSettings)(ze),Re=(0,R.useSettings)(Ve),Fe=(0,R.useSettings)(Ne),Ae=(0,h.useRef)(null);let Be;n[0]!==be?(Be=new Set(be.map(Ge)),n[0]=be,n[1]=Be):Be=n[1];const Me=Be,Le=(0,S.useIsCompactFormFactor)();let De;n[2]!==Le?(De=(0,D.resolveStreamRenderStrategy)({platform:"web",isMobileBreakpoint:Le}),n[2]=Le,n[3]=De):De=n[3];const We=De,[Ke,Ue]=(0,h.useState)(!0);let $e;n[4]===Symbol.for("react.memo_cache_sentinel")?($e=new Set,n[4]=$e):$e=n[4];const[Xe,Je]=(0,h.useState)($e);let Qe;n[5]===Symbol.for("react.memo_cache_sentinel")?(Qe=new Set,n[5]=Qe):Qe=n[5];const[Ye,Ze]=(0,h.useState)(Qe),et=p??f.serverId??"",tt=(0,ie.useInstalledTimelineTransform)(et);let nt;n[6]!==et?(nt=e=>e.sessions[et]?.client??null,n[6]=et,n[7]=nt):nt=n[7];const st=(0,P.useSessionStore)(nt);let ot;n[8]!==o||n[9]!==et?(ot=e=>e.sessions[et]?.agentStreamHead?.get(o),n[8]=o,n[9]=et,n[10]=ot):ot=n[10];const it=(0,P.useSessionStore)(ot),rt=_??it;let at;n[11]!==je||n[12]!==et||n[13]!==fe?(at={serverId:et,toast:fe,readOnly:je},n[11]=je,n[12]=et,n[13]=fe,n[14]=at):at=n[14];const lt=(0,ee.useForkAgent)(at);let dt;n[15]!==et?(dt=e=>!0===e.sessions[et]?.serverInfo?.features?.agentForkContextCursor,n[15]=et,n[16]=dt):dt=n[16];const ct=(0,P.useSessionStore)(dt);let ut;n[17]!==et?(ut=e=>!0===e.sessions[et]?.serverInfo?.features?.agentTimelinePromptIndex,n[17]=et,n[18]=ut):ut=n[18];const pt=(0,P.useSessionStore)(ut);let mt;n[19]!==o||n[20]!==et?(mt=e=>e.sessions[et]?.agentTimelineCursor.get(o)?.epoch??null,n[19]=o,n[20]=et,n[21]=mt):mt=n[21];const gt=(0,P.useSessionStore)(mt);let ht;n[22]!==o||n[23]!==et?(ht=e=>!0===e.sessions[et]?.agentTimelineHasNewer.get(o),n[22]=o,n[23]=et,n[24]=ht):ht=n[24];const It=(0,P.useSessionStore)(ht);let yt;n[25]!==f.cwd?(yt=f.cwd?.trim()||"",n[25]=f.cwd,n[26]=yt):yt=n[26];const ft=yt;let St;n[27]!==f.workspaceId||n[28]!==et||n[29]!==ft?(St={serverId:et,workspaceId:f.workspaceId,workspaceRoot:ft},n[27]=f.workspaceId,n[28]=et,n[29]=ft,n[30]=St):St=n[30];const{requestDirectoryListing:vt}=(0,O.useFileExplorerActions)(St);let xt;n[31]!==o||n[32]!==et||n[33]!==fe?(xt={serverId:et,agentId:o,toast:fe},n[31]=o,n[32]=et,n[33]=fe,n[34]=xt):xt=n[34];const bt=(0,H.useLoadOlderAgentHistory)(xt),{isLoadingOlder:wt,hasOlder:Tt,progressKey:Ct,loadOlder:jt}=xe?{isLoadingOlder:xe.isLoadingOlder,hasOlder:xe.hasOlder,progressKey:xe.progressKey,loadOlder:xe.onLoadOlder}:bt;let _t;n[35]===Symbol.for("react.memo_cache_sentinel")?(_t=x.FadeIn.duration(200),n[35]=_t):_t=n[35];const Pt=_t;let kt;n[36]===Symbol.for("react.memo_cache_sentinel")?(kt=x.FadeOut.duration(200),n[36]=kt):kt=n[36];const Ot=kt;let Ht,Rt,Ft;n[37]===Symbol.for("react.memo_cache_sentinel")?(Ht=()=>{Ue(!0),Je(new Set),Ze(new Set)},n[37]=Ht):Ht=n[37],n[38]!==o?(Rt=[o],n[38]=o,n[39]=Rt):Rt=n[39],(0,h.useEffect)(Ht,Rt),n[40]!==f.cwd||n[41]!==f.projectPlacement?.checkout?.isGit||n[42]!==f.workspaceId||n[43]!==Le||n[44]!==Se||n[45]!==vt||n[46]!==et?(Ft=(e,t)=>{if(!e.path)return;const n=(0,J.normalizeInlinePathTarget)(e.path,f.cwd);if(n){if(n.file){const s=(0,Q.normalizeWorkspaceFileLocation)({path:n.file,lineStart:e.lineStart,lineEnd:e.lineEnd});if(!s)return;return Se?void Se({location:s,disposition:t}):void(f.workspaceId&&(0,Y.navigateToWorkspace)({serverId:et,workspaceId:f.workspaceId,target:(0,Q.createWorkspaceFileTabTarget)(s)}))}vt(n.directory,{recordHistory:!1,setCurrentPath:!1}),(0,C.openExplorerSidebarView)({isCompact:Le,workspaceKey:(0,T.buildWorkspaceTabPersistenceKey)({serverId:et,workspaceId:f.workspaceId??""}),checkout:{serverId:et,cwd:f.cwd,isGit:f.projectPlacement?.checkout?.isGit??!0},view:"files"})}},n[40]=f.cwd,n[41]=f.projectPlacement?.checkout?.isGit,n[42]=f.workspaceId,n[43]=Le,n[44]=Se,n[45]=vt,n[46]=et,n[47]=Ft):Ft=n[47];const At=(0,Z.useStableEvent)(Ft);let Bt;n[48]!==At?(Bt=e=>{At({raw:e,path:e},"preferred")},n[48]=At,n[49]=Bt):Bt=n[49];const Mt=(0,Z.useStableEvent)(Bt);let Et;n[50]!==o||n[51]!==f||n[52]!==lt?(Et=async e=>{const{target:t,boundary:n}=e;await lt({agentId:o,agent:f,workspaceId:f.workspaceId,target:t,boundary:n})},n[50]=o,n[51]=f,n[52]=lt,n[53]=Et):Et=n[53];const Lt=(0,Z.useStableEvent)(Et);let qt;n[54]!==o||n[55]!==f||n[56]!==lt?(qt=async e=>{await lt({agentId:o,agent:f,workspaceId:f.workspaceId,target:e})},n[54]=o,n[55]=f,n[56]=lt,n[57]=qt):qt=n[57];const Dt=(0,Z.useStableEvent)(qt),Wt=(0,se.useRetainedPanelActive)(),zt=Ie(v,Wt),Vt=Ie(rt,Wt),Nt=Ie(B,Wt),Gt=Nt.isActive;let Kt;n[58]===Symbol.for("react.memo_cache_sentinel")?(Kt=(0,E.createStreamPresentation)(),n[58]=Kt):Kt=n[58];const Ut=Kt,$t=Vt??he;let Xt;n[59]!==zt||n[60]!==Gt||n[61]!==$t||n[62]!==Re||n[63]!==tt?(Xt=Ut({tail:zt,head:$t,transform:tt,level:Re,isTurnActive:Gt}),n[59]=zt,n[60]=Gt,n[61]=$t,n[62]=Re,n[63]=tt,n[64]=Xt):Xt=n[64];const Jt=Xt,{start:Qt,hasLocalHistory:Yt,revealLoadedHistory:Zt,loadOlder:en}=(0,oe.useStreamHistoryWindow)({agentId:o,items:Jt.tail,loadRemoteOlder:jt}),tn=wt,nn=Yt||Tt,sn=`${Ct??"local"}:${Qt}`;let on;n[65]!==Nt.startedAt||n[66]!==Qt||n[67]!==Le||n[68]!==Gt||n[69]!==Jt.head||n[70]!==Jt.tail?(on=(0,q.buildAgentStreamRenderModel)({isTurnActive:Gt,activeTurnStartedAt:Nt.startedAt,tail:Jt.tail,head:Jt.head,platform:te.isWeb?"web":"native",isMobileBreakpoint:Le,historyStart:Qt}),n[65]=Nt.startedAt,n[66]=Qt,n[67]=Le,n[68]=Gt,n[69]=Jt.head,n[70]=Jt.tail,n[71]=on):on=n[71];const rn=on;let an;n[72]!==rn.history||n[73]!==rn.segments.liveHead||n[74]!==rn.turnTiming.byAssistantId||n[75]!==Gt||n[76]!==We?(an=(0,U.layoutStream)({strategy:We,isTurnActive:Gt,history:rn.history,liveHead:rn.segments.liveHead,timingByAssistantId:rn.turnTiming.byAssistantId}),n[72]=rn.history,n[73]=rn.segments.liveHead,n[74]=rn.turnTiming.byAssistantId,n[75]=Gt,n[76]=We,n[77]=an):an=n[77];const ln=an;let dn;n[78]!==Oe||n[79]!==fe?(dn=()=>{fe?.error(Oe("agentStream.historyLoadFailed"))},n[78]=Oe,n[79]=fe,n[80]=dn):dn=n[80];const cn=dn;let un;n[81]!==rn.history||n[82]!==rn.segments.liveHead?(un=new Set([...rn.history,...rn.segments.liveHead].map(E.getStreamItemMessageId)),n[81]=rn.history,n[82]=rn.segments.liveHead,n[83]=un):un=n[83];const pn=un,mn=pt&&Fe;let gn;n[84]!==o||n[85]!==Vt||n[86]!==zt||n[87]!==cn||n[88]!==et||n[89]!==Zt||n[90]!==mn||n[91]!==gt||n[92]!==pn?(gn={agentId:o,serverId:et,timelineEpoch:gt,tail:zt,head:Vt,enabled:mn,viewportRef:Ae,onJumpError:cn,visibleMessageIds:pn,revealLoadedMessage:Zt},n[84]=o,n[85]=Vt,n[86]=zt,n[87]=cn,n[88]=et,n[89]=Zt,n[90]=mn,n[91]=gt,n[92]=pn,n[93]=gn):gn=n[93];const hn=(0,z.useChatOutline)(gn);let In,yn,fn;n[94]===Symbol.for("react.memo_cache_sentinel")?(In=()=>({scrollToBottom(e){const t=void 0===e?"jump-to-bottom":e;Ae.current?.scrollToBottom(t)},prepareForViewportChange(){Ae.current?.prepareForViewportChange()}}),yn=[],n[94]=In,n[95]=yn):(In=n[94],yn=n[95]),(0,h.useImperativeHandle)(t,In,yn),n[96]!==o||n[97]!==cn||n[98]!==It||n[99]!==et?(fn=()=>{It?(0,F.returnToTimelineTail)({fetchTail:()=>(0,V.getHostRuntimeStore)().fetchAgentTimeline(et,o,Object.assign({},(0,N.planTimelineTailFetch)())),scrollToBottom:()=>Ae.current?.scrollToBottom("jump-to-bottom"),onError:cn}):Ae.current?.scrollToBottom("jump-to-bottom")},n[96]=o,n[97]=cn,n[98]=It,n[99]=et,n[100]=fn):fn=n[100];const Sn=fn;let vn;n[101]!==We?(vn=(e,t)=>{We.shouldDisableParentScrollOnInlineDetailsExpansion()&&Je(n=>{const s=new Set(n);return t?s.add(e):s.delete(e),s})},n[101]=We,n[102]=vn):vn=n[102];const xn=vn;let bn;n[103]===Symbol.for("react.memo_cache_sentinel")?(bn=(e,t)=>{Ze(n=>{const s=new Set(n);return t?s.add(e):s.delete(e),s})},n[103]=bn):bn=n[103];const wn=bn;let Tn;n[104]!==o||n[105]!==st||n[106]!==f.capabilities||n[107]!==Me||n[108]!==et?(Tn=(e,t)=>(0,re.jsx)(j.UserMessage,{serverId:et,agentId:o,messageId:t.messageId,message:t.text,images:t.images,attachments:t.attachments,timestamp:t.timestamp.getTime(),capabilities:f.capabilities,client:st,isFirstInGroup:e.isFirstInUserGroup,isLastInGroup:e.isLastInUserGroup,isPending:void 0!==t.clientMessageId&&Me.has(t.clientMessageId)}),n[104]=o,n[105]=st,n[106]=f.capabilities,n[107]=Me,n[108]=et,n[109]=Tn):Tn=n[109];const Cn=Tn;let jn;n[110]!==o||n[111]!==st||n[112]!==At||n[113]!==et||n[114]!==fe||n[115]!==ft?(jn=(e,t)=>(0,re.jsx)(J.AssistantFileLinkResolverProvider,{client:st,serverId:et,workspaceRoot:ft,onOpenWorkspaceFile:At,toast:fe,children:(0,re.jsx)(u.ChatFindExpansion,{messageId:(0,E.getStreamItemMessageId)(t),children:n=>(0,re.jsx)(j.AssistantMessage,{renderFullContent:n,occurrenceKey:(0,$.createAssistantImageOccurrenceKey)({agentId:o,itemId:t.id}),message:t.text,timestamp:t.timestamp.getTime(),workspaceRoot:ft,serverId:et,client:st,spacing:e.assistantSpacing,phase:e.phase})})}),n[110]=o,n[111]=st,n[112]=At,n[113]=et,n[114]=fe,n[115]=ft,n[116]=jn):jn=n[116];const _n=jn;let Pn;n[117]!==He||n[118]!==xn?(Pn=(e,t)=>(0,re.jsx)(Pe,{itemId:t.id,onInlineDetailsExpandedChangeByItemId:xn,text:t.text,status:t.status,isLastInSequence:e.isLastInToolSequence,defaultExpanded:He}),n[117]=He,n[118]=xn,n[119]=Pn):Pn=n[119];const kn=Pn;let On;n[120]!==f.cwd||n[121]!==Mt||n[122]!==xn?(On=(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,re.jsx)(j.SpeakMessage,{message:o.detail.input,timestamp:e.timestamp.getTime()}):(0,re.jsx)(ke,{itemId:e.id,onInlineDetailsExpandedChangeByItemId:xn,toolName:o.name,error:o.error,status:o.status,detail:o.detail,cwd:f.cwd,metadata:o.metadata,isLastInSequence:t,onOpenFilePath:Mt,maxDetailHeight:n})}const o=s.data;return(0,re.jsx)(ke,{itemId:e.id,onInlineDetailsExpandedChangeByItemId:xn,toolName:o.toolName,args:o.arguments,result:o.result,status:o.status,isLastInSequence:t,onOpenFilePath:Mt,maxDetailHeight:n})},n[120]=f.cwd,n[121]=Mt,n[122]=xn,n[123]=On):On=n[123];const Hn=On;let Rn;n[124]!==Jt.groupsByHostId?(Rn=e=>Jt.groupsByHostId.get(e),n[124]=Jt.groupsByHostId,n[125]=Rn):Rn=n[125];const Fn=(0,Z.useStableEvent)(Rn);let An;n[126]!==Ye||n[127]!==Fn||n[128]!==Hn?(An=(e,t)=>{const n=Fn(t.id);if(!n)return Hn(t,e.isLastInToolSequence);const s=Ye.has(n.run.id);return(0,re.jsx)(L.OverviewToolCallGroupView,{group:n,expanded:s,isLastInSequence:e.isLastInToolSequence,onExpandedChange:wn,children:s?n.run.calls.map((e,t)=>(0,re.jsx)(I.default.Fragment,{children:Hn(e,t===n.run.calls.length-1,200)},e.id)):null})},n[126]=Ye,n[127]=Fn,n[128]=Hn,n[129]=An):An=n[129];const Bn=An;let Mn;n[130]!==o||n[131]!==_n||n[132]!==kn||n[133]!==Bn||n[134]!==Cn||n[135]!==et?(Mn=e=>{const t=e.item;switch(t.kind){case"user_message":return Cn(e,t);case"assistant_message":return _n(e,t);case"thought":return kn(e,t);case"tool_call":return Bn(e,t);case"notification":return(0,re.jsx)(j.Notification,{level:t.level,message:t.message});case"todo_list":return(0,re.jsx)(j.TodoListCard,{items:t.items,activity:t.activity});case"compaction":return(0,re.jsx)(j.CompactionMarker,{status:t.status,trigger:t.trigger,preTokens:t.preTokens});case"plugin":return(0,re.jsx)(ie.PluginTimelineItemView,{agentId:o,item:t,serverId:et});default:return null}},n[130]=o,n[131]=_n,n[132]=kn,n[133]=Bn,n[134]=Cn,n[135]=et,n[136]=Mn):Mn=n[136];const En=Mn,Ln=ln.auxiliaryTurnFooter;let qn;n[137]!==Lt||n[138]!==je||n[139]!==En||n[140]!==We||n[141]!==ct?(qn=e=>de({content:En(e),layoutItem:e,strategy:We,supportsTimelineCursor:ct,onForkAssistantTurn:je?void 0:Lt}),n[137]=Lt,n[138]=je,n[139]=En,n[140]=We,n[141]=ct,n[142]=qn):qn=n[142];const Dn=qn;let Wn,zn;n[143]!==k?(Wn=Array.from(k.values()),n[143]=k,n[144]=Wn):Wn=n[144],n[145]!==o||n[146]!==Wn?(zn=Wn.filter(e=>e.agentId===o),n[145]=o,n[146]=Wn,n[147]=zn):zn=n[147];const Vn=zn;let Nn;var Gn;n[148]!==st||n[149]!==Vn?(Nn=0===(Gn={pendingPermissions:Vn,client:st}).pendingPermissions.length?null:(0,re.jsx)(l.View,{style:qe.permissionsContainer,children:Gn.pendingPermissions.map(e=>(0,re.jsx)(Ee,{permission:e,client:Gn.client},e.key))}),n[148]=st,n[149]=Vn,n[150]=Nn):Nn=n[150];const Kn=Nn;let Un;n[151]!==rn.turnTiming.runningStartedAt||n[152]!==Ln||n[153]!==Lt||n[154]!==Dt||n[155]!==Gt||n[156]!==je||n[157]!==We||n[158]!==ct?(Un=Gt||Ln?(0,re.jsx)(G.TurnFooter,{isRunning:Gt,inFlightTurnStartedAt:rn.turnTiming.runningStartedAt,host:Ln,strategy:We,supportsTimelineCursor:ct,onForkAssistantTurn:je?void 0:Lt,onForkInFlightTurn:je?void 0:Dt}):null,n[151]=rn.turnTiming.runningStartedAt,n[152]=Ln,n[153]=Lt,n[154]=Dt,n[155]=Gt,n[156]=je,n[157]=We,n[158]=ct,n[159]=Un):Un=n[159];const $n=Un;let Xn,Jn;n[160]!==Kn||n[161]!==$n?(Xn={pendingPermissions:Kn,turnFooter:$n},n[160]=Kn,n[161]=$n,n[162]=Xn):Xn=n[162],n[163]!==rn||n[164]!==Xn?(Jn=Object.assign({},rn,{boundary:rn.boundary,auxiliary:Xn}),n[163]=rn,n[164]=Xn,n[165]=Jn):Jn=n[165];const Qn=Jn;let Yn;n[166]===Symbol.for("react.memo_cache_sentinel")?(Yn=[qe.emptyState,qe.contentWrapper],n[166]=Yn):Yn=n[166];const Zn=Yn;let es;var ts;let ns;n[167]!==ge?(ts=ge,es=Math.max(16,ts??0),n[167]=ge,n[168]=es):es=n[168],n[169]!==es?(ns=[qe.scrollToBottomContainer,{bottom:es}],n[169]=es,n[170]=ns):ns=n[170];const ss=ns;let os;n[171]!==Qn||n[172]!==Oe?(os=ce({renderModel:Qn,emptyStateStyle:Zn,emptyText:Oe("agentStream.empty")}),n[171]=Qn,n[172]=Oe,n[173]=os):os=n[173];const is=os,{boundary:rs,auxiliary:as}=Qn;let ls;if(n[174]!==ln.history){ls=new Map;for(const e of ln.history)ls.set(e.item.id,e);n[174]=ln.history,n[175]=ls}else ls=n[175];const ds=ls;let cs;if(n[176]!==ln.liveHead){cs=new Map;for(const e of ln.liveHead)cs.set(e.item.id,e);n[176]=ln.liveHead,n[177]=cs}else cs=n[177];const us=cs;let ps;n[178]!==hn||n[179]!==ds||n[180]!==us?(ps=e=>{const t=null===e?void 0:ds.get(e)??us.get(e);hn.reportReadingPosition(t?.item.timelineCursor?.seq??null)},n[178]=hn,n[179]=ds,n[180]=us,n[181]=ps):ps=n[181];const ms=(0,Z.useStableEvent)(ps);let gs;n[182]!==ds||n[183]!==Dn?(gs=e=>pe({item:e,layoutItemById:ds,renderStreamItem:Dn}),n[182]=ds,n[183]=Dn,n[184]=gs):gs=n[184];const hs=gs;let Is;n[185]!==hs?(Is=e=>hs(e),n[185]=hs,n[186]=Is):Is=n[186];const ys=Is;let fs;n[187]!==hs?(fs=e=>hs(e),n[187]=hs,n[188]=fs):fs=n[188];const Ss=fs;let vs;n[189]!==us||n[190]!==Dn?(vs=e=>me({item:e,layoutItemById:us,renderStreamItem:Dn}),n[189]=us,n[190]=Dn,n[191]=vs):vs=n[191];const xs=(0,Z.useStableEvent)(vs);let bs;n[192]!==as.pendingPermissions||n[193]!==as.turnFooter||n[194]!==Ce?(bs=()=>{const e=as.turnFooter&&!as.pendingPermissions?G.TURN_FOOTER_BOTTOM_SPACING:0,t=(0,K.resolveBottomOverlayTailInset)({requiredTailClearance:Ce,existingTailSpacing:e});return ae({pendingPermissions:as.pendingPermissions,turnFooter:as.turnFooter,bottomOverlayInset:t})},n[192]=as.pendingPermissions,n[193]=as.turnFooter,n[194]=Ce,n[195]=bs):bs=n[195];const ws=bs;let Ts;n[196]!==Ss||n[197]!==ys||n[198]!==ws||n[199]!==xs?(Ts={renderHistoryVirtualizedRow:ys,renderHistoryMountedRow:Ss,renderLiveHeadRow:xs,renderLiveAuxiliary:ws},n[196]=Ss,n[197]=ys,n[198]=ws,n[199]=xs,n[200]=Ts):Ts=n[200];const Cs=Ts;let js;n[201]!==Xe||n[202]!==We?(js=!We.shouldDisableParentScrollOnInlineDetailsExpansion()||0===Xe.size,n[201]=Xe,n[202]=We,n[203]=js):js=n[203];const _s=js;let Ps;n[204]!==Ye||n[205]!==Le||n[206]!==Jt.historyGroupUpdatesByHostId?(Ps={contentById:Jt.historyGroupUpdatesByHostId,displayStateById:Ye,globalDisplayState:Le},n[204]=Ye,n[205]=Le,n[206]=Jt.historyGroupUpdatesByHostId,n[207]=Ps):Ps=n[207];const ks=Ps;let Os,Hs;n[208]!==Vt?(Os=Vt??[],n[208]=Vt,n[209]=Os):Os=n[209],n[210]!==zt||n[211]!==Os?(Hs=[...zt,...Os],n[210]=zt,n[211]=Os,n[212]=Hs):Hs=n[212];const Rs=Hs,Fs=u.ChatFind,As=M.ToolCallSheetProvider,Bs=X.AssistantSelectionCopySurface,Ms=qe,Es=j.MessageOuterSpacingProvider,Ls=We.render({agentId:o,segments:Qn.segments,historyRowRevision:ks,liveHeadRowRevision:Ye,boundary:rs,renderers:Cs,listEmptyComponent:is,viewportRef:Ae,routeBottomAnchorRequest:we,isAuthoritativeHistoryReady:Te,onNearBottomChange:Ue,onReadingPositionChange:ms,onNearHistoryStart:en,isLoadingOlderHistory:tn,hasOlderHistory:nn,olderHistoryProgressKey:sn,scrollEnabled:_s,listStyle:qe.list,baseListContentContainerStyle:qe.listContentContainer,forwardListContentContainerStyle:qe.forwardListContentContainer});let qs,Ds,Ws,zs,Vs,Ns;return n[213]!==Es||n[214]!==Ls?(qs=(0,re.jsx)(Es,{disableOuterSpacing:true,children:Ls}),n[213]=Es,n[214]=Ls,n[215]=qs):qs=n[215],n[216]!==hn.activePrompt||n[217]!==hn.jumpToPrompt||n[218]!==hn.prompts?(Ds=(0,re.jsx)(W.ChatOutlineRail,{prompts:hn.prompts,activePrompt:hn.activePrompt,onJumpToPrompt:hn.jumpToPrompt}),n[216]=hn.activePrompt,n[217]=hn.jumpToPrompt,n[218]=hn.prompts,n[219]=Ds):Ds=n[219],n[220]!==Ke||n[221]!==It||n[222]!==Pt||n[223]!==Ot||n[224]!==Sn||n[225]!==ss||n[226]!==Oe?(Ws=(!Ke||It)&&(0,re.jsx)(l.View,{style:ss,pointerEvents:"box-none",children:(0,re.jsx)(b.default.View,{entering:Pt,exiting:Ot,children:(0,re.jsx)(s.Pressable,{style:qe.scrollToBottomButton,onPress:Sn,accessibilityRole:"button",accessibilityLabel:Oe("agentStream.scrollToBottom"),testID:"scroll-to-bottom-button",children:(0,re.jsx)(w.ChevronDown,{size:24,color:qe.scrollToBottomIcon.color})})})}),n[220]=Ke,n[221]=It,n[222]=Pt,n[223]=Ot,n[224]=Sn,n[225]=ss,n[226]=Oe,n[227]=Ws):Ws=n[227],n[228]!==Bs||n[229]!==Ms.container||n[230]!==qs||n[231]!==Ds||n[232]!==Ws?(zs=(0,re.jsxs)(Bs,{style:Ms.container,children:[qs,Ds,Ws]}),n[228]=Bs,n[229]=Ms.container,n[230]=qs,n[231]=Ds,n[232]=Ws,n[233]=zs):zs=n[233],n[234]!==As||n[235]!==zs?(Vs=(0,re.jsx)(As,{children:zs}),n[234]=As,n[235]=zs,n[236]=Vs):Vs=n[236],n[237]!==Fs||n[238]!==o||n[239]!==Rs||n[240]!==et||n[241]!==Zt||n[242]!==Vs||n[243]!==gt||n[244]!==pn?(Ns=(0,re.jsx)(Fs,{agentId:o,serverId:et,epoch:gt,items:Rs,viewportRef:Ae,revealLoadedMessage:Zt,visibleMessageIds:pn,children:Vs}),n[237]=Fs,n[238]=o,n[239]=Rs,n[240]=et,n[241]=Zt,n[242]=Vs,n[243]=gt,n[244]=pn,n[245]=Ns):Ns=n[245],Ns});function Se(e,t){return ge.every(n=>e?.[n]===t?.[n])}function ve(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 xe(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 be(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"),Se(e.capabilities,t.capabilities)||n.push("agent.capabilities"),e.lastError!==t.lastError&&n.push("agent.lastError"),n.push(...xe(e,t)),n.push(...ve(e.projectPlacement,t.projectPlacement)),n}function we(e,t){return e?.agentId===t?.agentId&&e?.reason===t?.reason&&e?.requestKey===t?.requestKey}function Te(e,t){return e?.hasOlder===t?.hasOlder&&e?.isLoadingOlder===t?.isLoadingOlder&&e?.progressKey===t?.progressKey&&e?.onLoadOlder===t?.onLoadOlder}function Ce(e,t){const n=[];return e.agentId!==t.agentId&&n.push("agentId"),e.serverId!==t.serverId&&n.push("serverId"),n.push(...be(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"),we(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"),Te(e.historyPagination,t.historyPagination)||n.push("historyPagination"),(0,ne.recordRenderProfileReasons)(`AgentStreamView:${t.agentId}`,n),0===n.length}const je=(0,h.memo)(fe,Ce);function Pe(e){const t=(0,c.c)(7),{itemId:n,onInlineDetailsExpandedChangeByItemId:s,text:o,status:l,isLastInSequence:u,defaultExpanded:p}=e,h=(0,k.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,re.jsx)(ke,{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 ke(t){const s=(0,c.c)(10);let o,l,u,p;if(s[0]!==t){var h=t;({itemId:o,onInlineDetailsExpandedChangeByItemId:l}=h),u=(0,n.default)(h,e),s[0]=t,s[1]=o,s[2]=l,s[3]=u}else o=s[1],l=s[2],u=s[3];s[4]!==o||s[5]!==l?(p=e=>l(o,e),s[4]=o,s[5]=l,s[6]=p):p=s[6];const I=p;let y;return s[7]!==I||s[8]!==u?(y=(0,re.jsx)(j.ToolCall,Object.assign({},u,{onInlineDetailsExpandedChange:I})),s[7]=I,s[8]=u,s[9]=y):y=s[9],y}je.displayName="AgentStreamView";const Oe=(0,f.withUnistyles)(p.LoadingSpinner),He=(0,f.withUnistyles)(w.Check),Re=(0,f.withUnistyles)(w.X),Fe=e=>({color:e.colors.foreground}),Ae=e=>({color:e.colors.foregroundMuted}),Be=({pressed:e,hovered:t=!1})=>[De.optionButton,t?De.optionButtonHovered:null,e?De.optionButtonPressed:null];function Me(e){const t=(0,c.c)(16),{action:n,isRespondingAction:u,isResponding:p,isPrimary:h,Icon:I,testID:y,onPress:f}=e;let S;t[0]!==n||t[1]!==f?(S=()=>f(n),t[0]=n,t[1]=f,t[2]=S):S=t[2];const v=S;let x;t[3]!==h?(x=h?[De.optionText,De.optionTextPrimary]:De.optionText,t[3]=h,t[4]=x):x=t[4];const b=x,w=h?Fe:Ae;let T,C;return t[5]!==I||t[6]!==n||t[7]!==w||t[8]!==u||t[9]!==b?(T=u?(0,re.jsx)(Oe,{size:"small",uniProps:w}):(0,re.jsxs)(l.View,{style:De.optionContent,children:[(0,re.jsx)(I,{size:14,uniProps:w}),(0,re.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]!==v||t[12]!==p||t[13]!==T||t[14]!==y?(C=(0,re.jsx)(s.Pressable,{accessibilityRole:"button",testID:y,style:Be,onPress:v,disabled:p,children:T}),t[11]=v,t[12]=p,t[13]=T,t[14]=y,t[15]=C):C=t[15],C}function Ee(e){const t=(0,c.c)(81),{permission:n,client:s}=e,{t:u}=(0,y.useTranslation)(),p=(0,S.useIsCompactFormFactor)(),{request:I}=n,f="plan"===I.kind;let x;t[0]!==f||t[1]!==I.name||t[2]!==I.title||t[3]!==u?(x=f?u("agentStream.permission.plan"):I.title??I.name??u("agentStream.permission.required"),t[0]=f,t[1]=I.name,t[2]=I.title,t[3]=u,t[4]=x):x=t[4];const b=x,w=I.description??"";let T;t[5]!==I.detail||t[6]!==I.input?(T=I.detail??{type:"unknown",input:I.input??null,output:null},t[5]=I.detail,t[6]=I.input,t[7]=T):T=t[7];const C=T;let j;e:{if("question"===I.kind){let e;t[8]===Symbol.for("react.memo_cache_sentinel")?(e=[],t[8]=e):e=t[8],j=e;break e}if(Array.isArray(I.actions)&&I.actions.length>0){j=I.actions;break e}let e,n,s,o,l;t[9]!==u?(e=u("agentStream.permission.deny"),t[9]=u,t[10]=e):e=t[10],t[11]!==e?(n={id:"reject",label:e,behavior:"deny",variant:"danger",intent:"dismiss"},t[11]=e,t[12]=n):n=t[12],t[13]!==f||t[14]!==u?(s=u(f?"agentStream.permission.implement":"agentStream.permission.accept"),t[13]=f,t[14]=u,t[15]=s):s=t[15],t[16]!==s?(o={id:"accept",label:s,behavior:"allow",variant:"primary"},t[16]=s,t[17]=o):o=t[17],t[18]!==n||t[19]!==o?(l=[n,o],t[18]=n,t[19]=o,t[20]=l):l=t[20],j=l}const P=j;let k;e:{if(!I){k=void 0;break e}const e="string"==typeof I.metadata?.planText?I.metadata.planText:void 0;if(e){k=e;break e}const t=I.input?.plan;"string"!=typeof t?k=void 0:k=t}const O=k;let H;t[21]!==s||t[22]!==u?(H={mutationFn:async e=>{if(!s)throw new Error(u("common.errors.daemonClientUnavailable"));return s.respondToPermissionAndWait(e.agentId,e.requestId,e.response,15e3)}},t[21]=s,t[22]=u,t[23]=H):H=t[23];const R=(0,v.useMutation)(H),{reset:F,mutateAsync:M,isPending:E}=R,[L,q]=(0,h.useState)(null);let D,W,z;t[24]!==F?(D=()=>{F(),q(null)},t[24]=F,t[25]=D):D=t[25],t[26]!==n.request.id||t[27]!==F?(W=[n.request.id,F],t[26]=n.request.id,t[27]=F,t[28]=W):W=t[28],(0,h.useEffect)(D,W),t[29]!==n.agentId||t[30]!==n.request.id||t[31]!==M?(z=e=>{M({agentId:n.agentId,requestId:n.request.id,response:e}).catch(Le)},t[29]=n.agentId,t[30]=n.request.id,t[31]=M,t[32]=z):z=t[32];const V=z;let N;t[33]!==V?(N=e=>{q(e.id),"allow"!==e.behavior?V({behavior:"deny",selectedActionId:e.id,message:"Denied by user"}):V({behavior:"allow",selectedActionId:e.id})},t[33]=V,t[34]=N):N=t[34];const G=N,K=!p&&De.optionsContainerDesktop;let U;t[35]!==K?(U=[De.optionsContainer,K],t[35]=K,t[36]=U):U=t[36];const $=U;if("question"===I.kind){let e;return t[37]!==V||t[38]!==E||t[39]!==n?(e=(0,re.jsx)(B.QuestionFormCard,{permission:n,onRespond:V,isResponding:E}),t[37]=V,t[38]=E,t[39]=n,t[40]=e):e=t[40],e}let X,J,Q,Y,Z;if(t[41]!==u?(X=u("agentStream.permission.question"),t[41]=u,t[42]=X):X=t[42],t[43]!==X?(J=(0,re.jsx)(o.Text,{testID:"permission-request-question",style:De.question,children:X}),t[43]=X,t[44]=J):J=t[44],t[45]!==G||t[46]!==E||t[47]!==P||t[48]!==L){let e;t[50]!==G||t[51]!==E||t[52]!==L?(e=e=>{const t="primary"===e.variant,n=L===e.id,s="allow"===e.behavior?He:Re;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,re.jsx)(Me,{action:e,isRespondingAction:n,isResponding:E,isPrimary:t,Icon:s,testID:o,onPress:G},e.id)},t[50]=G,t[51]=E,t[52]=L,t[53]=e):e=t[53],Q=P.map(e),t[45]=G,t[46]=E,t[47]=P,t[48]=L,t[49]=Q}else Q=t[49];t[54]!==$||t[55]!==Q?(Y=(0,re.jsx)(l.View,{style:$,children:Q}),t[54]=$,t[55]=Q,t[56]=Y):Y=t[56],t[57]!==J||t[58]!==Y?(Z=(0,re.jsxs)(re.Fragment,{children:[J,Y]}),t[57]=J,t[58]=Y,t[59]=Z):Z=t[59];const ee=Z;if(f&&O){let e;return t[60]!==w||t[61]!==ee||t[62]!==O||t[63]!==b?(e=(0,re.jsx)(_.PlanCard,{title:b,description:w,text:O,outcome:"pending",footer:ee,testID:"permission-plan-card",disableOuterSpacing:!0}),t[60]=w,t[61]=ee,t[62]=O,t[63]=b,t[64]=e):e=t[64],e}let te,ne,se,oe,ie;return t[65]!==b?(te=(0,re.jsx)(o.Text,{style:De.title,children:b}),t[65]=b,t[66]=te):te=t[66],t[67]!==w?(ne=w?(0,re.jsx)(o.Text,{style:De.description,children:w}):null,t[67]=w,t[68]=ne):ne=t[68],t[69]!==O||t[70]!==u?(se=O?(0,re.jsx)(_.PlanCard,{title:u("agentStream.permission.proposedPlan"),text:O,testID:"permission-plan-card",disableOuterSpacing:!0}):null,t[69]=O,t[70]=u,t[71]=se):se=t[71],t[72]!==f||t[73]!==C?(oe=f?null:(0,re.jsx)(A.ToolCallDetailsContent,{detail:C,maxHeight:200}),t[72]=f,t[73]=C,t[74]=oe):oe=t[74],t[75]!==ee||t[76]!==te||t[77]!==ne||t[78]!==se||t[79]!==oe?(ie=(0,re.jsxs)(l.View,{style:De.container,children:[te,ne,se,oe,ee]}),t[75]=ee,t[76]=te,t[77]=ne,t[78]=se,t[79]=oe,t[80]=ie):ie=t[80],ie}function Le(e){console.error("[PermissionRequestCard] Failed to respond to permission:",e)}const qe=f.StyleSheet.create(e=>({container:{flex:1,backgroundColor:e.colors.surface0,uni__dependencies:[0]},contentWrapper:{width:"100%",maxWidth:S.MAX_CONTENT_WIDTH,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:S.MAX_CONTENT_WIDTH,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]}})),De=f.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 We(e){const t=(0,c.c)(5),{gapBelow:n,children:s}=e;let o;t[0]!==n?(o=[qe.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,re.jsx)(l.View,{style:u,children:s}),t[2]=s,t[3]=u,t[4]=p):p=t[4],p}function ze(e){return e.autoExpandReasoning}function Ve(e){return e.toolCallDetailLevel}function Ne(e){return e.chatOutlineEnabled}function Ge(e){return e.clientMessageId}},4598,[35,897,896,895,453,4599,2984,36,853,146,234,425,25,56,1216,799,898,1217,3538,4320,4605,4621,3420,3718,4308,4649,883,4650,4623,4651,4622,4653,4658,4660,4666,4680,4683,3466,3626,4684,4688,4689,4637,4691,4628,3565,3654,3881,4695,880,4262,3693,4697,4698,279]);
|
|
16254
16254
|
__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]}}))},4599,[896,895,453,36,146,234,56,853,4600,2983,4323,3693,2881,4455,3466,3626,4602,4603,279]);
|
|
16255
16255
|
__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}},4600,[895,896,453,36,234,146,1217,56,853,2983,3684,2986,4018,4238,1216,880,4455,3734,4601,279]);
|
|
@@ -16768,7 +16768,7 @@ __d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',
|
|
|
16768
16768
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.HighlightedText=function(s){const u=(0,n.c)(15),{text:x,ranges:f,style:h,numberOfLines:y,testID:_}=s;let b;u[0]!==f||u[1]!==x?(b=f&&f.length>0?(0,l.toHighlightSegments)(x,f):null,u[0]=f,u[1]=x,u[2]=b):b=u[2];const j=b;if(!j){let n;return u[3]!==y||u[4]!==h||u[5]!==_||u[6]!==x?(n=(0,c.jsx)(t.Text,{style:h,numberOfLines:y,testID:_,children:x}),u[3]=y,u[4]=h,u[5]=_,u[6]=x,u[7]=n):n=u[7],n}let T,k;u[8]!==j?(T=j.map(o),u[8]=j,u[9]=T):T=u[9];u[10]!==y||u[11]!==h||u[12]!==T||u[13]!==_?(k=(0,c.jsx)(t.Text,{style:h,numberOfLines:y,testID:_,children:T}),u[10]=y,u[11]=h,u[12]=T,u[13]=_,u[14]=k):k=u[14];return k};var t=r(d[0]),n=r(d[1]);r(d[2]),r(d[3]);var s=r(d[4]),l=r(d[5]),c=r(d[6]);function o(n){return n.marked?(0,c.jsx)(t.Text,{style:u.mark,children:n.text},n.start):(0,c.jsx)(t.Text,{children:n.text},n.start)}const u=s.StyleSheet.create(t=>({mark:{backgroundColor:t.colors.surface3,color:t.colors.foreground,uni__dependencies:[0]}}))},5009,[896,453,36,234,56,5010,279]);
|
|
16769
16769
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.toHighlightSegments=function(t,s){const n=[];let o=0;for(const c of s){const s=Math.max(c.start,o),h=Math.min(s+c.length,t.length);h<=s||(s>o&&n.push({start:o,text:t.slice(o,s),marked:!1}),n.push({start:s,text:t.slice(s,h),marked:!0}),o=h)}o<t.length&&n.push({start:o,text:t.slice(o),marked:!1});return n},e.findHighlightRanges=function(s,n){const o=(0,t.tokenizeQuery)(s).flatMap(s=>{const o=(0,t.scoreMatch)(s,n,{fuzzy:(0,t.fuzzyPolicyForToken)(s)});return o?(0,t.matchRanges)(s,n,o):[]}).sort((t,s)=>t.start-s.start),c=[];for(const t of o){const s=c.at(-1);s&&t.start<=s.start+s.length?s.length=Math.max(s.length,t.start+t.length-s.start):c.push(Object.assign({},t))}return c};var t=r(d[0])},5010,[3769]);
|
|
16770
16770
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.SearchField=function(s){const c=(0,l.c)(22),{value:u,onChangeText:x,placeholder:S,accessibilityLabel:C,clearAccessibilityLabel:T,testID:j,clearTestID:z}=s,[I,W]=(0,n.useState)(!1),w=(0,n.useRef)(null);let D;c[0]===Symbol.for("react.memo_cache_sentinel")?(D=()=>W(!0),c[0]=D):D=c[0];const P=D;let v;c[1]===Symbol.for("react.memo_cache_sentinel")?(v=()=>W(!1),c[1]=v):v=c[1];const F=v;let L;c[2]!==x?(L=()=>{w.current?.replaceText(""),x("")},c[2]=x,c[3]=L):L=c[3];const R=L,M=I&&_.fieldFocused;let U,V;c[4]!==M?(U=[_.field,M],c[4]=M,c[5]=U):U=c[5];c[6]===Symbol.for("react.memo_cache_sentinel")?(V=(0,h.jsx)(b,{size:14,uniProps:y}),c[6]=V):V=c[6];const k=C??S;let A,B,E;c[7]!==x||c[8]!==S||c[9]!==k||c[10]!==j||c[11]!==u?(A=(0,h.jsx)(p,{testID:j,ref:w,initialValue:u,onChangeText:x,onFocus:P,onBlur:F,placeholder:S,accessibilityLabel:k,autoCapitalize:"none",autoCorrect:!1,returnKeyType:"search",style:_.input}),c[7]=x,c[8]=S,c[9]=k,c[10]=j,c[11]=u,c[12]=A):A=c[12];c[13]!==T||c[14]!==z||c[15]!==R||c[16]!==u.length?(B=u.length>0?(0,h.jsx)(t.Pressable,{testID:z,onPress:R,accessibilityRole:"button",accessibilityLabel:T,hitSlop:8,children:(0,h.jsx)(f,{size:14,uniProps:y})}):null,c[13]=T,c[14]=z,c[15]=R,c[16]=u.length,c[17]=B):B=c[17];c[18]!==U||c[19]!==A||c[20]!==B?(E=(0,h.jsxs)(o.View,{style:U,children:[V,A,B]}),c[18]=U,c[19]=A,c[20]=B,c[21]=E):E=c[21];return E};var o=r(d[0]),t=r(d[1]),l=r(d[2]),n=r(d[3]);r(d[4]),r(d[5]);var s=r(d[6]),c=r(d[7]),u=r(d[8]),h=r(d[9]);const b=(0,c.withUnistyles)(s.Search),f=(0,c.withUnistyles)(s.X),p=(0,c.withUnistyles)(u.EditingTextInput,o=>({placeholderTextColor:o.colors.foregroundMuted,selectionColor:o.colors.foreground})),y=o=>({color:o.colors.foregroundMuted});const _=c.StyleSheet.create(o=>({field:{flexDirection:"row",alignItems:"center",gap:o.spacing[2],flex:1,minWidth:0,maxWidth:420,paddingVertical:o.spacing[1.5],paddingHorizontal:o.spacing[3],borderRadius:o.borderRadius.md,backgroundColor:o.colors.surface1,borderWidth:o.borderWidth[1],borderColor:o.colors.border,uni__dependencies:[0]},fieldFocused:{borderColor:o.colors.borderAccent,backgroundColor:o.colors.surface2,uni__dependencies:[0]},input:{flex:1,minWidth:0,padding:0,height:20,outlineWidth:0,color:o.colors.foreground,fontSize:o.fontSize.base,uni__dependencies:[0]}}))},5011,[895,897,453,36,425,146,1217,56,3684,279]);
|
|
16771
|
-
__d(function(g,r,i,_a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.fetchAgentHistoryPage=v,e.collectAgentHistoryHostErrors=I,e.fetchAgentHistoryBatch=A,e.useAgentHistory=function(l){const h=(0,t.c)(66),{t:p}=(0,a.useTranslation)(),f=(0,o.useHosts)();let v;h[0]===Symbol.for("react.memo_cache_sentinel")?(v=(0,o.getHostRuntimeStore)(),h[0]=v):v=h[0];const M=v;let T,L,E;h[1]===Symbol.for("react.memo_cache_sentinel")?(T=t=>M.subscribeAll(t),L=()=>M.getVersion(),E=()=>M.getVersion(),h[1]=T,h[2]=L,h[3]=E):(T=h[1],L=h[2],E=h[3]);(0,n.useSyncExternalStore)(T,L,E);const _=l.serverId;let x;h[4]!==_?(x="string"==typeof _&&_.trim().length>0?_.trim():null,h[4]=_,h[5]=x):x=h[5];const B=x,N=l.enabled??!0;let k;h[6]!==f?(k=new Map(f.map(O)),h[6]=f,h[7]=k):k=h[7];const C=k;let R;if(h[8]!==f||h[9]!==B||h[10]!==C){const t=B?[B]:f.map(P),s=[],n=[];for(const a of t){const t=M.getSnapshot(a),c=M.getClient(a),l=C.get(a)??a;c&&(0,o.isHostRuntimeConnected)(t)?s.push({serverId:a,serverLabel:l,client:c}):n.push({serverId:a,serverName:l})}R={targetHosts:s,unreachableHosts:n},h[8]=f,h[9]=B,h[10]=C,h[11]=R}else R=h[11];const{targetHosts:q,unreachableHosts:F}=R;let K;h[12]!==q?(K=q.map(j),h[12]=q,h[13]=K):K=h[13];const Q=K;let D;h[14]!==Q?(D=t=>Q.length>0&&Q.every(s=>!0===t.sessions[s]?.serverInfo?.features?.agentHistorySearch),h[14]=Q,h[15]=D):D=h[15];const V=(0,c.useSessionStore)(D);let z;h[16]!==l.search?(z=l.search?.trim()??"",h[16]=l.search,h[17]=z):z=h[17];const G=z,J=V?G:"";let U;h[18]!==J||h[19]!==B||h[20]!==Q?(U=[...B?(0,u.agentHistoryQueryKey)(B):(0,u.allAgentHistoryQueryKey)(Q),J],h[18]=J,h[19]=B,h[20]=Q,h[21]=U):U=h[21];const W=U;let X;h[22]!==f?(X=new Map(f.map(w)),h[22]=f,h[23]=X):X=h[23];const Y=X,Z=Boolean(N&&q.length>0);let $,ee;h[24]!==J||h[25]!==p||h[26]!==q?($=async t=>{const{pageParam:s}=t;if(0===q.length)throw new Error(p("workspace.terminal.hostDisconnected"));return A(Object.assign({hosts:q,cursorByServerId:s},J?{search:J}:{}))},h[24]=J,h[25]=p,h[26]=q,h[27]=$):$=h[27];h[28]!==W||h[29]!==Z||h[30]!==$?(ee={queryKey:W,enabled:Z,staleTime:3e4,initialPageParam:null,getNextPageParam:b,queryFn:$},h[28]=W,h[29]=Z,h[30]=$,h[31]=ee):ee=h[31];const te=(0,s.useInfiniteQuery)(ee),{data:re,fetchNextPage:se,hasNextPage:ne,isError:ae,isFetching:oe,isFetchingNextPage:ce,isLoading:ie,refetch:le}=te;let ue;h[32]!==N||h[33]!==le||h[34]!==q.length?(ue=async()=>{N&&0!==q.length&&await le()},h[32]=N,h[33]=le,h[34]=q.length,h[35]=ue):ue=h[35];const ge=ue;let he;h[36]!==N||h[37]!==se||h[38]!==ne||h[39]!==ce||h[40]!==q.length?(he=()=>{N&&0!==q.length&&ne&&!ce&&se()},h[36]=N,h[37]=se,h[38]=ne,h[39]=ce,h[40]=q.length,h[41]=he):he=h[41];const de=he;let pe;if(h[42]!==re?.pages||h[43]!==Y){const t=(re?.pages??[]).flatMap(H);let s;h[45]!==Y?(s=t=>Object.assign({},t,{serverLabel:Y.get(t.serverId)??t.serverLabel}),h[45]=Y,h[46]=s):s=h[46];pe=y(t.map(s)),h[42]=re?.pages,h[43]=Y,h[44]=pe}else pe=h[44];const fe=pe,ve=ie&&0===fe.length,me=oe&&!ce&&fe.length>0;let ye;h[47]!==re?.pages||h[48]!==J?(ye=J&&re?.pages.some(S),h[47]=re?.pages,h[48]=J,h[49]=ye):ye=h[49];const Ie=Boolean(ye);let be;h[50]!==re?.pages||h[51]!==F?(be=I({pages:re?.pages??[],unreachableHosts:F}),h[50]=re?.pages,h[51]=F,h[52]=be):be=h[52];const Ae=be;let Se;h[53]!==fe||h[54]!==ne||h[55]!==Ae||h[56]!==ae||h[57]!==ce||h[58]!==ve||h[59]!==ie||h[60]!==me||h[61]!==V||h[62]!==Ie||h[63]!==de||h[64]!==ge?(Se={agents:fe,isLoading:ie,isInitialLoad:ve,isRevalidating:me,isError:ae,hasMore:ne,isLoadingMore:ce,isSearchSupported:V,isSearchTruncated:Ie,hostErrors:Ae,refreshAll:ge,loadMore:de},h[53]=fe,h[54]=ne,h[55]=Ae,h[56]=ae,h[57]=ce,h[58]=ve,h[59]=ie,h[60]=me,h[61]=V,h[62]=Ie,h[63]=de,h[64]=ge,h[65]=Se):Se=h[65];return Se};var t=r(d[0]),s=r(d[1]),n=r(d[2]),a=r(d[3]),o=r(d[4]),c=r(d[5]),l=r(d[6]),u=r(d[7]);const h=200,p=[{key:"updated_at",direction:"desc"}],f="No connected hosts could load agent history";async function v(t){const s=await t.client.fetchAgentHistory(Object.assign({},t.search?{search:t.search}:{},{sort:p,page:t.cursor?{limit:h,cursor:t.cursor}:{limit:h}})),{agents:n}=(0,l.buildAgentDirectoryState)({serverId:t.serverId,entries:s.entries});return{isSearchTruncated:!0===s.searchTruncated,agents:Array.from(n.values(),s=>({id:s.id,serverId:t.serverId,serverLabel:t.serverId,title:s.title??null,status:s.status,turn:s.turn,lastActivityAt:s.lastActivityAt,cwd:s.cwd,workspaceId:s.workspaceId,provider:s.provider,pendingPermissionCount:s.pendingPermissions.length,requiresAttention:s.requiresAttention,attentionReason:s.attentionReason,attentionTimestamp:s.attentionTimestamp??null,archivedAt:s.archivedAt??null,createdAt:s.createdAt,labels:s.labels,projectPlacement:s.projectPlacement})),pageInfo:s.pageInfo}}function y(t){return[...t].sort((t,s)=>s.lastActivityAt.getTime()-t.lastActivityAt.getTime())}function I(t){const s=new Map;for(const n of t.unreachableHosts)s.set(n.serverId,n);for(const n of t.pages)for(const t of n.hostErrors)s.set(t.serverId,t);return[...s.values()]}function b(t){const s={};for(const[n,a]of Object.entries(t.pageInfoByServerId))a.hasMore&&a.nextCursor&&(s[n]=a.nextCursor);return Object.keys(s).length>0?s:null}async function A(t){const s=t.cursorByServerId??{},n=Object.keys(s).length>0?t.hosts.filter(t=>Object.hasOwn(s,t.serverId)):t.hosts,a=await Promise.allSettled(n.map(async n=>({host:n,page:await v(Object.assign({client:n.client,serverId:n.serverId,cursor:s[n.serverId]??null},t.search?{search:t.search}:{}))}))),o=a.flatMap(t=>"fulfilled"===t.status?[t.value]:[]);if(0===o.length)throw new Error(f);const c=a.flatMap((t,s)=>"rejected"===t.status?[{serverId:n[s].serverId,serverName:n[s].serverLabel}]:[]),l=o.flatMap(({host:t,page:s})=>s.agents.map(s=>Object.assign({},s,{serverLabel:t.serverLabel}))),u=Object.fromEntries(o.map(({host:t,page:s})=>[t.serverId,s.pageInfo]));return Object.assign({agents:y(l),pageInfoByServerId:u,hostErrors:c},t.search?{isSearchTruncated:o.some(({page:t})=>t.isSearchTruncated)}:{})}function S(t){return t.isSearchTruncated}function H(t){return t.agents}function w(t){return[t.serverId,t.label]}function j(t){return t.serverId}function P(t){return t.serverId}function O(t){return[t.serverId,t.label]}},5012,[453,799,36,853,3466,3420,
|
|
16771
|
+
__d(function(g,r,i,_a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.fetchAgentHistoryPage=v,e.collectAgentHistoryHostErrors=I,e.fetchAgentHistoryBatch=A,e.useAgentHistory=function(l){const h=(0,t.c)(66),{t:p}=(0,a.useTranslation)(),f=(0,o.useHosts)();let v;h[0]===Symbol.for("react.memo_cache_sentinel")?(v=(0,o.getHostRuntimeStore)(),h[0]=v):v=h[0];const M=v;let T,L,E;h[1]===Symbol.for("react.memo_cache_sentinel")?(T=t=>M.subscribeAll(t),L=()=>M.getVersion(),E=()=>M.getVersion(),h[1]=T,h[2]=L,h[3]=E):(T=h[1],L=h[2],E=h[3]);(0,n.useSyncExternalStore)(T,L,E);const _=l.serverId;let x;h[4]!==_?(x="string"==typeof _&&_.trim().length>0?_.trim():null,h[4]=_,h[5]=x):x=h[5];const B=x,N=l.enabled??!0;let k;h[6]!==f?(k=new Map(f.map(O)),h[6]=f,h[7]=k):k=h[7];const C=k;let R;if(h[8]!==f||h[9]!==B||h[10]!==C){const t=B?[B]:f.map(P),s=[],n=[];for(const a of t){const t=M.getSnapshot(a),c=M.getClient(a),l=C.get(a)??a;c&&(0,o.isHostRuntimeConnected)(t)?s.push({serverId:a,serverLabel:l,client:c}):n.push({serverId:a,serverName:l})}R={targetHosts:s,unreachableHosts:n},h[8]=f,h[9]=B,h[10]=C,h[11]=R}else R=h[11];const{targetHosts:q,unreachableHosts:F}=R;let K;h[12]!==q?(K=q.map(j),h[12]=q,h[13]=K):K=h[13];const Q=K;let D;h[14]!==Q?(D=t=>Q.length>0&&Q.every(s=>!0===t.sessions[s]?.serverInfo?.features?.agentHistorySearch),h[14]=Q,h[15]=D):D=h[15];const V=(0,c.useSessionStore)(D);let z;h[16]!==l.search?(z=l.search?.trim()??"",h[16]=l.search,h[17]=z):z=h[17];const G=z,J=V?G:"";let U;h[18]!==J||h[19]!==B||h[20]!==Q?(U=[...B?(0,u.agentHistoryQueryKey)(B):(0,u.allAgentHistoryQueryKey)(Q),J],h[18]=J,h[19]=B,h[20]=Q,h[21]=U):U=h[21];const W=U;let X;h[22]!==f?(X=new Map(f.map(w)),h[22]=f,h[23]=X):X=h[23];const Y=X,Z=Boolean(N&&q.length>0);let $,ee;h[24]!==J||h[25]!==p||h[26]!==q?($=async t=>{const{pageParam:s}=t;if(0===q.length)throw new Error(p("workspace.terminal.hostDisconnected"));return A(Object.assign({hosts:q,cursorByServerId:s},J?{search:J}:{}))},h[24]=J,h[25]=p,h[26]=q,h[27]=$):$=h[27];h[28]!==W||h[29]!==Z||h[30]!==$?(ee={queryKey:W,enabled:Z,staleTime:3e4,initialPageParam:null,getNextPageParam:b,queryFn:$},h[28]=W,h[29]=Z,h[30]=$,h[31]=ee):ee=h[31];const te=(0,s.useInfiniteQuery)(ee),{data:re,fetchNextPage:se,hasNextPage:ne,isError:ae,isFetching:oe,isFetchingNextPage:ce,isLoading:ie,refetch:le}=te;let ue;h[32]!==N||h[33]!==le||h[34]!==q.length?(ue=async()=>{N&&0!==q.length&&await le()},h[32]=N,h[33]=le,h[34]=q.length,h[35]=ue):ue=h[35];const ge=ue;let he;h[36]!==N||h[37]!==se||h[38]!==ne||h[39]!==ce||h[40]!==q.length?(he=()=>{N&&0!==q.length&&ne&&!ce&&se()},h[36]=N,h[37]=se,h[38]=ne,h[39]=ce,h[40]=q.length,h[41]=he):he=h[41];const de=he;let pe;if(h[42]!==re?.pages||h[43]!==Y){const t=(re?.pages??[]).flatMap(H);let s;h[45]!==Y?(s=t=>Object.assign({},t,{serverLabel:Y.get(t.serverId)??t.serverLabel}),h[45]=Y,h[46]=s):s=h[46];pe=y(t.map(s)),h[42]=re?.pages,h[43]=Y,h[44]=pe}else pe=h[44];const fe=pe,ve=ie&&0===fe.length,me=oe&&!ce&&fe.length>0;let ye;h[47]!==re?.pages||h[48]!==J?(ye=J&&re?.pages.some(S),h[47]=re?.pages,h[48]=J,h[49]=ye):ye=h[49];const Ie=Boolean(ye);let be;h[50]!==re?.pages||h[51]!==F?(be=I({pages:re?.pages??[],unreachableHosts:F}),h[50]=re?.pages,h[51]=F,h[52]=be):be=h[52];const Ae=be;let Se;h[53]!==fe||h[54]!==ne||h[55]!==Ae||h[56]!==ae||h[57]!==ce||h[58]!==ve||h[59]!==ie||h[60]!==me||h[61]!==V||h[62]!==Ie||h[63]!==de||h[64]!==ge?(Se={agents:fe,isLoading:ie,isInitialLoad:ve,isRevalidating:me,isError:ae,hasMore:ne,isLoadingMore:ce,isSearchSupported:V,isSearchTruncated:Ie,hostErrors:Ae,refreshAll:ge,loadMore:de},h[53]=fe,h[54]=ne,h[55]=Ae,h[56]=ae,h[57]=ce,h[58]=ve,h[59]=ie,h[60]=me,h[61]=V,h[62]=Ie,h[63]=de,h[64]=ge,h[65]=Se):Se=h[65];return Se};var t=r(d[0]),s=r(d[1]),n=r(d[2]),a=r(d[3]),o=r(d[4]),c=r(d[5]),l=r(d[6]),u=r(d[7]);const h=200,p=[{key:"updated_at",direction:"desc"}],f="No connected hosts could load agent history";async function v(t){const s=await t.client.fetchAgentHistory(Object.assign({},t.search?{search:t.search}:{},{sort:p,page:t.cursor?{limit:h,cursor:t.cursor}:{limit:h}})),{agents:n}=(0,l.buildAgentDirectoryState)({serverId:t.serverId,entries:s.entries});return{isSearchTruncated:!0===s.searchTruncated,agents:Array.from(n.values(),s=>({id:s.id,serverId:t.serverId,serverLabel:t.serverId,title:s.title??null,status:s.status,turn:s.turn,lastActivityAt:s.lastActivityAt,cwd:s.cwd,workspaceId:s.workspaceId,provider:s.provider,pendingPermissionCount:s.pendingPermissions.length,requiresAttention:s.requiresAttention,attentionReason:s.attentionReason,attentionTimestamp:s.attentionTimestamp??null,archivedAt:s.archivedAt??null,createdAt:s.createdAt,labels:s.labels,projectPlacement:s.projectPlacement})),pageInfo:s.pageInfo}}function y(t){return[...t].sort((t,s)=>s.lastActivityAt.getTime()-t.lastActivityAt.getTime())}function I(t){const s=new Map;for(const n of t.unreachableHosts)s.set(n.serverId,n);for(const n of t.pages)for(const t of n.hostErrors)s.set(t.serverId,t);return[...s.values()]}function b(t){const s={};for(const[n,a]of Object.entries(t.pageInfoByServerId))a.hasMore&&a.nextCursor&&(s[n]=a.nextCursor);return Object.keys(s).length>0?s:null}async function A(t){const s=t.cursorByServerId??{},n=Object.keys(s).length>0?t.hosts.filter(t=>Object.hasOwn(s,t.serverId)):t.hosts,a=await Promise.allSettled(n.map(async n=>({host:n,page:await v(Object.assign({client:n.client,serverId:n.serverId,cursor:s[n.serverId]??null},t.search?{search:t.search}:{}))}))),o=a.flatMap(t=>"fulfilled"===t.status?[t.value]:[]);if(0===o.length)throw new Error(f);const c=a.flatMap((t,s)=>"rejected"===t.status?[{serverId:n[s].serverId,serverName:n[s].serverLabel}]:[]),l=o.flatMap(({host:t,page:s})=>s.agents.map(s=>Object.assign({},s,{serverLabel:t.serverLabel}))),u=Object.fromEntries(o.map(({host:t,page:s})=>[t.serverId,s.pageInfo]));return Object.assign({agents:y(l),pageInfoByServerId:u,hostErrors:c},t.search?{isSearchTruncated:o.some(({page:t})=>t.isSearchTruncated)}:{})}function S(t){return t.isSearchTruncated}function H(t){return t.agents}function w(t){return[t.serverId,t.label]}function j(t){return t.serverId}function P(t){return t.serverId}function O(t){return[t.serverId,t.label]}},5012,[453,799,36,853,3466,3420,3603,3594]);
|
|
16772
16772
|
__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 b}});var e=r(d[0]),t=r(d[1]);r(d[2]);var s,o=r(d[3]),n=r(d[4]),u=r(d[5]),c=r(d[6]),l=r(d[7]),f=(s=l)&&s.__esModule?s:{default:s},S=r(d[8]),v=r(d[9]),p=r(d[10]);function _(){const s=(0,e.c)(7),n=(0,c.useHosts)(),l=(0,u.useLocalDaemonServerIdState)(),f=(0,o.useHostRuntimeBootstrapState)();if("loading"===l.status){let e;return s[0]!==f?(e=(0,p.jsx)(S.StartupSplashScreen,{bootstrapState:f}),s[0]=f,s[1]=e):e=s[1],e}if("resolved"===l.status&&null!==l.serverId&&n.some(e=>e.serverId===l.serverId)){let e,o;return s[2]!==l.serverId?(e=(0,v.buildSettingsHostSectionRoute)(l.serverId,"host"),s[2]=l.serverId,s[3]=e):e=s[3],s[4]!==e?(o=(0,p.jsx)(t.Redirect,{href:e}),s[4]=e,s[5]=o):o=s[5],o}let _;return s[6]===Symbol.for("react.memo_cache_sentinel")?(_=(0,p.jsx)(t.Redirect,{href:(0,v.buildSettingsRoute)()}),s[6]=_):_=s[6],_}function b(){const s=(0,e.c)(8),o=(0,t.useLocalSearchParams)(),u="string"==typeof o.section?o.section:"";let c;s[0]!==u?(c=(0,v.isSettingsSectionSlug)(u)?u:"general",s[0]=u,s[1]=c):c=s[1];const l=c,S="string"==typeof o.addHost?o.addHost:null;let b;s[2]!==l?(b={kind:"section",section:l},s[2]=l,s[3]=b):b=s[3];const h=b;if("daemon"===u){let e;return s[4]===Symbol.for("react.memo_cache_sentinel")?(e=(0,p.jsx)(n.HostRouteBootstrapBoundary,{children:(0,p.jsx)(_,{})}),s[4]=e):e=s[4],e}let j;return s[5]!==S||s[6]!==h?(j=(0,p.jsx)(f.default,{view:h,openAddHostIntent:S}),s[5]=S,s[6]=h,s[7]=j):j=s[7],j}},5013,[453,455,36,2994,4566,3812,3466,5014,4567,3658,279]);
|
|
16773
16773
|
__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 lt}});var t=r(d[0]),s=r(d[1]),n=r(d[2]),o=r(d[3]),l=r(d[4]),c=r(d[5]),u=e(r(d[6]));r(d[7]),r(d[8]),r(d[9]),r(d[10]);var p=r(d[11]),h=r(d[12]),b=r(d[13]),y=r(d[14]),S=r(d[15]),x=r(d[16]),f=r(d[17]),j=r(d[18]),v=r(d[19]),w=r(d[20]),k=r(d[21]),T=r(d[22]),I=r(d[23]),C=r(d[24]),H=r(d[25]),_=r(d[26]),V=r(d[27]),B=r(d[28]),L=r(d[29]),P=r(d[30]),D=r(d[31]),z=r(d[32]),R=r(d[33]),A=r(d[34]),M=r(d[35]),O=r(d[36]),K=r(d[37]),U=r(d[38]),W=r(d[39]),E=r(d[40]),F=r(d[41]),N=r(d[42]),G=r(d[43]),$=r(d[44]),q=r(d[45]),Q=r(d[46]),J=r(d[47]),X=r(d[48]),Y=r(d[49]),Z=r(d[50]),ee=r(d[51]),te=r(d[52]),se=r(d[53]),ne=r(d[54]),ie=r(d[55]),oe=r(d[56]),le=r(d[57]),re=r(d[58]),ae=r(d[59]),ce=r(d[60]),de=r(d[61]),ue=r(d[62]),ge=r(d[63]),pe=r(d[64]),he=r(d[65]),be=r(d[66]),ye=r(d[67]),Se=r(d[68]),xe=r(d[69]),me=e(r(d[70])),fe=e(r(d[71])),je=r(d[72]),ve=r(d[73]),we=r(d[74]),ke=r(d[75]),Te=r(d[76]),Ie=r(d[77]),Ce=r(d[78]),He=r(d[79]);const Ve=[{id:"general",labelKey:"settings.sections.general",icon:j.Settings},{id:"appearance",labelKey:"settings.sections.appearance",icon:j.Palette},{id:"layout",labelKey:"settings.sections.layout",icon:j.PanelsTopLeft,desktopOnly:!0},{id:"editor",labelKey:"settings.sections.editor",icon:j.Code2,webOnly:!0},{id:"shortcuts",labelKey:"settings.sections.shortcuts",icon:j.Keyboard,desktopOnly:!0},{id:"integrations",labelKey:"settings.sections.integrations",icon:j.Puzzle,desktopOnly:!0},{id:"notifications",labelKey:"settings.sections.notifications",icon:j.Bell,desktopOnly:!0},{id:"permissions",labelKey:"settings.sections.permissions",icon:j.Shield,desktopOnly:!0},{id:"diagnostics",labelKey:"settings.sections.diagnostics",icon:j.Stethoscope},{id:"about",labelKey:"settings.sections.about",icon:j.Info}],Be=[{id:"host",labelKey:"settings.hostSections.host",icon:j.Server},{id:"projects",labelKey:"settings.hostSections.projects",icon:j.FolderGit2},{id:"connections",labelKey:"settings.hostSections.connections",icon:j.Network},{id:"pair-device",labelKey:"openProject.tiles.pairDevice.title",icon:j.Smartphone},{id:"agents",labelKey:"settings.hostSections.agents",icon:j.Bot},{id:"metadata",labelKey:"settings.hostSections.metadata",icon:j.Sparkles},{id:"workspaces",labelKey:"settings.hostSections.workspaces",icon:j.FolderGit2},{id:"providers",labelKey:"settings.hostSections.providers",icon:j.Boxes},{id:"usage",labelKey:"settings.hostSections.usage",icon:j.Gauge},{id:"terminals",labelKey:"settings.hostSections.terminals",icon:j.SquareTerminal},{id:"plugins",labelKey:"settings.hostSections.plugins",icon:j.Blocks}];function Le(e,t){switch(e.section){case"projects":return(0,He.jsx)(me.default,{serverId:e.serverId});case"connections":return(0,He.jsx)(pe.HostConnectionsPage,{serverId:e.serverId});case"pair-device":return(0,He.jsx)(pe.HostPairDevicePage,{serverId:e.serverId});case"agents":return(0,He.jsx)(pe.HostAgentsPage,{serverId:e.serverId});case"metadata":return(0,He.jsx)(xe.MetadataGenerationPage,{serverId:e.serverId});case"workspaces":return(0,He.jsx)(pe.HostWorkspacesPage,{serverId:e.serverId});case"providers":return(0,He.jsx)(pe.HostProvidersPage,{serverId:e.serverId});case"usage":return(0,He.jsx)(pe.HostUsagePage,{serverId:e.serverId});case"terminals":return(0,He.jsx)(pe.HostTerminalsPage,{serverId:e.serverId});case"plugins":return(0,He.jsx)(Se.HostPluginsPage,{serverId:e.serverId});case"host":return(0,He.jsx)(pe.HostSettingsPage,{serverId:e.serverId,onHostRemoved:t})}}function Pe({pressed:e}){return[rt.themeTrigger,e&&{opacity:.85}]}function De({hovered:e}){return[ct.item,Boolean(e)&&ct.itemHovered]}function ze({hovered:e}){return[ct.item,Boolean(e)&&ct.itemHovered,ct.itemSelected]}function Re(e){return[{value:"interrupt",label:e("settings.general.defaultSend.options.interrupt")},{value:"steer",label:e("settings.general.defaultSend.options.steer")},{value:"queue",label:e("settings.general.defaultSend.options.queue")}]}function Ae(e,t){return{ask:e("settings.general.serviceUrls.options.ask"),"in-app":e("settings.general.serviceUrls.options.inApp"),external:e("settings.general.serviceUrls.options.external")}[t]}function Me(e){const t=(0,ge.parseAppLanguage)(e);return t&&"system"!==t?t:"en"}const Oe=["ask","in-app","external"];function Ke(e){const t=(0,l.c)(7),{value:s,label:n,selected:o,onChange:c}=e;let u;t[0]!==c||t[1]!==s?(u=()=>{c(s)},t[0]=c,t[1]=s,t[2]=u):u=t[2];const p=u;let h;return t[3]!==p||t[4]!==n||t[5]!==o?(h=(0,He.jsx)(Y.DropdownMenuItem,{selected:o,onSelect:p,children:n}),t[3]=p,t[4]=n,t[5]=o,t[6]=h):h=t[6],h}function Ue(e){const t=(0,l.c)(7),{value:s,label:n,selected:o,onChange:c}=e;let u;t[0]!==c||t[1]!==s?(u=()=>{c(s)},t[0]=c,t[1]=s,t[2]=u):u=t[2];const p=u;let h;return t[3]!==p||t[4]!==n||t[5]!==o?(h=(0,He.jsx)(Y.DropdownMenuItem,{selected:o,onSelect:p,children:n}),t[3]=p,t[4]=n,t[5]=o,t[6]=h):h=t[6],h}function We(e){const t=(0,l.c)(13),{value:s,activeLocale:n,selected:o,onChange:c}=e,{t:u}=(0,x.useTranslation)();let p;t[0]!==c||t[1]!==s?(p=()=>{c(s)},t[0]=c,t[1]=s,t[2]=p):p=t[2];const h=p;let b;if(t[3]!==n||t[4]!==u||t[5]!==s){let e;t[7]!==s?(e=e=>e.value===s,t[7]=s,t[8]=e):e=t[8];const o=ge.LANGUAGE_OPTIONS.find(e);b=o?(0,ge.formatLanguageOptionLabel)(o,n,u(o.labelKey)):s,t[3]=n,t[4]=u,t[5]=s,t[6]=b}else b=t[6];const y=b;let S;return t[9]!==h||t[10]!==y||t[11]!==o?(S=(0,He.jsx)(Y.DropdownMenuItem,{selected:o,onSelect:h,children:y}),t[9]=h,t[10]=y,t[11]=o,t[12]=S):S=t[12],S}function Ee(e){const n=(0,l.c)(123),{settings:o,isDesktopApp:u,handleSendBehaviorChange:h,handleServiceUrlBehaviorChange:b,handleLanguageChange:y,handleTerminalScrollbackLinesChange:S}=e,{t:f,i18n:j}=(0,x.useTranslation)();let w,k,T,I,C;if(n[0]!==j.language||n[1]!==o.language||n[2]!==o.sendBehavior||n[3]!==f){let e,t,s;w=Me(j.language),n[9]!==f?(e=Re(f),n[9]=f,n[10]=e):e=n[10],I=e,n[11]!==I||n[12]!==o.sendBehavior?(t=I.find(e=>e.value===o.sendBehavior)?.label??o.sendBehavior,n[11]=I,n[12]=o.sendBehavior,n[13]=t):t=n[13],k=t,T=`settings.general.defaultSend.descriptions.${o.sendBehavior}`,n[14]!==o.language?(s=e=>e.value===o.language,n[14]=o.language,n[15]=s):s=n[15];const l=ge.LANGUAGE_OPTIONS.find(s);C=l?(0,ge.formatLanguageOptionLabel)(l,w,f(l.labelKey)):o.language,n[0]=j.language,n[1]=o.language,n[2]=o.sendBehavior,n[3]=f,n[4]=w,n[5]=k,n[6]=T,n[7]=I,n[8]=C}else w=n[4],k=n[5],T=n[6],I=n[7],C=n[8];const H=C,[_,B]=(0,c.useState)(String(o.terminalScrollbackLines));let L;n[16]===Symbol.for("react.memo_cache_sentinel")?(L=e=>{B(e.replace(/[^\d]/g,""))},n[16]=L):L=n[16];const D=L;let z;n[17]!==S||n[18]!==o.terminalScrollbackLines||n[19]!==_?(z=()=>{const e=(0,P.parseTerminalScrollbackLines)(_)??o.terminalScrollbackLines;B(String(e)),e!==o.terminalScrollbackLines&&S(e)},n[17]=S,n[18]=o.terminalScrollbackLines,n[19]=_,n[20]=z):z=n[20];const R=z;let A,M,O,K,U,W,E,F,N;n[21]!==o.terminalScrollbackLines?(A=()=>{B(String(o.terminalScrollbackLines))},M=[o.terminalScrollbackLines],n[21]=o.terminalScrollbackLines,n[22]=A,n[23]=M):(A=n[22],M=n[23]),(0,c.useEffect)(A,M),n[24]!==f?(O=f("settings.general.title"),n[24]=f,n[25]=O):O=n[25],n[26]!==f?(K=f("settings.general.defaultSend.label"),n[26]=f,n[27]=K):K=n[27],n[28]!==K?(U=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:K}),n[28]=K,n[29]=U):U=n[29],n[30]!==T||n[31]!==f?(W=f(T),n[30]=T,n[31]=f,n[32]=W):W=n[32],n[33]!==W?(E=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:W}),n[33]=W,n[34]=E):E=n[34],n[35]!==E||n[36]!==U?(F=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[U,E]}),n[35]=E,n[36]=U,n[37]=F):F=n[37],n[38]!==f?(N=f("settings.general.defaultSend.label"),n[38]=f,n[39]=N):N=n[39];const G=`${N}: ${k}`;let $,q,Q,J,X,Z,ee,te,se,ne,ie,oe,le,re,ae,de,ue,pe,he,be,ye,Se,xe,me,fe,je,ve,we,ke,Te;if(n[40]!==k?($=(0,He.jsx)(s.Text,{style:rt.themeTriggerText,children:k}),n[40]=k,n[41]=$):$=n[41],n[42]!==G||n[43]!==$?(q=(0,He.jsx)(v.DropdownTrigger,{accessibilityRole:"button",accessibilityLabel:G,style:Pe,children:$}),n[42]=G,n[43]=$,n[44]=q):q=n[44],n[45]!==h||n[46]!==I||n[47]!==o.sendBehavior){let e;n[49]!==h||n[50]!==o.sendBehavior?(e=e=>(0,He.jsx)(Ke,{value:e.value,label:e.label,selected:o.sendBehavior===e.value,onChange:h},e.value),n[49]=h,n[50]=o.sendBehavior,n[51]=e):e=n[51],Q=I.map(e),n[45]=h,n[46]=I,n[47]=o.sendBehavior,n[48]=Q}else Q=n[48];return n[52]!==Q?(J=(0,He.jsx)(Y.DropdownMenuContent,{side:"bottom",align:"end",width:200,children:Q}),n[52]=Q,n[53]=J):J=n[53],n[54]!==q||n[55]!==J?(X=(0,He.jsxs)(Y.DropdownMenu,{children:[q,J]}),n[54]=q,n[55]=J,n[56]=X):X=n[56],n[57]!==F||n[58]!==X?(Z=(0,He.jsxs)(t.View,{style:ce.settingsStyles.row,children:[F,X]}),n[57]=F,n[58]=X,n[59]=Z):Z=n[59],n[60]===Symbol.for("react.memo_cache_sentinel")?(ee=[ce.settingsStyles.row,ce.settingsStyles.rowBorder],n[60]=ee):ee=n[60],n[61]!==f?(te=f("settings.general.language.label"),n[61]=f,n[62]=te):te=n[62],n[63]!==te?(se=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:te}),n[63]=te,n[64]=se):se=n[64],n[65]!==f?(ne=f("settings.general.language.description"),n[65]=f,n[66]=ne):ne=n[66],n[67]!==ne?(ie=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:ne}),n[67]=ne,n[68]=ie):ie=n[68],n[69]!==se||n[70]!==ie?(oe=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[se,ie]}),n[69]=se,n[70]=ie,n[71]=oe):oe=n[71],n[72]!==H?(le=(0,He.jsx)(s.Text,{style:rt.themeTriggerText,children:H}),n[72]=H,n[73]=le):le=n[73],n[74]!==H||n[75]!==le?(re=(0,He.jsx)(v.DropdownTrigger,{accessibilityRole:"button",accessibilityLabel:H,style:Pe,children:le}),n[74]=H,n[75]=le,n[76]=re):re=n[76],n[77]!==w||n[78]!==y||n[79]!==o.language?(ae=ge.LANGUAGE_OPTIONS.map(e=>(0,He.jsx)(We,{value:e.value,activeLocale:w,selected:o.language===e.value,onChange:y},e.value)),n[77]=w,n[78]=y,n[79]=o.language,n[80]=ae):ae=n[80],n[81]!==ae?(de=(0,He.jsx)(Y.DropdownMenuContent,{side:"bottom",align:"end",width:300,children:ae}),n[81]=ae,n[82]=de):de=n[82],n[83]!==re||n[84]!==de?(ue=(0,He.jsxs)(Y.DropdownMenu,{children:[re,de]}),n[83]=re,n[84]=de,n[85]=ue):ue=n[85],n[86]!==oe||n[87]!==ue?(pe=(0,He.jsxs)(t.View,{style:ee,children:[oe,ue]}),n[86]=oe,n[87]=ue,n[88]=pe):pe=n[88],n[89]!==b||n[90]!==u||n[91]!==o.serviceUrlBehavior||n[92]!==f?(he=u?(0,He.jsxs)(t.View,{style:[ce.settingsStyles.row,ce.settingsStyles.rowBorder],children:[(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:f("settings.general.serviceUrls.label")}),(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:f("settings.general.serviceUrls.description")})]}),(0,He.jsxs)(Y.DropdownMenu,{children:[(0,He.jsx)(v.DropdownTrigger,{style:Pe,children:(0,He.jsx)(s.Text,{style:rt.themeTriggerText,children:Ae(f,o.serviceUrlBehavior)})}),(0,He.jsx)(Y.DropdownMenuContent,{side:"bottom",align:"end",width:200,children:Oe.map(e=>(0,He.jsx)(Ue,{value:e,label:Ae(f,e),selected:o.serviceUrlBehavior===e,onChange:b},e))})]})]}):null,n[89]=b,n[90]=u,n[91]=o.serviceUrlBehavior,n[92]=f,n[93]=he):he=n[93],n[94]===Symbol.for("react.memo_cache_sentinel")?(be=[ce.settingsStyles.row,ce.settingsStyles.rowBorder],n[94]=be):be=n[94],n[95]!==f?(ye=f("settings.general.terminalScrollback.label"),n[95]=f,n[96]=ye):ye=n[96],n[97]!==ye?(Se=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:ye}),n[97]=ye,n[98]=Se):Se=n[98],n[99]!==f?(xe=f("settings.general.terminalScrollback.description"),n[99]=f,n[100]=xe):xe=n[100],n[101]!==xe?(me=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:xe}),n[101]=xe,n[102]=me):me=n[102],n[103]!==Se||n[104]!==me?(fe=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[Se,me]}),n[103]=Se,n[104]=me,n[105]=fe):fe=n[105],n[106]!==f?(je=f("settings.general.terminalScrollback.accessibilityLabel"),n[106]=f,n[107]=je):je=n[107],n[108]!==R||n[109]!==je||n[110]!==_?(ve=(0,He.jsx)(p.EditingTextInput,{initialValue:_,onChangeText:D,onBlur:R,onSubmitEditing:R,keyboardType:"number-pad",inputMode:"numeric",selectTextOnFocus:!0,style:rt.terminalScrollbackInput,accessibilityLabel:je}),n[108]=R,n[109]=je,n[110]=_,n[111]=ve):ve=n[111],n[112]!==fe||n[113]!==ve?(we=(0,He.jsxs)(t.View,{style:be,children:[fe,ve]}),n[112]=fe,n[113]=ve,n[114]=we):we=n[114],n[115]!==Z||n[116]!==pe||n[117]!==he||n[118]!==we?(ke=(0,He.jsxs)(t.View,{style:ce.settingsStyles.card,children:[Z,pe,he,we]}),n[115]=Z,n[116]=pe,n[117]=he,n[118]=we,n[119]=ke):ke=n[119],n[120]!==ke||n[121]!==O?(Te=(0,He.jsx)(V.SettingsSection,{title:O,children:ke}),n[120]=ke,n[121]=O,n[122]=Te):Te=n[122],Te}function Fe(e){const n=(0,l.c)(53),{useLegacyTerminalRenderer:o,onUseLegacyTerminalRendererChange:c,voiceAudioEngine:u,isPlaybackTestRunning:p,playbackTestResult:h,handlePlaybackTest:b}=e,{t:y}=(0,x.useTranslation)(),S=(0,ae.useAppDiagnosticStore)(Ne);let f;n[0]!==b?(f=()=>{b()},n[0]=b,n[1]=f):f=n[1];const j=f;let v,w,k,T,I,C,H,_,B,L,P,D,z,R;n[2]!==y?(v=y("settings.diagnostics.title"),n[2]=y,n[3]=v):v=n[3],n[4]!==c||n[5]!==y||n[6]!==o?(w=Ce.isNative?(0,He.jsxs)(t.View,{style:ce.settingsStyles.row,testID:"legacy-terminal-renderer-row",children:[(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:y("settings.diagnostics.legacyTerminalRenderer.label")}),(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:y("settings.diagnostics.legacyTerminalRenderer.description")})]}),(0,He.jsx)(Q.Switch,{value:o,onValueChange:c,accessibilityLabel:y("settings.diagnostics.legacyTerminalRenderer.accessibilityLabel"),testID:"legacy-terminal-renderer-switch"})]}):null,n[4]=c,n[5]=y,n[6]=o,n[7]=w):w=n[7],n[8]!==y?(k=y("settings.diagnostics.app.rowTitle"),n[8]=y,n[9]=k):k=n[9],n[10]!==k?(T=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:k}),n[10]=k,n[11]=T):T=n[11],n[12]!==y?(I=y("settings.diagnostics.app.rowHint"),n[12]=y,n[13]=I):I=n[13],n[14]!==I?(C=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:I}),n[14]=I,n[15]=C):C=n[15],n[16]!==T||n[17]!==C?(H=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[T,C]}),n[16]=T,n[17]=C,n[18]=H):H=n[18],n[19]!==y?(_=y("settings.diagnostics.app.run"),n[19]=y,n[20]=_):_=n[20],n[21]!==S||n[22]!==_?(B=(0,He.jsx)(q.Button,{variant:"secondary",size:"sm",onPress:S,children:_}),n[21]=S,n[22]=_,n[23]=B):B=n[23],n[24]!==B||n[25]!==H?(L=(0,He.jsxs)(t.View,{style:ce.settingsStyles.row,testID:"app-diagnostic-row",children:[H,B]}),n[24]=B,n[25]=H,n[26]=L):L=n[26],n[27]!==y?(P=y("settings.diagnostics.testAudio"),n[27]=y,n[28]=P):P=n[28],n[29]!==P?(D=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:P}),n[29]=P,n[30]=D):D=n[30],n[31]!==h?(z=h?(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:h}):null,n[31]=h,n[32]=z):z=n[32],n[33]!==D||n[34]!==z?(R=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[D,z]}),n[33]=D,n[34]=z,n[35]=R):R=n[35];const A=!u||p;let M,O,K,U,W;return n[36]!==p||n[37]!==y?(M=y(p?"settings.diagnostics.playing":"settings.diagnostics.playTest"),n[36]=p,n[37]=y,n[38]=M):M=n[38],n[39]!==j||n[40]!==A||n[41]!==M?(O=(0,He.jsx)(q.Button,{variant:"secondary",size:"sm",onPress:j,disabled:A,children:M}),n[39]=j,n[40]=A,n[41]=M,n[42]=O):O=n[42],n[43]!==R||n[44]!==O?(K=(0,He.jsxs)(t.View,{style:ce.settingsStyles.row,children:[R,O]}),n[43]=R,n[44]=O,n[45]=K):K=n[45],n[46]!==L||n[47]!==K||n[48]!==w?(U=(0,He.jsxs)(t.View,{style:ce.settingsStyles.card,children:[w,L,K]}),n[46]=L,n[47]=K,n[48]=w,n[49]=U):U=n[49],n[50]!==v||n[51]!==U?(W=(0,He.jsx)(V.SettingsSection,{title:v,children:U}),n[50]=v,n[51]=U,n[52]=W):W=n[52],W}function Ne(e){return e.open}function Ge(e){const n=(0,l.c)(33),{appVersion:o,appVersionText:c,isDesktopApp:u}=e,{t:p}=(0,x.useTranslation)();let h,b,y,S,f,j,v,w,k,T,I,C,H,_,B;return n[0]!==p?(h=p("settings.about.title"),n[0]=p,n[1]=h):h=n[1],n[2]!==p?(b=p("settings.about.appVersion"),n[2]=p,n[3]=b):b=n[3],n[4]!==b?(y=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:b}),n[4]=b,n[5]=y):y=n[5],n[6]!==p?(S=p("settings.about.thisDevice"),n[6]=p,n[7]=S):S=n[7],n[8]!==S?(f=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:S}),n[8]=S,n[9]=f):f=n[9],n[10]!==y||n[11]!==f?(j=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[y,f]}),n[10]=y,n[11]=f,n[12]=j):j=n[12],n[13]!==c?(v=(0,He.jsx)(s.Text,{style:rt.aboutValue,children:c}),n[13]=c,n[14]=v):v=n[14],n[15]!==j||n[16]!==v?(w=(0,He.jsxs)(t.View,{style:ce.settingsStyles.row,children:[j,v]}),n[15]=j,n[16]=v,n[17]=w):w=n[17],n[18]===Symbol.for("react.memo_cache_sentinel")?(k=(0,He.jsx)($e,{}),n[18]=k):k=n[18],n[19]!==u?(T=u?(0,He.jsx)(Ye,{}):null,n[19]=u,n[20]=T):T=n[20],n[21]!==T||n[22]!==w?(I=(0,He.jsxs)(t.View,{style:ce.settingsStyles.card,children:[w,k,T]}),n[21]=T,n[22]=w,n[23]=I):I=n[23],n[24]!==h||n[25]!==I?(C=(0,He.jsx)(V.SettingsSection,{title:h,children:I}),n[24]=h,n[25]=I,n[26]=C):C=n[26],n[27]!==o?(H=(0,He.jsx)(Qe,{clientVersion:o}),n[27]=o,n[28]=H):H=n[28],n[29]===Symbol.for("react.memo_cache_sentinel")?(_=(0,He.jsx)(t.View,{style:rt.aboutCommunity,children:(0,He.jsx)(J.CommunityLinks,{})}),n[29]=_):_=n[29],n[30]!==C||n[31]!==H?(B=(0,He.jsxs)(He.Fragment,{children:[C,H,_]}),n[30]=C,n[31]=H,n[32]=B):B=n[32],B}function $e(){const e=(0,l.c)(6),{t:n}=(0,x.useTranslation)(),{theme:c}=(0,S.useUnistyles)();let u,p;return e[0]===Symbol.for("react.memo_cache_sentinel")?(u=[ce.settingsStyles.row,ce.settingsStyles.rowBorder],e[0]=u):u=e[0],e[1]!==n||e[2]!==c.colors.foreground||e[3]!==c.colors.foregroundMuted||e[4]!==c.iconSize.sm?(p=(0,He.jsx)(o.Pressable,{style:u,onPress:re.openChangelog,accessibilityRole:"button",testID:"settings-whats-new",children:e=>{const{hovered:o}=e;return(0,He.jsxs)(He.Fragment,{children:[(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:n("changelog.title")}),(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:n("settings.about.whatsNewHint")})]}),(0,He.jsx)(j.ChevronRight,{size:c.iconSize.sm,color:o?c.colors.foreground:c.colors.foregroundMuted})]})}}),e[1]=n,e[2]=c.colors.foreground,e[3]=c.colors.foregroundMuted,e[4]=c.iconSize.sm,e[5]=p):p=e[5],p}function qe(e){const t=e?.trim();return t?t.replace(/^v/i,""):null}function Qe(e){const s=(0,l.c)(12),{clientVersion:n}=e,{t:o}=(0,x.useTranslation)(),c=(0,D.useHosts)();if(0===c.length)return null;let u,p,h,b;if(s[0]!==o?(u=o("settings.about.connectedHosts"),s[0]=o,s[1]=u):u=s[1],s[2]!==n||s[3]!==c){let e;s[5]!==n?(e=(e,t)=>(0,He.jsx)(Je,{host:e,showBorder:t>0,clientVersion:n},e.serverId),s[5]=n,s[6]=e):e=s[6],p=c.map(e),s[2]=n,s[3]=c,s[4]=p}else p=s[4];return s[7]!==p?(h=(0,He.jsx)(t.View,{style:ce.settingsStyles.card,children:p}),s[7]=p,s[8]=h):h=s[8],s[9]!==u||s[10]!==h?(b=(0,He.jsx)(V.SettingsSection,{title:u,children:h}),s[9]=u,s[10]=h,s[11]=b):b=s[11],b}function Je(e){const n=(0,l.c)(31),{host:o,showBorder:c,clientVersion:u}=e,{t:p}=(0,x.useTranslation)(),h=(0,D.useHostRuntimeIsConnected)(o.serverId);let b;n[0]!==o.serverId?(b=e=>e.sessions[o.serverId]?.serverInfo?.version??null,n[0]=o.serverId,n[1]=b):b=n[1];const y=(0,z.useSessionStore)(b),S=c&&ce.settingsStyles.rowBorder;let f;n[2]!==S?(f=[ce.settingsStyles.row,S],n[2]=S,n[3]=f):f=n[3];const j=f;let v,w;if(n[4]!==u||n[5]!==y||n[6]!==h||n[7]!==p){const e=qe(y);let t;n[10]!==u?(t=qe(u),n[10]=u,n[11]=t):t=n[11];if(v=null!==e&&null!==t&&e!==t,h)w=e?(0,oe.formatVersionWithPrefix)(e):"\u2014";else{let e;n[12]!==p?(e=p("settings.about.offline"),n[12]=p,n[13]=e):e=n[13],w=e}n[4]=u,n[5]=y,n[6]=h,n[7]=p,n[8]=v,n[9]=w}else v=n[8],w=n[9];const k=v&&rt.aboutVersionMismatch;let T;n[14]!==k?(T=[rt.aboutValue,k],n[14]=k,n[15]=T):T=n[15];const I=T;let C,H,_,V,B;return n[16]!==o.label?(C=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,numberOfLines:1,children:o.label}),n[16]=o.label,n[17]=C):C=n[17],n[18]!==v||n[19]!==p?(H=v?(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:p("settings.about.versionDiffers")}):null,n[18]=v,n[19]=p,n[20]=H):H=n[20],n[21]!==C||n[22]!==H?(_=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[C,H]}),n[21]=C,n[22]=H,n[23]=_):_=n[23],n[24]!==I||n[25]!==w?(V=(0,He.jsx)(s.Text,{style:I,children:w}),n[24]=I,n[25]=w,n[26]=V):V=n[26],n[27]!==j||n[28]!==_||n[29]!==V?(B=(0,He.jsxs)(t.View,{style:j,children:[_,V]}),n[27]=j,n[28]=_,n[29]=V,n[30]=B):B=n[30],B}function Xe(e,t,s){return t?e("settings.about.updates.installing"):s?e("settings.about.updates.updateTo",{version:(0,oe.formatVersionWithPrefix)(s)}):e("settings.about.updates.update")}function Ye(){const e=(0,l.c)(83),{t:n}=(0,x.useTranslation)(),{settings:o,updateSettings:c}=(0,P.useSettings)(),{isDesktopApp:p,statusText:h,availableUpdate:y,errorMessage:S,isChecking:f,isInstalling:j,checkForUpdates:v,installUpdate:w}=(0,ie.useDesktopAppUpdater)();let k,T;e[0]!==v||e[1]!==p?(k=()=>{p&&v({intent:"automatic",silent:!0})},e[0]=v,e[1]=p,e[2]=k):k=e[2],(0,b.useFocusEffect)(k),e[3]!==v||e[4]!==p?(T=()=>{p&&v()},e[3]=v,e[4]=p,e[5]=T):T=e[5];const I=T;let C;e[6]!==c?(C=e=>{c({releaseChannel:e})},e[6]=c,e[7]=C):C=e[7];const H=C;let _,V,B,L,D;e[8]!==n?(_=n("settings.about.releaseChannel.stable"),e[8]=n,e[9]=_):_=e[9],e[10]!==_?(V={value:"stable",label:_},e[10]=_,e[11]=V):V=e[11],e[12]!==n?(B=n("settings.about.releaseChannel.beta"),e[12]=n,e[13]=B):B=e[13],e[14]!==B?(L={value:"beta",label:B},e[14]=B,e[15]=L):L=e[15],e[16]!==V||e[17]!==L?(D=[V,L],e[16]=V,e[17]=L,e[18]=D):D=e[18];const z=D;let R;e[19]!==w||e[20]!==p||e[21]!==n?(R=()=>{p&&(0,O.confirmDialog)({title:n("settings.about.updates.installTitle"),message:n("settings.about.updates.installMessage"),confirmLabel:n("settings.about.updates.installConfirm"),cancelLabel:n("common.actions.cancel")}).then(e=>{e&&w()}).catch(e=>{console.error("[Settings] Failed to open app update confirmation",e),u.default.alert(n("settings.about.updates.alertTitle"),n("settings.about.updates.alertMessage"))})},e[19]=w,e[20]=p,e[21]=n,e[22]=R):R=e[22];const A=R,M=!0===y?.readyToInstall,K=M?y?.latestVersion:null;if(!p)return null;let U,W,E,F,N,G,$,Q,J,Y,Z,ee,te,se,ne;e[23]===Symbol.for("react.memo_cache_sentinel")?(U=[ce.settingsStyles.row,ce.settingsStyles.rowBorder],e[23]=U):U=e[23],e[24]!==n?(W=n("settings.about.releaseChannel.label"),e[24]=n,e[25]=W):W=e[25],e[26]!==W?(E=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:W}),e[26]=W,e[27]=E):E=e[27],e[28]!==n?(F=n("settings.about.releaseChannel.description"),e[28]=n,e[29]=F):F=e[29],e[30]!==F?(N=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:F}),e[30]=F,e[31]=N):N=e[31],e[32]!==E||e[33]!==N?(G=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[E,N]}),e[32]=E,e[33]=N,e[34]=G):G=e[34],e[35]!==H||e[36]!==z||e[37]!==o.releaseChannel?($=(0,He.jsx)(X.SegmentedControl,{size:"sm",value:o.releaseChannel,onValueChange:H,options:z}),e[35]=H,e[36]=z,e[37]=o.releaseChannel,e[38]=$):$=e[38],e[39]!==G||e[40]!==$?(Q=(0,He.jsxs)(t.View,{style:U,children:[G,$]}),e[39]=G,e[40]=$,e[41]=Q):Q=e[41],e[42]===Symbol.for("react.memo_cache_sentinel")?(J=[ce.settingsStyles.row,ce.settingsStyles.rowBorder],e[42]=J):J=e[42],e[43]!==n?(Y=n("settings.about.updates.label"),e[43]=n,e[44]=Y):Y=e[44],e[45]!==Y?(Z=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowTitle,children:Y}),e[45]=Y,e[46]=Z):Z=e[46],e[47]!==h?(ee=(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:h}),e[47]=h,e[48]=ee):ee=e[48],e[49]!==K||e[50]!==n?(te=K?(0,He.jsx)(s.Text,{style:ce.settingsStyles.rowHint,children:n("settings.about.updates.readyToInstall",{version:(0,oe.formatVersionWithPrefix)(K)})}):null,e[49]=K,e[50]=n,e[51]=te):te=e[51],e[52]!==S?(se=S?(0,He.jsx)(s.Text,{style:rt.aboutErrorText,children:S}):null,e[52]=S,e[53]=se):se=e[53],e[54]!==Z||e[55]!==ee||e[56]!==te||e[57]!==se?(ne=(0,He.jsxs)(t.View,{style:ce.settingsStyles.rowContent,children:[Z,ee,te,se]}),e[54]=Z,e[55]=ee,e[56]=te,e[57]=se,e[58]=ne):ne=e[58];const le=f||j;let re,ae;e[59]!==f||e[60]!==n?(re=n(f?"settings.about.updates.checking":"settings.about.updates.check"),e[59]=f,e[60]=n,e[61]=re):re=e[61],e[62]!==I||e[63]!==le||e[64]!==re?(ae=(0,He.jsx)(q.Button,{variant:"outline",size:"sm",onPress:I,disabled:le,children:re}),e[62]=I,e[63]=le,e[64]=re,e[65]=ae):ae=e[65];const de=f||j||!M;let ue,ge,pe,he,be;return e[66]!==j||e[67]!==K||e[68]!==n?(ue=Xe(n,j,K),e[66]=j,e[67]=K,e[68]=n,e[69]=ue):ue=e[69],e[70]!==A||e[71]!==de||e[72]!==ue?(ge=(0,He.jsx)(q.Button,{variant:"default",size:"sm",onPress:A,disabled:de,children:ue}),e[70]=A,e[71]=de,e[72]=ue,e[73]=ge):ge=e[73],e[74]!==ae||e[75]!==ge?(pe=(0,He.jsxs)(t.View,{style:rt.aboutUpdateActions,children:[ae,ge]}),e[74]=ae,e[75]=ge,e[76]=pe):pe=e[76],e[77]!==ne||e[78]!==pe?(he=(0,He.jsxs)(t.View,{style:J,children:[ne,pe]}),e[77]=ne,e[78]=pe,e[79]=he):he=e[79],e[80]!==Q||e[81]!==he?(be=(0,He.jsxs)(He.Fragment,{children:[Q,he]}),e[80]=Q,e[81]=he,e[82]=be):be=e[82],be}function Ze(e,t){const s=(0,l.c)(3);let n;return s[0]!==e||s[1]!==t?(n=(0,R.orderHostsLocalFirst)(e,t),s[0]=e,s[1]=t,s[2]=n):n=s[2],n}function et(e){const t=(0,l.c)(23),{itemId:n,label:c,icon:u,isSelected:p,onSelect:h}=e,{theme:b}=(0,S.useUnistyles)();let y;t[0]!==n||t[1]!==h?(y=()=>{h(n)},t[0]=n,t[1]=h,t[2]=y):y=t[2];const x=y;let f;t[3]!==p?(f={selected:p},t[3]=p,t[4]=f):f=t[4];const j=f;let v,w;t[5]!==p||t[6]!==b.colors.foreground?(v=p&&{color:b.colors.foreground},t[5]=p,t[6]=b.colors.foreground,t[7]=v):v=t[7],t[8]!==v?(w=[ct.label,v],t[8]=v,t[9]=w):w=t[9];const k=w,T=p?ze:De,I=p?b.colors.foreground:b.colors.foregroundMuted;let C,H,_;return t[10]!==u||t[11]!==I||t[12]!==b.iconSize.md?(C=(0,He.jsx)(u,{size:b.iconSize.md,color:I}),t[10]=u,t[11]=I,t[12]=b.iconSize.md,t[13]=C):C=t[13],t[14]!==c||t[15]!==k?(H=(0,He.jsx)(s.Text,{style:k,numberOfLines:1,children:c}),t[14]=c,t[15]=k,t[16]=H):H=t[16],t[17]!==j||t[18]!==x||t[19]!==T||t[20]!==C||t[21]!==H?(_=(0,He.jsxs)(o.Pressable,{accessibilityRole:"button",accessibilityState:j,onPress:x,style:T,children:[C,H]}),t[17]=j,t[18]=x,t[19]=T,t[20]=C,t[21]=H,t[22]=_):_=t[22],_}function tt(e){const t=(0,l.c)(24),{itemId:n,label:c,icon:u,isSelected:p,onSelect:h}=e,{theme:b}=(0,S.useUnistyles)();let y;t[0]!==n||t[1]!==h?(y=()=>{h(n)},t[0]=n,t[1]=h,t[2]=y):y=t[2];const x=y;let f;t[3]!==p?(f={selected:p},t[3]=p,t[4]=f):f=t[4];const j=f;let v,w;t[5]!==p||t[6]!==b.colors.foreground?(v=p&&{color:b.colors.foreground},t[5]=p,t[6]=b.colors.foreground,t[7]=v):v=t[7],t[8]!==v?(w=[ct.label,v],t[8]=v,t[9]=w):w=t[9];const k=w,T=`settings-host-section-${n}`,I=p?ze:De,C=p?b.colors.foreground:b.colors.foregroundMuted;let H,_,V;return t[10]!==u||t[11]!==C||t[12]!==b.iconSize.md?(H=(0,He.jsx)(u,{size:b.iconSize.md,color:C}),t[10]=u,t[11]=C,t[12]=b.iconSize.md,t[13]=H):H=t[13],t[14]!==c||t[15]!==k?(_=(0,He.jsx)(s.Text,{style:k,numberOfLines:1,children:c}),t[14]=c,t[15]=k,t[16]=_):_=t[16],t[17]!==j||t[18]!==x||t[19]!==T||t[20]!==I||t[21]!==H||t[22]!==_?(V=(0,He.jsxs)(o.Pressable,{accessibilityRole:"button",accessibilityState:j,onPress:x,testID:T,style:I,children:[H,_]}),t[17]=j,t[18]=x,t[19]=T,t[20]=I,t[21]=H,t[22]=_,t[23]=V):V=t[23],V}function st(e){const n=(0,l.c)(29),{activeServerId:o,sortedHosts:u,onSelectHost:p,onAddHost:h,enableBuiltInDaemonOption:b}=e,{t:y}=(0,x.useTranslation)(),[S,f]=(0,c.useState)(!1),j=(0,c.useRef)(null);let v;n[0]!==o||n[1]!==u?(v=u.find(e=>e.serverId===o)??u[0]??null,n[0]=o,n[1]=u,n[2]=v):v=n[2];const k=v;let T;n[3]===Symbol.for("react.memo_cache_sentinel")?(T=()=>f(!0),n[3]=T):T=n[3];const H=T,_=it,V=nt,B=o??"",L=b.visible,P=b.onPress;let D,z,R,A,M,O,K;return n[4]!==y?(D=y("settings.hostPicker.switchHost"),n[4]=y,n[5]=D):D=n[5],n[6]!==y?(z=y("settings.hostPicker.switchHost"),n[6]=y,n[7]=z):z=n[7],n[8]!==k?(R=k?(0,He.jsx)(t.View,{style:ct.pickerTriggerDot,children:(0,He.jsx)(C.HostStatusDot,{serverId:k.serverId})}):null,n[8]=k,n[9]=R):R=n[9],n[10]!==k?.label||n[11]!==y?(A=k?.label??y("settings.groups.host"),n[10]=k?.label,n[11]=y,n[12]=A):A=n[12],n[13]!==A?(M=(0,He.jsx)(s.Text,{style:ct.pickerTriggerLabel,numberOfLines:1,children:A}),n[13]=A,n[14]=M):M=n[14],n[15]!==M||n[16]!==z||n[17]!==R?(O=(0,He.jsxs)(w.ComboboxTrigger,{ref:j,block:!0,style:V,onPress:H,accessibilityRole:"button",accessibilityLabel:z,testID:"settings-host-picker",children:[R,M]}),n[15]=M,n[16]=z,n[17]=R,n[18]=O):O=n[18],n[19]!==b.onPress||n[20]!==b.visible||n[21]!==S||n[22]!==h||n[23]!==p||n[24]!==u||n[25]!==O||n[26]!==B||n[27]!==D?(K=(0,He.jsx)(I.HostPicker,{hosts:u,value:B,onSelect:p,open:S,onOpenChange:f,anchorRef:j,includeAddHost:!0,onAddHost:h,includeEnableBuiltInDaemon:L,onEnableBuiltInDaemon:P,showActiveConnection:!0,searchable:!1,title:D,desktopMinWidth:240,addHostTestID:"settings-add-host",hostOptionTestID:_,children:O}),n[19]=b.onPress,n[20]=b.visible,n[21]=S,n[22]=h,n[23]=p,n[24]=u,n[25]=O,n[26]=B,n[27]=D,n[28]=K):K=n[28],K}function nt(e){const{hovered:t}=e,s=void 0!==t&&t;return[ct.pickerTrigger,s&&ct.pickerTriggerHovered]}function it(e){return`settings-host-picker-item-${e}`}function ot(e){const c=(0,l.c)(51),{view:u,onSelectSection:p,onSelectHostSection:h,onSelectHost:b,onAddHost:f,onBackToWorkspace:v,activeHostServerId:w,layout:I}=e,{theme:C}=(0,S.useUnistyles)(),{t:H}=(0,x.useTranslation)(),_=Ze((0,D.useHosts)(),(0,ve.useLocalDaemonServerId)()),V=_.length>0,B=(0,we.useEnableBuiltInDaemonOption)(),L=(0,ne.isElectronRuntime)(),P=Ve.filter(e=>(!e.desktopOnly||L)&&(!e.webOnly||Ce.isWeb)),z=(0,y.useSafeAreaInsets)(),R="desktop"===I,O=R?ct.desktopContainer:ct.mobileContainer;let K;c[0]!==O?(K=[O],c[0]=O,c[1]=K):K=c[1];const U=K;let W,E,F;c[2]===Symbol.for("react.memo_cache_sentinel")?(W={flex:1},c[2]=W):W=c[2],c[3]!==z.top||c[4]!==R?(E=R?{paddingTop:z.top}:null,c[3]=z.top,c[4]=R,c[5]=E):E=c[5],c[6]!==E?(F=[W,E],c[6]=E,c[7]=F):F=c[7];const N=F,G="section"===u.kind?u.section:null;let $;c[8]!==u.kind||c[9]!==u.section?($=null,"host"===u.kind&&($=u.section),"project"===u.kind&&($="projects"),"plugin"===u.kind&&($="plugins"),c[8]=u.kind,c[9]=u.section,c[10]=$):$=c[10];const q=t.View,Q=ct;let J,X,Y;c[11]!==H?(J=H("settings.groups.app"),c[11]=H,c[12]=J):J=c[12],c[13]!==J?(X=(0,He.jsx)(s.Text,{style:ct.groupLabel,children:J}),c[13]=J,c[14]=X):X=c[14],c[15]!==p||c[16]!==G||c[17]!==H?(Y=e=>(0,He.jsx)(et,{itemId:e.id,label:H(e.labelKey),icon:e.icon,isSelected:G===e.id,onSelect:p},e.id),c[15]=p,c[16]=G,c[17]=H,c[18]=Y):Y=c[18];const Z=P.map(Y);let ee,te,se,ie;c[19]!==q||c[20]!==Z||c[21]!==Q.list||c[22]!==X?(ee=(0,He.jsxs)(q,{style:Q.list,children:[X,Z]}),c[19]=q,c[20]=Z,c[21]=Q.list,c[22]=X,c[23]=ee):ee=c[23],c[24]===Symbol.for("react.memo_cache_sentinel")?(te=(0,He.jsx)(T.SidebarSeparator,{}),c[24]=te):te=c[24],c[25]!==w||c[26]!==B||c[27]!==V||c[28]!==f||c[29]!==b||c[30]!==h||c[31]!==$||c[32]!==_||c[33]!==H||c[34]!==C?(se=V?(0,He.jsxs)(t.View,{style:ct.list,children:[(0,He.jsx)(s.Text,{style:ct.groupLabel,children:H("settings.groups.host")}),(0,He.jsx)(st,{activeServerId:w,sortedHosts:_,onSelectHost:b,onAddHost:f,enableBuiltInDaemonOption:B}),Be.map(e=>(0,He.jsx)(tt,{itemId:e.id,label:H(e.labelKey),icon:e.icon,isSelected:$===e.id,onSelect:h},e.id))]}):(0,He.jsxs)(t.View,{style:ct.list,children:[(0,He.jsxs)(o.Pressable,{accessibilityRole:"button",accessibilityLabel:H("settings.addHost"),onPress:f,testID:"settings-add-host",style:De,children:[(0,He.jsx)(j.Plus,{size:C.iconSize.md,color:C.colors.foregroundMuted}),(0,He.jsx)(s.Text,{style:ct.label,numberOfLines:1,children:H("settings.addHost")})]}),B.visible?(0,He.jsxs)(o.Pressable,{accessibilityRole:"button",accessibilityLabel:H("settings.enableBuiltInDaemon"),onPress:B.onPress,testID:"settings-enable-built-in-daemon",style:De,children:[(0,He.jsx)(j.Server,{size:C.iconSize.md,color:C.colors.foregroundMuted}),(0,He.jsx)(s.Text,{style:ct.label,numberOfLines:1,children:H("settings.enableBuiltInDaemon")})]}):null]}),c[25]=w,c[26]=B,c[27]=V,c[28]=f,c[29]=b,c[30]=h,c[31]=$,c[32]=_,c[33]=H,c[34]=C,c[35]=se):se=c[35],c[36]!==ee||c[37]!==se?(ie=(0,He.jsxs)(He.Fragment,{children:[ee,te,se]}),c[36]=ee,c[37]=se,c[38]=ie):ie=c[38];const oe=ie;let le,re,ae;return c[39]!==H?(le=H("settings.title"),c[39]=H,c[40]=le):le=c[40],c[41]!==N||c[42]!==R||c[43]!==v||c[44]!==oe||c[45]!==H?(re=R?(0,He.jsxs)(t.View,{style:N,children:[(0,He.jsxs)(t.View,{style:ct.sidebarDragArea,children:[(0,He.jsx)(A.TitlebarDragRegion,{}),(0,He.jsx)(M.WindowChromeSafeArea,{placement:"below"}),(0,He.jsx)(k.SidebarHeaderRow,{icon:j.ArrowLeft,label:H("settings.backToWorkspace"),onPress:v,testID:"settings-back-to-workspace"})]}),(0,He.jsx)(n.ScrollView,{style:ct.scrollBody,showsVerticalScrollIndicator:!1,testID:"settings-sidebar-scroll-body",children:oe})]}):oe,c[41]=N,c[42]=R,c[43]=v,c[44]=oe,c[45]=H,c[46]=re):re=c[46],c[47]!==U||c[48]!==le||c[49]!==re?(ae=(0,He.jsx)(t.View,{accessibilityLabel:le,role:"navigation",style:U,testID:"settings-sidebar",children:re}),c[47]=U,c[48]=le,c[49]=re,c[50]=ae):ae=c[50],ae}function lt({view:e,openAddHostIntent:o=null}){const l=(0,h.useRouter)(),{theme:u}=(0,S.useUnistyles)(),{t:p}=(0,x.useTranslation)(),v=(0,ue.useVoiceAudioEngineOptional)(),{settings:w,isLoading:k,updateSettings:T}=(0,P.useAppSettings)(),[I,C]=(0,c.useState)(!1),[V,z]=(0,c.useState)(!1),[A,O]=(0,c.useState)(!1),[q,Q]=(0,c.useState)(!1),[J,X]=(0,c.useState)(!1),[Y,ie]=(0,c.useState)(null),re=(0,c.useRef)(null),ae=(0,ne.isElectronRuntime)(),ce=(0,le.resolveAppVersion)(),ge=(0,oe.formatVersionWithPrefix)(ce),pe=(0,je.useIsCompactFormFactor)(),Se=(0,y.useSafeAreaInsets)(),xe=(0,c.useMemo)(()=>({paddingBottom:Se.bottom}),[Se.bottom]),me=(0,D.useHosts)(),we=(0,ve.useLocalDaemonServerId)(),Pe=Ze(me,we),De=(0,Te.useLastWorkspaceSelection)(),ze="host"===e.kind||"project"===e.kind||"plugin"===e.kind?e.serverId:null,[Re,Ae]=(0,c.useState)(ze??De?.serverId??null);(0,b.useFocusEffect)((0,c.useCallback)(()=>{Ae(ze??De?.serverId??null)},[De?.serverId,ze]));const Me=(0,c.useMemo)(()=>"host"===e.kind||"project"===e.kind||"plugin"===e.kind?e.serverId:(0,R.resolveActiveHostServerId)({selectedServerId:Re,localServerId:we,hosts:me,orderedHosts:Pe}),[e,Re,we,me,Pe]),Oe=(0,c.useCallback)(e=>{T({sendBehavior:e})},[T]),Ke=(0,c.useCallback)(e=>{T({serviceUrlBehavior:e})},[T]),Ue=(0,c.useCallback)(e=>{T({language:e})},[T]),We=(0,c.useCallback)(e=>{T({terminalScrollbackLines:e})},[T]),Ne=(0,c.useCallback)(e=>{T({useLegacyTerminalRenderer:e})},[T]),$e=(0,c.useCallback)(async()=>{if(v&&!J){X(!0),ie(null);try{const e=f.Buffer.from(de.THINKING_TONE_NATIVE_PCM_BASE64,"base64");await v.initialize(),v.stop(),await v.play({type:"audio/pcm;rate=16000;bits=16",size:e.byteLength,arrayBuffer:async()=>Uint8Array.from(e).buffer}),ie(null)}catch(e){const t=e instanceof Error?e.message:String(e);console.error("[Settings] Playback test failed",e),ie(p("settings.diagnostics.playbackFailed",{message:t}))}finally{X(!1)}}},[J,p,v]),qe=(0,c.useCallback)(()=>{C(!1),z(!1),O(!1),Q(!1)},[]),Qe=(0,c.useCallback)(()=>{z(!1),O(!1),Q(!1),C(!0)},[]),Je=(0,c.useCallback)(()=>{C(!0)},[]);(0,c.useEffect)(()=>{o&&re.current!==o&&(re.current=o,Je())},[Je,o]);const Xe=(0,c.useCallback)(()=>{C(!1),z(!0)},[]),Ye=(0,c.useCallback)(()=>{C(!1),O(!0)},[]),et=(0,c.useCallback)(()=>{C(!1),Q(!0)},[]),tt=(0,c.useCallback)(({serverId:e})=>{const t=(0,ke.buildSettingsHostSectionRoute)(e,"connections");pe?l.push(t):l.replace(t)},[pe,l]),st=(0,c.useCallback)(e=>{const t=(0,ke.buildSettingsSectionRoute)(e);pe?l.push(t):l.replace(t)},[pe,l]),nt=(0,c.useCallback)(t=>{if(Ae(t),"project"===e.kind){const e=(0,ke.buildSettingsHostSectionRoute)(t,"projects");return void(pe?l.push(e):l.replace(e))}if("host"!==e.kind)return;const s=(0,ke.buildSettingsHostSectionRoute)(t,e.section);pe?l.push(s):l.replace(s)},[pe,l,e]),it=(0,c.useCallback)(e=>{if(!Me)return void Je();const t=(0,ke.buildSettingsHostSectionRoute)(Me,e);pe?l.push(t):l.replace(t)},[Me,Je,pe,l]),lt=(0,c.useCallback)(()=>{qe(),l.push({pathname:"/pair-scan",params:{source:"settings"}})},[qe,l]),ct=(0,c.useCallback)(()=>{const e=(0,ke.buildSettingsSectionRoute)("general");pe?l.replace("/settings"):l.replace(e)},[pe,l]),dt=(0,c.useCallback)(()=>{(0,Ie.returnFromSettings)(e)},[e]),ut=(0,c.useCallback)(()=>{(0,Ie.returnFromSettings)({kind:"root"})},[]),gt=(0,ye.useInstalledPlugins)(),pt=(()=>{if("plugin"===e.kind){const t=gt.find(t=>t.serverId===e.serverId&&t.id===e.pluginId)?.settingsScreens.find(t=>t.id===e.screenId);return{title:`${e.pluginId} \xb7 ${t?.title??p("settings.title")}`,Icon:t?(0,he.resolvePluginIcon)(t.icon):j.Blocks}}if("host"===e.kind){const t=Be.find(t=>t.id===e.section);return t?{title:p(t.labelKey),Icon:t.icon}:null}if("section"===e.kind){const t=Ve.find(t=>t.id===e.section);return t?{title:p(t.labelKey),Icon:t.icon}:null}return"project"===e.kind?{title:p("settings.projects"),Icon:j.FolderGit2}:null})();let ht;if(ht="section"===e.kind&&"layout"===e.section?ae?(0,He.jsx)(L.LayoutSection,{}):null:(()=>{if("plugin"===e.kind)return(0,He.jsx)(be.PluginSettingsContent,{serverId:e.serverId,pluginId:e.pluginId,screenId:e.screenId});if("host"===e.kind)return Le(e,ct);if("project"===e.kind)return(0,He.jsx)(fe.default,{serverId:e.serverId,projectId:e.projectId,onBackToProjects:dt,showBackToProjects:!pe});if("section"===e.kind)switch(e.section){case"general":return(0,He.jsxs)(He.Fragment,{children:[(0,He.jsx)(Ee,{settings:w,isDesktopApp:ae,handleSendBehaviorChange:Oe,handleServiceUrlBehaviorChange:Ke,handleLanguageChange:Ue,handleTerminalScrollbackLinesChange:We}),ae?(0,He.jsx)(te.BrowserDataSection,{}):null]});case"appearance":return(0,He.jsx)(B.AppearanceSection,{});case"editor":return Ce.isWeb?(0,He.jsx)($.EditorSection,{}):null;case"shortcuts":return ae?(0,He.jsx)(G.KeyboardShortcutsSection,{}):null;case"integrations":return ae?(0,He.jsx)(se.IntegrationsSection,{}):null;case"notifications":return ae?(0,He.jsx)(ee.DesktopNotificationsSection,{}):null;case"permissions":return ae?(0,He.jsx)(Z.DesktopPermissionsSection,{}):null;case"diagnostics":return(0,He.jsx)(Fe,{useLegacyTerminalRenderer:w.useLegacyTerminalRenderer,onUseLegacyTerminalRendererChange:Ne,voiceAudioEngine:v,isPlaybackTestRunning:J,playbackTestResult:Y,handlePlaybackTest:$e});case"about":return(0,He.jsx)(Ge,{appVersion:ce,appVersionText:ge,isDesktopApp:ae})}return null})(),k)return(0,He.jsx)(t.View,{style:rt.loadingContainer,children:(0,He.jsx)(s.Text,{style:rt.loadingText,children:p("settings.loading")})});const bt=pt?(0,He.jsxs)(He.Fragment,{children:[(0,He.jsx)(_.HeaderIconBadge,{children:(0,He.jsx)(pt.Icon,{size:u.iconSize.md,color:u.colors.foregroundMuted})}),(0,He.jsx)(H.ScreenTitle,{testID:"settings-detail-header-title",children:pt.title}),pt.titleAccessory]}):null,yt=(0,He.jsxs)(He.Fragment,{children:[(0,He.jsx)(W.AddHostMethodModal,{visible:I,onClose:qe,onDirectConnection:Xe,onRemoteSsh:Ye,onPasteLink:et,onScanQr:lt}),(0,He.jsx)(E.AddHostModal,{visible:V,onClose:qe,onCancel:Qe,onSaved:tt}),(0,He.jsx)(F.AddRemoteSshHostModal,{visible:A,onClose:qe,onCancel:Qe,onSaved:tt}),(0,He.jsx)(N.PairLinkModal,{visible:q,onClose:qe,onCancel:Qe,onSaved:tt})]});return pe&&"root"===e.kind?(0,He.jsxs)(t.View,{style:rt.container,children:[(0,He.jsx)(K.BackHeader,{title:p("settings.title"),onBack:ut}),(0,He.jsx)(n.ScrollView,{style:rt.scrollView,contentContainerStyle:xe,children:(0,He.jsx)(ot,{view:e,onSelectSection:st,onSelectHostSection:it,onSelectHost:nt,onAddHost:Je,onBackToWorkspace:ut,activeHostServerId:Me,layout:"mobile"})}),yt]}):pe?(0,He.jsxs)(t.View,{style:rt.container,children:[(0,He.jsx)(K.BackHeader,{title:pt?.title,titleAccessory:pt?.titleAccessory,onBack:dt}),(0,He.jsx)(n.ScrollView,{style:rt.scrollView,contentContainerStyle:xe,children:(0,He.jsx)(t.View,{style:rt.content,children:ht})}),yt]}):(0,He.jsxs)(t.View,{style:rt.container,children:[(0,He.jsxs)(t.View,{style:at.row,children:[(0,He.jsx)(M.WindowChromeRegion,{corners:"top-left",children:(0,He.jsx)(ot,{view:e,onSelectSection:st,onSelectHostSection:it,onSelectHost:nt,onAddHost:Je,onBackToWorkspace:ut,activeHostServerId:Me,layout:"desktop"})}),(0,He.jsx)(M.WindowChromeRegion,{corners:"top-right",children:(0,He.jsxs)(t.View,{style:at.contentPane,testID:"settings-detail-pane",children:[(0,He.jsx)(U.ScreenHeader,{borderless:!pt,left:bt,leftStyle:at.detailLeft}),(0,He.jsx)(n.ScrollView,{style:rt.scrollView,contentContainerStyle:xe,children:(0,He.jsx)(t.View,{style:rt.content,children:ht})})]})})]}),yt]})}const rt=S.StyleSheet.create(e=>({loadingContainer:{flex:1,backgroundColor:e.colors.surface0,alignItems:"center",justifyContent:"center",uni__dependencies:[0]},loadingText:{color:e.colors.foreground,fontSize:e.fontSize.base,uni__dependencies:[0]},container:{flex:1,backgroundColor:e.colors.surface0,uni__dependencies:[0]},scrollView:{flex:1},content:{padding:e.spacing[4],paddingTop:e.spacing[6],width:"100%",maxWidth:720,alignSelf:"center",uni__dependencies:[0]},aboutValue:{color:e.colors.foregroundMuted,fontSize:e.fontSize.base,uni__dependencies:[0]},aboutVersionMismatch:{color:e.colors.palette.amber[500],uni__dependencies:[0]},aboutErrorText:{color:e.colors.palette.red[300],fontSize:e.fontSize.sm,marginTop:e.spacing[1],uni__dependencies:[0]},aboutCommunity:{marginTop:e.spacing[4],uni__dependencies:[0]},aboutUpdateActions:{flexDirection:"row",alignItems:"center",gap:e.spacing[2],uni__dependencies:[0]},themeTrigger:{flexDirection:"row",alignItems:"center",gap:e.spacing[1],paddingVertical:e.spacing[1],paddingHorizontal:e.spacing[2],borderRadius:e.borderRadius.md,borderWidth:1,borderColor:e.colors.border,uni__dependencies:[0]},themeTriggerText:{color:e.colors.foreground,fontSize:e.fontSize.base,uni__dependencies:[0]},terminalScrollbackInput:{width:112,minHeight:36,paddingVertical:e.spacing[2],paddingHorizontal:e.spacing[3],borderRadius:e.borderRadius.md,borderWidth:1,borderColor:e.colors.border,backgroundColor:e.colors.surface2,color:e.colors.foreground,fontSize:e.fontSize.base,textAlign:"right",uni__dependencies:[0]},placeholder:{flex:1,alignItems:"center",justifyContent:"center",paddingVertical:e.spacing[8],uni__dependencies:[0]},placeholderText:{color:e.colors.foregroundMuted,fontSize:e.fontSize.base,uni__dependencies:[0]}})),at=S.StyleSheet.create(e=>({row:{flex:1,flexDirection:"row"},contentPane:{flex:1},detailLeft:{gap:e.spacing[2],uni__dependencies:[0]}})),ct=S.StyleSheet.create(e=>({desktopContainer:{width:je.SETTINGS_DESKTOP_SIDEBAR_WIDTH,borderRightWidth:1,borderRightColor:e.colors.border,backgroundColor:e.colors.surfaceSidebar,uni__dependencies:[0]},scrollBody:{flex:1},sidebarDragArea:{position:"relative"},mobileContainer:{paddingVertical:e.spacing[2],paddingHorizontal:e.spacing[2],uni__dependencies:[0]},list:{paddingVertical:e.spacing[2],paddingHorizontal:e.spacing[2],gap:e.spacing[1],uni__dependencies:[0]},groupLabel:{fontSize:e.fontSize.base,fontWeight:e.fontWeight.medium,color:e.colors.foregroundMuted,paddingHorizontal:e.spacing[2],paddingVertical:e.spacing[1],uni__dependencies:[0]},item:{flexDirection:"row",alignItems:"center",gap:e.spacing[2],minHeight:36,paddingVertical:e.spacing[2],paddingHorizontal:e.spacing[2],borderRadius:e.borderRadius.lg,uni__dependencies:[0]},itemHovered:{backgroundColor:e.colors.surfaceSidebarHover,uni__dependencies:[0]},itemSelected:{backgroundColor:e.colors.surfaceSidebarHover,uni__dependencies:[0]},label:{fontSize:e.fontSize.base,color:e.colors.foregroundMuted,fontWeight:e.fontWeight.normal,flex:1,uni__dependencies:[0]},pickerTrigger:{flexDirection:"row",alignItems:"center",gap:e.spacing[2],minHeight:36,paddingVertical:e.spacing[2],paddingHorizontal:e.spacing[2],borderRadius:e.borderRadius.lg,uni__dependencies:[0]},pickerTriggerHovered:{backgroundColor:e.colors.surfaceSidebarHover,uni__dependencies:[0]},pickerTriggerLabel:{flex:1,minWidth:0,fontSize:e.fontSize.base,color:e.colors.foreground,fontWeight:e.fontWeight.normal,uni__dependencies:[0]},pickerTriggerDot:{width:e.iconSize.md,height:e.iconSize.md,alignItems:"center",justifyContent:"center",uni__dependencies:[0]}}))},5014,[895,896,1143,897,453,36,395,425,182,234,146,3684,455,460,626,56,853,52,1217,3702,4365,4107,5015,3810,3811,4224,4491,3706,5016,5020,883,3466,3420,3518,4082,4021,3526,4986,4221,5021,5022,5023,5024,5025,5026,2983,3675,4941,4749,3686,5027,5031,5032,5033,881,4542,4115,3463,3906,4079,3703,4450,4443,2980,5035,3666,5056,3441,5057,5061,5062,5063,1216,3812,5068,3658,3654,4124,880,279]);
|
|
16774
16774
|
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.SidebarSeparator=function(){const n=(0,o.c)(1);let s;n[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,c.jsx)(t.View,{style:l.line}),n[0]=s):s=n[0];return s};var t=r(d[0]),o=r(d[1]);r(d[2]);var n=r(d[3]),c=r(d[4]);const l=n.StyleSheet.create(t=>({line:{borderBottomWidth:1,borderBottomColor:t.colors.border,uni__dependencies:[0]}}))},5015,[895,453,146,56,279]);
|
|
Binary file
|
|
Binary file
|
|
@@ -85,6 +85,6 @@
|
|
|
85
85
|
<body>
|
|
86
86
|
<noscript>You need to enable JavaScript to run this app.</noscript>
|
|
87
87
|
<div id="root"></div>
|
|
88
|
-
<script src="/_expo/static/js/web/index-
|
|
88
|
+
<script src="/_expo/static/js/web/index-eea906265aedcd4db33c30026e13c019.js" defer></script>
|
|
89
89
|
</body>
|
|
90
90
|
</html>
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getpaseo/server",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.1",
|
|
4
4
|
"description": "Paseo backend server",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist/server",
|
|
@@ -106,11 +106,11 @@
|
|
|
106
106
|
"@agentclientprotocol/sdk": "^0.17.1",
|
|
107
107
|
"@anthropic-ai/claude-agent-sdk": "0.3.246",
|
|
108
108
|
"@anthropic-ai/sdk": "^0.104.2",
|
|
109
|
-
"@getpaseo/client": "0.9.
|
|
110
|
-
"@getpaseo/highlight": "0.9.
|
|
111
|
-
"@getpaseo/plugin": "0.9.
|
|
112
|
-
"@getpaseo/protocol": "0.9.
|
|
113
|
-
"@getpaseo/relay": "0.9.
|
|
109
|
+
"@getpaseo/client": "0.9.1",
|
|
110
|
+
"@getpaseo/highlight": "0.9.1",
|
|
111
|
+
"@getpaseo/plugin": "0.9.1",
|
|
112
|
+
"@getpaseo/protocol": "0.9.1",
|
|
113
|
+
"@getpaseo/relay": "0.9.1",
|
|
114
114
|
"@isaacs/ttlcache": "^2.1.4",
|
|
115
115
|
"@modelcontextprotocol/sdk": "1.29.0",
|
|
116
116
|
"@opencode-ai/sdk": "1.14.46",
|