@kortix/sdk 0.13.3 → 0.13.5
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/browser/cache/idb-sync-cache.d.ts +19 -1
- package/dist/browser/cache/idb-sync-cache.d.ts.map +1 -1
- package/dist/browser/cache/idb-sync-cache.js +39 -4
- package/dist/browser/cache/idb-sync-cache.js.map +1 -1
- package/dist/browser/session-sync/session-sync-registry.d.ts +20 -0
- package/dist/browser/session-sync/session-sync-registry.d.ts.map +1 -1
- package/dist/browser/session-sync/session-sync-registry.js +69 -6
- package/dist/browser/session-sync/session-sync-registry.js.map +1 -1
- package/dist/browser/session-sync/visibility.d.ts +19 -0
- package/dist/browser/session-sync/visibility.d.ts.map +1 -0
- package/dist/browser/session-sync/visibility.js +16 -0
- package/dist/browser/session-sync/visibility.js.map +1 -0
- package/dist/browser/stores/sandbox-connection-store.js +1 -1
- package/dist/browser/stores/sandbox-connection-store.js.map +1 -1
- package/dist/browser/stores/sync-store.d.ts +27 -1
- package/dist/browser/stores/sync-store.d.ts.map +1 -1
- package/dist/browser/stores/sync-store.js +198 -41
- package/dist/browser/stores/sync-store.js.map +1 -1
- package/dist/core/client/kortix.d.ts +0 -11
- package/dist/core/client/kortix.d.ts.map +1 -1
- package/dist/core/client/kortix.js +14 -8
- package/dist/core/client/kortix.js.map +1 -1
- package/dist/core/rest/projects-client/channels.d.ts +0 -3
- package/dist/core/rest/projects-client/channels.d.ts.map +1 -1
- package/dist/core/rest/projects-client/channels.js +0 -6
- package/dist/core/rest/projects-client/channels.js.map +1 -1
- package/dist/core/rest/projects-client/index.d.ts +0 -2
- package/dist/core/rest/projects-client/index.d.ts.map +1 -1
- package/dist/core/rest/projects-client/index.js +0 -2
- package/dist/core/rest/projects-client/index.js.map +1 -1
- package/dist/core/rest/projects-client/projects.d.ts +1 -1
- package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
- package/dist/core/rest/projects-client/projects.js +5 -3
- package/dist/core/rest/projects-client/projects.js.map +1 -1
- package/dist/core/rest/projects-client/sessions.d.ts +8 -33
- package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
- package/dist/core/rest/projects-client/sessions.js +1 -18
- package/dist/core/rest/projects-client/sessions.js.map +1 -1
- package/dist/core/runtime/attachment-part.d.ts +26 -0
- package/dist/core/runtime/attachment-part.d.ts.map +1 -0
- package/dist/core/runtime/attachment-part.js +41 -0
- package/dist/core/runtime/attachment-part.js.map +1 -0
- package/dist/core/runtime/client.d.ts +4 -2
- package/dist/core/runtime/client.d.ts.map +1 -1
- package/dist/core/runtime/client.js +3 -2
- package/dist/core/runtime/client.js.map +1 -1
- package/dist/core/runtime/opencode-v2-event-aliases.d.ts +184 -0
- package/dist/core/runtime/opencode-v2-event-aliases.d.ts.map +1 -0
- package/dist/core/runtime/opencode-v2-event-aliases.js +2 -0
- package/dist/core/runtime/opencode-v2-event-aliases.js.map +1 -0
- package/dist/core/runtime/pty.d.ts +11 -1
- package/dist/core/runtime/pty.d.ts.map +1 -1
- package/dist/core/runtime/pty.js +19 -6
- package/dist/core/runtime/pty.js.map +1 -1
- package/dist/core/session/connection.d.ts +64 -0
- package/dist/core/session/connection.d.ts.map +1 -0
- package/dist/core/session/connection.js +36 -0
- package/dist/core/session/connection.js.map +1 -0
- package/dist/core/session/index.d.ts +1 -0
- package/dist/core/session/index.d.ts.map +1 -1
- package/dist/core/session/index.js +1 -0
- package/dist/core/session/index.js.map +1 -1
- package/dist/core/session/preview-auth.d.ts +25 -0
- package/dist/core/session/preview-auth.d.ts.map +1 -1
- package/dist/core/session/preview-auth.js +31 -1
- package/dist/core/session/preview-auth.js.map +1 -1
- package/dist/core/session/preview-config.d.ts +26 -0
- package/dist/core/session/preview-config.d.ts.map +1 -0
- package/dist/core/session/preview-config.js +95 -0
- package/dist/core/session/preview-config.js.map +1 -0
- package/dist/core/session/preview-options.d.ts +25 -0
- package/dist/core/session/preview-options.d.ts.map +1 -0
- package/dist/core/session/preview-options.js +45 -0
- package/dist/core/session/preview-options.js.map +1 -0
- package/dist/core/session/preview.d.ts +8 -3
- package/dist/core/session/preview.d.ts.map +1 -1
- package/dist/core/session/preview.js +11 -4
- package/dist/core/session/preview.js.map +1 -1
- package/dist/core/session/rewind.d.ts +67 -24
- package/dist/core/session/rewind.d.ts.map +1 -1
- package/dist/core/session/rewind.js +74 -26
- package/dist/core/session/rewind.js.map +1 -1
- package/dist/core/session/server-store/active.d.ts +10 -12
- package/dist/core/session/server-store/active.d.ts.map +1 -1
- package/dist/core/session/server-store/active.js +11 -9
- package/dist/core/session/server-store/active.js.map +1 -1
- package/dist/core/session/server-store/url-helpers.d.ts +11 -2
- package/dist/core/session/server-store/url-helpers.d.ts.map +1 -1
- package/dist/core/session/server-store/url-helpers.js +11 -2
- package/dist/core/session/server-store/url-helpers.js.map +1 -1
- package/dist/core/session/url.d.ts +25 -2
- package/dist/core/session/url.d.ts.map +1 -1
- package/dist/core/session/url.js +87 -11
- package/dist/core/session/url.js.map +1 -1
- package/dist/core/session/working.d.ts +44 -0
- package/dist/core/session/working.d.ts.map +1 -1
- package/dist/core/session/working.js +146 -4
- package/dist/core/session/working.js.map +1 -1
- package/dist/core/session-sync/durable-log.d.ts +96 -0
- package/dist/core/session-sync/durable-log.d.ts.map +1 -0
- package/dist/core/session-sync/durable-log.js +94 -0
- package/dist/core/session-sync/durable-log.js.map +1 -0
- package/dist/core/session-sync/fragment.d.ts +27 -0
- package/dist/core/session-sync/fragment.d.ts.map +1 -0
- package/dist/core/session-sync/fragment.js +24 -0
- package/dist/core/session-sync/fragment.js.map +1 -0
- package/dist/core/session-sync/session-sync-controller.d.ts +83 -9
- package/dist/core/session-sync/session-sync-controller.d.ts.map +1 -1
- package/dist/core/session-sync/session-sync-controller.js +183 -17
- package/dist/core/session-sync/session-sync-controller.js.map +1 -1
- package/dist/core/turns/grouping.d.ts.map +1 -1
- package/dist/core/turns/grouping.js +60 -23
- package/dist/core/turns/grouping.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/kortix.esm.min.js +24 -24
- package/dist/kortix.global.js +24 -24
- package/dist/platform/auth-core.d.ts +13 -1
- package/dist/platform/auth-core.d.ts.map +1 -1
- package/dist/platform/auth-core.js +13 -1
- package/dist/platform/auth-core.js.map +1 -1
- package/dist/react/opencode.d.ts +1 -0
- package/dist/react/opencode.d.ts.map +1 -1
- package/dist/react/opencode.js +3 -0
- package/dist/react/opencode.js.map +1 -1
- package/dist/react/use-admin-accounts.d.ts +35 -0
- package/dist/react/use-admin-accounts.d.ts.map +1 -1
- package/dist/react/use-admin-accounts.js +18 -0
- package/dist/react/use-admin-accounts.js.map +1 -1
- package/dist/react/use-opencode-events/handle-event.d.ts.map +1 -1
- package/dist/react/use-opencode-events/handle-event.js +26 -0
- package/dist/react/use-opencode-events/handle-event.js.map +1 -1
- package/dist/react/use-opencode-events/index.d.ts.map +1 -1
- package/dist/react/use-opencode-events/index.js +59 -6
- package/dist/react/use-opencode-events/index.js.map +1 -1
- package/dist/react/use-opencode-events/rehydrate-targets.d.ts +18 -0
- package/dist/react/use-opencode-events/rehydrate-targets.d.ts.map +1 -0
- package/dist/react/use-opencode-events/rehydrate-targets.js +20 -0
- package/dist/react/use-opencode-events/rehydrate-targets.js.map +1 -0
- package/dist/react/use-opencode-events/stream-revival.d.ts +37 -0
- package/dist/react/use-opencode-events/stream-revival.d.ts.map +1 -0
- package/dist/react/use-opencode-events/stream-revival.js +53 -0
- package/dist/react/use-opencode-events/stream-revival.js.map +1 -0
- package/dist/react/use-opencode-pty.d.ts +7 -1
- package/dist/react/use-opencode-pty.d.ts.map +1 -1
- package/dist/react/use-opencode-pty.js +6 -2
- package/dist/react/use-opencode-pty.js.map +1 -1
- package/dist/react/use-opencode-sessions/agents.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/agents.js +13 -2
- package/dist/react/use-opencode-sessions/agents.js.map +1 -1
- package/dist/react/use-opencode-sessions/commands.d.ts +12 -0
- package/dist/react/use-opencode-sessions/commands.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/commands.js +15 -3
- package/dist/react/use-opencode-sessions/commands.js.map +1 -1
- package/dist/react/use-opencode-sessions/index.d.ts +1 -0
- package/dist/react/use-opencode-sessions/index.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/index.js +1 -0
- package/dist/react/use-opencode-sessions/index.js.map +1 -1
- package/dist/react/use-opencode-sessions/keys.d.ts +8 -0
- package/dist/react/use-opencode-sessions/keys.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/keys.js +8 -0
- package/dist/react/use-opencode-sessions/keys.js.map +1 -1
- package/dist/react/use-opencode-sessions/providers.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/providers.js +12 -2
- package/dist/react/use-opencode-sessions/providers.js.map +1 -1
- package/dist/react/use-opencode-sessions/shared.d.ts +23 -0
- package/dist/react/use-opencode-sessions/shared.d.ts.map +1 -1
- package/dist/react/use-opencode-sessions/shared.js +31 -0
- package/dist/react/use-opencode-sessions/shared.js.map +1 -1
- package/dist/react/use-opencode-sessions/vcs.d.ts +28 -0
- package/dist/react/use-opencode-sessions/vcs.d.ts.map +1 -0
- package/dist/react/use-opencode-sessions/vcs.js +42 -0
- package/dist/react/use-opencode-sessions/vcs.js.map +1 -0
- package/dist/react/use-session-prompts.d.ts +37 -2
- package/dist/react/use-session-prompts.d.ts.map +1 -1
- package/dist/react/use-session-prompts.js +62 -15
- package/dist/react/use-session-prompts.js.map +1 -1
- package/dist/react/use-session-send.d.ts +17 -0
- package/dist/react/use-session-send.d.ts.map +1 -1
- package/dist/react/use-session-send.js +40 -4
- package/dist/react/use-session-send.js.map +1 -1
- package/dist/react/use-session-sync.d.ts +13 -1
- package/dist/react/use-session-sync.d.ts.map +1 -1
- package/dist/react/use-session-sync.js +81 -55
- package/dist/react/use-session-sync.js.map +1 -1
- package/dist/react/use-session-working.d.ts +17 -0
- package/dist/react/use-session-working.d.ts.map +1 -1
- package/dist/react/use-session-working.js +33 -3
- package/dist/react/use-session-working.js.map +1 -1
- package/package.json +3 -3
- package/dist/browser/session-sync/session-transcript-cache.d.ts +0 -79
- package/dist/browser/session-sync/session-transcript-cache.d.ts.map +0 -1
- package/dist/browser/session-sync/session-transcript-cache.js +0 -91
- package/dist/browser/session-sync/session-transcript-cache.js.map +0 -1
- package/dist/core/rest/projects-client/public-voice-join.d.ts +0 -59
- package/dist/core/rest/projects-client/public-voice-join.d.ts.map +0 -1
- package/dist/core/rest/projects-client/public-voice-join.js +0 -64
- package/dist/core/rest/projects-client/public-voice-join.js.map +0 -1
- package/dist/core/rest/projects-client/transcription.d.ts +0 -5
- package/dist/core/rest/projects-client/transcription.d.ts.map +0 -1
- package/dist/core/rest/projects-client/transcription.js +0 -14
- package/dist/core/rest/projects-client/transcription.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/use-opencode-events/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAGb,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAC;AAC5F,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/use-opencode-events/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which sessions get their transcript re-read after an SSE gap.
|
|
3
|
+
*
|
|
4
|
+
* The old rule was "the ones whose status slot says busy", and it could not
|
|
5
|
+
* work: the status slot is filled BY the stream, so a gap long enough to lose
|
|
6
|
+
* message frames is long enough to lose the status frame that would have
|
|
7
|
+
* marked the session busy. The sessions most likely to be missing content were
|
|
8
|
+
* therefore the ones most likely to be skipped — and a session that went
|
|
9
|
+
* silently idle during the gap kept a truncated final answer with nothing left
|
|
10
|
+
* to correct it.
|
|
11
|
+
*
|
|
12
|
+
* A gap means: for some interval, this tab is not sure what the runtime said.
|
|
13
|
+
* The honest response is to re-read every transcript this tab is holding. That
|
|
14
|
+
* is bounded — a tab holds one open session plus a handful of recently viewed
|
|
15
|
+
* ones — and each read is a single tail page.
|
|
16
|
+
*/
|
|
17
|
+
export declare function sessionsNeedingRehydrate(loadedSessionIds: string[]): string[];
|
|
18
|
+
//# sourceMappingURL=rehydrate-targets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rehydrate-targets.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-events/rehydrate-targets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAE7E"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which sessions get their transcript re-read after an SSE gap.
|
|
3
|
+
*
|
|
4
|
+
* The old rule was "the ones whose status slot says busy", and it could not
|
|
5
|
+
* work: the status slot is filled BY the stream, so a gap long enough to lose
|
|
6
|
+
* message frames is long enough to lose the status frame that would have
|
|
7
|
+
* marked the session busy. The sessions most likely to be missing content were
|
|
8
|
+
* therefore the ones most likely to be skipped — and a session that went
|
|
9
|
+
* silently idle during the gap kept a truncated final answer with nothing left
|
|
10
|
+
* to correct it.
|
|
11
|
+
*
|
|
12
|
+
* A gap means: for some interval, this tab is not sure what the runtime said.
|
|
13
|
+
* The honest response is to re-read every transcript this tab is holding. That
|
|
14
|
+
* is bounded — a tab holds one open session plus a handful of recently viewed
|
|
15
|
+
* ones — and each read is a single tail page.
|
|
16
|
+
*/
|
|
17
|
+
export function sessionsNeedingRehydrate(loadedSessionIds) {
|
|
18
|
+
return [...new Set(loadedSessionIds)];
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=rehydrate-targets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rehydrate-targets.js","sourceRoot":"","sources":["../../../src/react/use-opencode-events/rehydrate-targets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,wBAAwB,CAAC,gBAA0B;IACjE,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bring a PARKED event stream back.
|
|
3
|
+
*
|
|
4
|
+
* `openEventStream` parks after a run of hard failures and documents itself as
|
|
5
|
+
* terminal for that handle — correct, and the point: a dead or archived sandbox
|
|
6
|
+
* should not be hammered forever. But nothing in this package supplied
|
|
7
|
+
* `onParked`, so "terminal for this handle" silently became "terminal for this
|
|
8
|
+
* page". The session view went on rendering a transcript nobody was updating,
|
|
9
|
+
* with no error and no retry, until the user reloaded. That is the "it just
|
|
10
|
+
* loses connection" report.
|
|
11
|
+
*
|
|
12
|
+
* Parking is not a verdict about the sandbox, only about the last few attempts.
|
|
13
|
+
* So revive on the cheapest evidence that something may have changed —
|
|
14
|
+
*
|
|
15
|
+
* - the tab came back (it was throttled; the world moved without us)
|
|
16
|
+
* - the network came back
|
|
17
|
+
* - nothing happened for `reviveAfterMs`, so try once anyway
|
|
18
|
+
*
|
|
19
|
+
* — and revive exactly ONCE per park, so a genuinely dead box costs one connect
|
|
20
|
+
* attempt per interval instead of a retry storm.
|
|
21
|
+
*/
|
|
22
|
+
export interface StreamRevivalOptions {
|
|
23
|
+
/** Self-heal delay when no external signal arrives. Default 30s. */
|
|
24
|
+
reviveAfterMs?: number;
|
|
25
|
+
setTimeout?: (handler: () => void, ms: number) => unknown;
|
|
26
|
+
clearTimeout?: (handle: unknown) => void;
|
|
27
|
+
/** Subscribe to a global event; returns its unsubscribe. Injected for tests. */
|
|
28
|
+
listen?: (event: string, handler: () => void) => () => void;
|
|
29
|
+
}
|
|
30
|
+
export interface StreamRevival {
|
|
31
|
+
/** The stream parked. Arm the triggers. */
|
|
32
|
+
park: () => void;
|
|
33
|
+
/** Tear down, whether or not a revival is armed. */
|
|
34
|
+
stop: () => void;
|
|
35
|
+
}
|
|
36
|
+
export declare function createStreamRevival(revive: () => void, options?: StreamRevivalOptions): StreamRevival;
|
|
37
|
+
//# sourceMappingURL=stream-revival.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream-revival.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-events/stream-revival.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IAC1D,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,gFAAgF;IAChF,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAC;CAC7D;AAED,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,oDAAoD;IACpD,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAkBD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,IAAI,EAClB,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAkCf"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
const DEFAULT_REVIVE_AFTER_MS = 30_000;
|
|
2
|
+
function defaultListen(event, handler) {
|
|
3
|
+
if (typeof globalThis.addEventListener !== 'function')
|
|
4
|
+
return () => { };
|
|
5
|
+
const target = event === 'visibilitychange' && typeof document !== 'undefined' ? document : globalThis;
|
|
6
|
+
const wrapped = () => {
|
|
7
|
+
// A hidden tab is not evidence of anything; only the return is.
|
|
8
|
+
if (event === 'visibilitychange' && typeof document !== 'undefined') {
|
|
9
|
+
if (document.visibilityState !== 'visible')
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
handler();
|
|
13
|
+
};
|
|
14
|
+
target.addEventListener(event, wrapped);
|
|
15
|
+
return () => target.removeEventListener(event, wrapped);
|
|
16
|
+
}
|
|
17
|
+
export function createStreamRevival(revive, options = {}) {
|
|
18
|
+
const reviveAfterMs = options.reviveAfterMs ?? DEFAULT_REVIVE_AFTER_MS;
|
|
19
|
+
const setTimer = options.setTimeout ?? ((handler, ms) => setTimeout(handler, ms));
|
|
20
|
+
const clearTimer = options.clearTimeout ?? ((handle) => clearTimeout(handle));
|
|
21
|
+
const listen = options.listen ?? defaultListen;
|
|
22
|
+
let armed = false;
|
|
23
|
+
let timer;
|
|
24
|
+
let unsubscribers = [];
|
|
25
|
+
const disarm = () => {
|
|
26
|
+
if (!armed)
|
|
27
|
+
return;
|
|
28
|
+
armed = false;
|
|
29
|
+
if (timer !== undefined)
|
|
30
|
+
clearTimer(timer);
|
|
31
|
+
timer = undefined;
|
|
32
|
+
for (const unsubscribe of unsubscribers)
|
|
33
|
+
unsubscribe();
|
|
34
|
+
unsubscribers = [];
|
|
35
|
+
};
|
|
36
|
+
const fire = () => {
|
|
37
|
+
if (!armed)
|
|
38
|
+
return;
|
|
39
|
+
disarm();
|
|
40
|
+
revive();
|
|
41
|
+
};
|
|
42
|
+
return {
|
|
43
|
+
park: () => {
|
|
44
|
+
if (armed)
|
|
45
|
+
return;
|
|
46
|
+
armed = true;
|
|
47
|
+
timer = setTimer(fire, reviveAfterMs);
|
|
48
|
+
unsubscribers = [listen('visibilitychange', fire), listen('online', fire)];
|
|
49
|
+
},
|
|
50
|
+
stop: disarm,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=stream-revival.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream-revival.js","sourceRoot":"","sources":["../../../src/react/use-opencode-events/stream-revival.ts"],"names":[],"mappings":"AAqCA,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAEvC,SAAS,aAAa,CAAC,KAAa,EAAE,OAAmB;IACvD,IAAI,OAAO,UAAU,CAAC,gBAAgB,KAAK,UAAU;QAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,KAAK,KAAK,kBAAkB,IAAI,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IACvG,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,gEAAgE;QAChE,IAAI,KAAK,KAAK,kBAAkB,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YACpE,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS;gBAAE,OAAO;QACrD,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IACF,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxC,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAAkB,EAClB,UAAgC,EAAE;IAElC,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,uBAAuB,CAAC;IACvE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IAClF,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAe,CAAC,CAAC,CAAC;IACvF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,CAAC;IAE/C,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,KAAc,CAAC;IACnB,IAAI,aAAa,GAAsB,EAAE,CAAC;IAE1C,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,KAAK,GAAG,KAAK,CAAC;QACd,IAAI,KAAK,KAAK,SAAS;YAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAC3C,KAAK,GAAG,SAAS,CAAC;QAClB,KAAK,MAAM,WAAW,IAAI,aAAa;YAAE,WAAW,EAAE,CAAC;QACvD,aAAa,GAAG,EAAE,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,GAAG,EAAE;QAChB,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;IACX,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,GAAG,EAAE;YACT,IAAI,KAAK;gBAAE,OAAO;YAClB,KAAK,GAAG,IAAI,CAAC;YACb,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;YACtC,aAAa,GAAG,CAAC,MAAM,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,EAAE,MAAM;KACb,CAAC;AACJ,CAAC"}
|
|
@@ -43,5 +43,11 @@ export declare function useUpdatePty(options?: PtyMutationOptions): import("@tan
|
|
|
43
43
|
cols: number;
|
|
44
44
|
};
|
|
45
45
|
}, unknown>;
|
|
46
|
-
|
|
46
|
+
/**
|
|
47
|
+
* `opts.wake` marks a USER-INITIATED attach so the API resumes a parked box.
|
|
48
|
+
* Automatic reconnect attempts must leave it off — see `getKortixPtyWebSocketUrl`.
|
|
49
|
+
*/
|
|
50
|
+
export declare function getPtyWebSocketUrl(ptyId: string, serverUrl?: string, opts?: {
|
|
51
|
+
wake?: boolean;
|
|
52
|
+
}): Promise<string>;
|
|
47
53
|
//# sourceMappingURL=use-opencode-pty.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-opencode-pty.d.ts","sourceRoot":"","sources":["../../src/react/use-opencode-pty.ts"],"names":[],"mappings":"AAGA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,qBAAqB,CAAC;AAU7B,MAAM,MAAM,GAAG,GAAG,SAAS,CAAC;AAQ5B,eAAO,MAAM,OAAO;;sBAEA,MAAM;;iBAEX,MAAM;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;2EAC2E;AAC3E,wBAAgB,oBAAoB,CAClC,OAAO,CAAC,EAAE,kBAAkB,GAC3B;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAAE,CAExC;AAMD,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+EAerF;AAED,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,kBAAkB;cAU7C,MAAM;WACT,MAAM,EAAE;UACT,MAAM;YACJ,MAAM;UACR,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;wBAQjC;AAED,wBAAgB,YAAY,oFAU3B;AAED,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,kBAAkB;QAY/C,MAAM;YACF,MAAM;WACP;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;YAI1C;AAMD,wBAAsB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"use-opencode-pty.d.ts","sourceRoot":"","sources":["../../src/react/use-opencode-pty.ts"],"names":[],"mappings":"AAGA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,qBAAqB,CAAC;AAU7B,MAAM,MAAM,GAAG,GAAG,SAAS,CAAC;AAQ5B,eAAO,MAAM,OAAO;;sBAEA,MAAM;;iBAEX,MAAM;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;2EAC2E;AAC3E,wBAAgB,oBAAoB,CAClC,OAAO,CAAC,EAAE,kBAAkB,GAC3B;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAAE,CAExC;AAMD,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+EAerF;AAED,wBAAgB,YAAY,CAAC,WAAW,CAAC,EAAE,kBAAkB;cAU7C,MAAM;WACT,MAAM,EAAE;UACT,MAAM;YACJ,MAAM;UACR,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;wBAQjC;AAED,wBAAgB,YAAY,oFAU3B;AAED,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,kBAAkB;QAY/C,MAAM;YACF,MAAM;WACP;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;YAI1C;AAMD;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GACxB,OAAO,CAAC,MAAM,CAAC,CAEjB"}
|
|
@@ -73,7 +73,11 @@ export function useUpdatePty(options) {
|
|
|
73
73
|
// ============================================================================
|
|
74
74
|
// WebSocket URL helper
|
|
75
75
|
// ============================================================================
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
/**
|
|
77
|
+
* `opts.wake` marks a USER-INITIATED attach so the API resumes a parked box.
|
|
78
|
+
* Automatic reconnect attempts must leave it off — see `getKortixPtyWebSocketUrl`.
|
|
79
|
+
*/
|
|
80
|
+
export async function getPtyWebSocketUrl(ptyId, serverUrl, opts) {
|
|
81
|
+
return getKortixPtyWebSocketUrl(ptyId, serverUrl || getActiveOpenCodeUrl(), opts);
|
|
78
82
|
}
|
|
79
83
|
//# sourceMappingURL=use-opencode-pty.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-opencode-pty.js","sourceRoot":"","sources":["../../src/react/use-opencode-pty.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"use-opencode-pty.js","sourceRoot":"","sources":["../../src/react/use-opencode-pty.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/agents.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAGxD,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/agents.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAGxD,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAK9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAMzD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,2EA4D5F;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,CAAC,MAAM,EAAE,oBAAoB,GAAG,KAAK,EAAE,CASzF;AAYD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,qFAajD"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { useQuery } from '@tanstack/react-query';
|
|
2
|
+
import { useQuery, useQueryClient } from '@tanstack/react-query';
|
|
3
3
|
import { getClient } from '../../core/runtime/client.js';
|
|
4
4
|
import { opencodeKeys, useOpenCodeRuntimeReady } from './keys.js';
|
|
5
5
|
import { unwrap, getLSCache, setLSCache, LS_AGENTS, CACHE_SCOPE_GLOBAL } from './shared.js';
|
|
6
6
|
import { getProjectDetail } from '../../core/rest/projects-client/index.js';
|
|
7
|
+
import { contract } from '../query-contracts.js';
|
|
7
8
|
import { qk } from '../query-keys.js';
|
|
8
9
|
// Re-export filtered agents hook for UI agent selectors
|
|
9
10
|
export { useVisibleAgents } from '../use-visible-agents.js';
|
|
@@ -17,6 +18,7 @@ export { useVisibleAgents } from '../use-visible-agents.js';
|
|
|
17
18
|
* this falls back to the sandbox OpenCode runtime.
|
|
18
19
|
*/
|
|
19
20
|
export function useOpenCodeAgents(options) {
|
|
21
|
+
const queryClient = useQueryClient();
|
|
20
22
|
const directory = options?.directory;
|
|
21
23
|
const projectId = options?.projectId ?? null;
|
|
22
24
|
const runtimeReady = useOpenCodeRuntimeReady();
|
|
@@ -41,7 +43,16 @@ export function useOpenCodeAgents(options) {
|
|
|
41
43
|
: opencodeKeys.agents(),
|
|
42
44
|
queryFn: async () => {
|
|
43
45
|
if (projectId) {
|
|
44
|
-
|
|
46
|
+
// Through the CANONICAL entry, not a private fetch. This slot keeps its
|
|
47
|
+
// own key (see above) but it used to issue its own `GET /detail` too —
|
|
48
|
+
// concurrently with `useProjectConfig`'s, 259 ms apart on a real
|
|
49
|
+
// session open, both 88 KB. Same fetcher, same response: fetchQuery on
|
|
50
|
+
// the shared key dedupes an in-flight read and serves a fresh one.
|
|
51
|
+
const detail = await queryClient.fetchQuery({
|
|
52
|
+
queryKey: qk.project.detail(projectId),
|
|
53
|
+
queryFn: () => getProjectDetail(projectId),
|
|
54
|
+
...contract('config'),
|
|
55
|
+
});
|
|
45
56
|
const agents = projectConfigAgentsToOpenCodeAgents(detail.config);
|
|
46
57
|
setLSCache(LS_AGENTS, agents, cacheScope);
|
|
47
58
|
return agents;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/agents.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
import type { Command } from '@opencode-ai/sdk/v2/client';
|
|
2
|
+
/**
|
|
3
|
+
* The session's slash commands.
|
|
4
|
+
*
|
|
5
|
+
* Always resolves an ARRAY. `GET /command` is typed `Command[]`, but a runtime
|
|
6
|
+
* or proxy that answers with an object body used to hand that value straight
|
|
7
|
+
* to the render, where `for (const cmd of commands)` threw
|
|
8
|
+
* `TypeError: t is not iterable` and killed the whole session view (dev,
|
|
9
|
+
* 2026-08-23). `asRuntimeList` normalizes the response and `cachedRuntimeList`
|
|
10
|
+
* treats a corrupt localStorage placeholder as a miss, so every consumer
|
|
11
|
+
* (`detectCommandFromText`, the slash menu, command attachments) can iterate
|
|
12
|
+
* the result unconditionally.
|
|
13
|
+
*/
|
|
2
14
|
export declare function useOpenCodeCommands(): import("@tanstack/react-query").UseQueryResult<NoInfer<Command[]>, Error>;
|
|
3
15
|
export interface ExecuteOpenCodeCommandInput {
|
|
4
16
|
sessionId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/commands.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAQ1D,wBAAgB,mBAAmB,8EAgBlC;AAED,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,sBAAsB,CAAC,EAC3C,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,GACR,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAW7C;AAED,wBAAgB,yBAAyB,yGAWxC"}
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/commands.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAQ1D;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,8EAgBlC;AAED,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,sBAAsB,CAAC,EAC3C,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,GACR,EAAE,2BAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,CAW7C;AAED,wBAAgB,yBAAyB,yGAWxC"}
|
|
@@ -2,10 +2,22 @@
|
|
|
2
2
|
import { useQuery, useMutation } from '@tanstack/react-query';
|
|
3
3
|
import { getClient } from '../../core/runtime/client.js';
|
|
4
4
|
import { opencodeKeys, useOpenCodeRuntimeReady } from './keys.js';
|
|
5
|
-
import { unwrap,
|
|
5
|
+
import { unwrap, asRuntimeList, cachedRuntimeList, setLSCache, LS_COMMANDS } from './shared.js';
|
|
6
6
|
// ============================================================================
|
|
7
7
|
// Command Hooks
|
|
8
8
|
// ============================================================================
|
|
9
|
+
/**
|
|
10
|
+
* The session's slash commands.
|
|
11
|
+
*
|
|
12
|
+
* Always resolves an ARRAY. `GET /command` is typed `Command[]`, but a runtime
|
|
13
|
+
* or proxy that answers with an object body used to hand that value straight
|
|
14
|
+
* to the render, where `for (const cmd of commands)` threw
|
|
15
|
+
* `TypeError: t is not iterable` and killed the whole session view (dev,
|
|
16
|
+
* 2026-08-23). `asRuntimeList` normalizes the response and `cachedRuntimeList`
|
|
17
|
+
* treats a corrupt localStorage placeholder as a miss, so every consumer
|
|
18
|
+
* (`detectCommandFromText`, the slash menu, command attachments) can iterate
|
|
19
|
+
* the result unconditionally.
|
|
20
|
+
*/
|
|
9
21
|
export function useOpenCodeCommands() {
|
|
10
22
|
const runtimeReady = useOpenCodeRuntimeReady();
|
|
11
23
|
return useQuery({
|
|
@@ -13,11 +25,11 @@ export function useOpenCodeCommands() {
|
|
|
13
25
|
queryFn: async () => {
|
|
14
26
|
const client = getClient();
|
|
15
27
|
const result = await client.command.list();
|
|
16
|
-
const commands = unwrap(result);
|
|
28
|
+
const commands = asRuntimeList(unwrap(result));
|
|
17
29
|
setLSCache(LS_COMMANDS, commands);
|
|
18
30
|
return commands;
|
|
19
31
|
},
|
|
20
|
-
placeholderData: () =>
|
|
32
|
+
placeholderData: () => cachedRuntimeList(LS_COMMANDS),
|
|
21
33
|
enabled: runtimeReady,
|
|
22
34
|
staleTime: Infinity,
|
|
23
35
|
gcTime: 10 * 60 * 1000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/commands.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/commands.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE7F,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,YAAY,GAAG,uBAAuB,EAAE,CAAC;IAC/C,OAAO,QAAQ,CAAY;QACzB,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE;QACjC,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,aAAa,CAAU,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACxD,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAClC,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,eAAe,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAU,WAAW,CAAC;QAC9D,OAAO,EAAE,YAAY;QACrB,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;KACvB,CAAC,CAAC;AACL,CAAC;AAWD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EAC3C,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,GACqB;IAC5B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;QAC1C,SAAS,EAAE,SAAS;QACpB,OAAO;QACP,SAAS,EAAE,IAAI,IAAI,EAAE;QACrB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC,CAAC;IACH,MAAM,CAAC,MAAM,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,sBAAsB;QAClC,2EAA2E;QAC3E,2EAA2E;QAC3E,0EAA0E;QAC1E,yEAAyE;QACzE,oEAAoE;QACpE,+BAA+B;QAC/B,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -11,5 +11,6 @@ export * from './sharing.js';
|
|
|
11
11
|
export * from './parts.js';
|
|
12
12
|
export * from './files.js';
|
|
13
13
|
export * from './permissions.js';
|
|
14
|
+
export * from './vcs.js';
|
|
14
15
|
export { canQueryOpenCodeSession, clearProjectProviderCache } from './shared.js';
|
|
15
16
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/index.ts"],"names":[],"mappings":"AAKA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/index.ts"],"names":[],"mappings":"AAKA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AAGtB,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -16,6 +16,7 @@ export * from './sharing.js';
|
|
|
16
16
|
export * from './parts.js';
|
|
17
17
|
export * from './files.js';
|
|
18
18
|
export * from './permissions.js';
|
|
19
|
+
export * from './vcs.js';
|
|
19
20
|
// Public session/cache helpers that live in ./shared (otherwise internal).
|
|
20
21
|
export { canQueryOpenCodeSession, clearProjectProviderCache } from './shared.js';
|
|
21
22
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/index.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,+EAA+E;AAC/E,gFAAgF;AAChF,2EAA2E;AAC3E,oBAAoB;AACpB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/index.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,+EAA+E;AAC/E,gFAAgF;AAChF,2EAA2E;AAC3E,oBAAoB;AACpB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AAEtB,2EAA2E;AAC3E,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -91,6 +91,14 @@ export declare const opencodeKeys: {
|
|
|
91
91
|
pathInfo: () => readonly ["opencode", "path-info", string];
|
|
92
92
|
mcpStatus: () => readonly ["opencode", "mcp-status", string];
|
|
93
93
|
worktrees: () => readonly ["opencode", "worktrees", string];
|
|
94
|
+
/**
|
|
95
|
+
* `GET /vcs/diff` — the session's file changes. ONE key per (mode, sandbox),
|
|
96
|
+
* so the tab badge, the header chip and the diff panel share one cache entry
|
|
97
|
+
* and cannot contradict each other on screen.
|
|
98
|
+
*/
|
|
99
|
+
vcsDiff: (mode: "git" | "branch", serverId?: string) => readonly ["opencode", "vcs-diff", "git" | "branch", string];
|
|
100
|
+
/** Prefix over every mode + sandbox — what the event stream invalidates. */
|
|
101
|
+
vcsDiffAll: () => readonly ["opencode", "vcs-diff"];
|
|
94
102
|
};
|
|
95
103
|
export declare function useOpenCodeRuntimeReady(): boolean;
|
|
96
104
|
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/keys.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,OAAO,EACP,OAAO,EACP,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,aAAa,EACb,cAAc,EACd,KAAK,EACL,SAAS,EACT,IAAI,IAAI,QAAQ,EAChB,oBAAoB,IAAI,uBAAuB,EAC/C,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAMpC,YAAY,EACV,OAAO,EACP,OAAO,EACP,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,aAAa,EACb,cAAc,EACd,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,GACnB,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AAE3D;;;GAGG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3C;IACE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE;QACP,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;QACpD,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACxD,CAAC;AAEN,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;yEACqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;CACrB;AAMD,eAAO,MAAM,YAAY;;0BAED,MAAM;kBACd,MAAM;0BACE,MAAM;yBACP,MAAM,aAAa,MAAM;iCAEjB,MAAM,aAAa,MAAM;;;wBAIlC,MAAM,WAAW,MAAM;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/keys.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,OAAO,EACP,OAAO,EACP,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,aAAa,EACb,cAAc,EACd,KAAK,EACL,SAAS,EACT,IAAI,IAAI,QAAQ,EAChB,oBAAoB,IAAI,uBAAuB,EAC/C,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAMpC,YAAY,EACV,OAAO,EACP,OAAO,EACP,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,aAAa,EACb,cAAc,EACd,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,GACnB,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,uBAAuB,CAAC;AAE3D;;;GAGG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3C;IACE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE;QACP,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAA;SAAE,CAAC;QACpD,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACxD,CAAC;AAEN,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;yEACqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;CACrB;AAMD,eAAO,MAAM,YAAY;;0BAED,MAAM;kBACd,MAAM;0BACE,MAAM;yBACP,MAAM,aAAa,MAAM;iCAEjB,MAAM,aAAa,MAAM;;;wBAIlC,MAAM,WAAW,MAAM;;;;;;;;;IAU3C;;;;OAIG;oBACa,KAAK,GAAG,QAAQ,aAAa,MAAM;IAEnD,4EAA4E;;CAE7E,CAAC;AAEF,wBAAgB,uBAAuB,YActC"}
|
|
@@ -24,6 +24,14 @@ export const opencodeKeys = {
|
|
|
24
24
|
pathInfo: () => ['opencode', 'path-info', activeServerKey()],
|
|
25
25
|
mcpStatus: () => ['opencode', 'mcp-status', activeServerKey()],
|
|
26
26
|
worktrees: () => ['opencode', 'worktrees', activeServerKey()],
|
|
27
|
+
/**
|
|
28
|
+
* `GET /vcs/diff` — the session's file changes. ONE key per (mode, sandbox),
|
|
29
|
+
* so the tab badge, the header chip and the diff panel share one cache entry
|
|
30
|
+
* and cannot contradict each other on screen.
|
|
31
|
+
*/
|
|
32
|
+
vcsDiff: (mode, serverId) => ['opencode', 'vcs-diff', mode, serverId ?? activeServerKey()],
|
|
33
|
+
/** Prefix over every mode + sandbox — what the event stream invalidates. */
|
|
34
|
+
vcsDiffAll: () => ['opencode', 'vcs-diff'],
|
|
27
35
|
};
|
|
28
36
|
export function useOpenCodeRuntimeReady() {
|
|
29
37
|
const connectedHealthy = useSandboxConnectionStore((s) => s.status === 'connected' && s.healthy === true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/keys.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AA6G3C,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE,CAAC,UAAU,CAAU;IAC1B,QAAQ,EAAE,CAAC,QAAiB,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAU;IACjG,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,CAAU;IAC7D,QAAQ,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAU;IACxF,cAAc,EAAE,CAAC,EAAU,EAAE,QAAiB,EAAE,EAAE,CAChD,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAU;IACrE,eAAe,EAAE,CAAC,SAAiB,EAAE,QAAiB,EAAE,EAAE,CACxD,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAU;IACxF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAU;IAChE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,CAAU;IACnE,KAAK,EAAE,CAAC,UAAkB,EAAE,OAAe,EAAE,EAAE,CAC7C,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,CAAU;IACxE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAU;IAChE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,CAAU;IACpE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,CAAU;IACpF,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,CAAU;IACpE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,CAAU;IACtE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,CAAU;IACrE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,CAAU;IACvE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,CAAU;
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/keys.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAC1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AA6G3C,+EAA+E;AAC/E,aAAa;AACb,+EAA+E;AAE/E,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE,CAAC,UAAU,CAAU;IAC1B,QAAQ,EAAE,CAAC,QAAiB,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAU;IACjG,OAAO,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,CAAU;IAC7D,QAAQ,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAU;IACxF,cAAc,EAAE,CAAC,EAAU,EAAE,QAAiB,EAAE,EAAE,CAChD,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAU;IACrE,eAAe,EAAE,CAAC,SAAiB,EAAE,QAAiB,EAAE,EAAE,CACxD,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAU;IACxF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAU;IAChE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,CAAU;IACnE,KAAK,EAAE,CAAC,UAAkB,EAAE,OAAe,EAAE,EAAE,CAC7C,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,CAAU;IACxE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAU;IAChE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,CAAU;IACpE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,CAAU;IACpF,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,CAAU;IACpE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,CAAU;IACtE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,CAAU;IACrE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,eAAe,EAAE,CAAU;IACvE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,CAAU;IACtE;;;;OAIG;IACH,OAAO,EAAE,CAAC,IAAsB,EAAE,QAAiB,EAAE,EAAE,CACrD,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,IAAI,eAAe,EAAE,CAAU;IACxE,4EAA4E;IAC5E,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,CAAU;CACpD,CAAC;AAEF,MAAM,UAAU,uBAAuB;IACrC,MAAM,gBAAgB,GAAG,yBAAyB,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,CACtD,CAAC;IACF,2EAA2E;IAC3E,+DAA+D;IAC/D,8EAA8E;IAC9E,6EAA6E;IAC7E,yEAAyE;IACzE,0EAA0E;IAC1E,mEAAmE;IACnE,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,oBAAoB,EAAE,CAAC,CAAC;IACxD,OAAO,gBAAgB,IAAI,MAAM,CAAC;AACpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/providers.ts"],"names":[],"mappings":"AAeA,OAAO,EAGL,oBAAoB,EAMrB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC,wBAAgB,oBAAoB;;;;;;
|
|
1
|
+
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/providers.ts"],"names":[],"mappings":"AAeA,OAAO,EAGL,oBAAoB,EAMrB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC,wBAAgB,oBAAoB;;;;;;WAuHnC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { useQuery } from '@tanstack/react-query';
|
|
2
|
+
import { useQuery, useQueryClient } from '@tanstack/react-query';
|
|
3
3
|
import { getClient } from '../../core/runtime/client.js';
|
|
4
4
|
import { useKortixRouteProjectId } from '../route-project.js';
|
|
5
5
|
import { contract } from '../query-contracts.js';
|
|
@@ -14,6 +14,7 @@ import { shouldLoadProjectModelPicker } from './provider-load-plan.js';
|
|
|
14
14
|
// ============================================================================
|
|
15
15
|
export { GATEWAY_PROVIDER_IDS };
|
|
16
16
|
export function useOpenCodeProviders() {
|
|
17
|
+
const queryClient = useQueryClient();
|
|
17
18
|
const runtimeReady = useOpenCodeRuntimeReady();
|
|
18
19
|
const projectId = useKortixRouteProjectId();
|
|
19
20
|
const projectDetailQuery = useQuery({
|
|
@@ -33,7 +34,16 @@ export function useOpenCodeProviders() {
|
|
|
33
34
|
const gatewayProvidersQuery = useQuery({
|
|
34
35
|
queryKey: ['project-providers', projectId, 'gateway'],
|
|
35
36
|
queryFn: async () => {
|
|
36
|
-
|
|
37
|
+
// The picker is read through ITS OWN entry (`qk.project.modelPicker`),
|
|
38
|
+
// which `useProjectModels` also observes. Calling the fetcher directly
|
|
39
|
+
// here made two concurrent `GET /model-picker` on every session open
|
|
40
|
+
// (measured: both 83 KB, 1 ms apart). fetchQuery dedupes the in-flight
|
|
41
|
+
// read and fills the shared entry.
|
|
42
|
+
const catalog = await queryClient.fetchQuery({
|
|
43
|
+
queryKey: qk.project.modelPicker(projectId),
|
|
44
|
+
queryFn: () => getProjectModelPicker(projectId),
|
|
45
|
+
...contract('config'),
|
|
46
|
+
});
|
|
37
47
|
const providers = projectLlmCatalogToProviderList(catalog);
|
|
38
48
|
setLSCache(LS_PROVIDERS, providers, gatewayCacheScope);
|
|
39
49
|
return providers;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/providers.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/providers.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,29 @@ export declare const LS_COMMANDS = "kortix_cache_commands";
|
|
|
28
28
|
export declare const LS_PROVIDERS = "kortix_cache_providers";
|
|
29
29
|
export declare function getLSCache<T>(family: string, scope?: string): T | undefined;
|
|
30
30
|
export declare function setLSCache(family: string, value: unknown, scope?: string): void;
|
|
31
|
+
/**
|
|
32
|
+
* Coerce a runtime list response to an array.
|
|
33
|
+
*
|
|
34
|
+
* The OpenCode REST types say `GET /command`, `GET /agent`, … return an array,
|
|
35
|
+
* but the value that actually arrives does not always agree: a daemon or proxy
|
|
36
|
+
* that answers a list route with an object body hands the caller a TRUTHY
|
|
37
|
+
* non-array. Consumers iterate the list (`for…of`, `.find`, `.some`,
|
|
38
|
+
* `.filter`), so that value does not degrade — it throws
|
|
39
|
+
* `TypeError: <x> is not iterable` inside a render and takes the whole session
|
|
40
|
+
* view down with it (dev, 2026-08-23). Normalize at the seam so an unexpected
|
|
41
|
+
* body reads as "no items" instead.
|
|
42
|
+
*
|
|
43
|
+
* This is the list-level twin of `detectCommandFromText`'s per-item
|
|
44
|
+
* `typeof cmd.template !== 'string'` guard in `apps/web`.
|
|
45
|
+
*/
|
|
46
|
+
export declare function asRuntimeList<T>(value: unknown): T[];
|
|
47
|
+
/**
|
|
48
|
+
* Read a localStorage-cached list for `placeholderData`. A cached value that is
|
|
49
|
+
* not an array reads as a MISS (`undefined`), exactly like a legacy-shaped
|
|
50
|
+
* entry — the query then simply refetches instead of painting a corrupt
|
|
51
|
+
* placeholder into the render.
|
|
52
|
+
*/
|
|
53
|
+
export declare function cachedRuntimeList<T>(family: string, scope?: string): T[] | undefined;
|
|
31
54
|
export declare function canQueryOpenCodeSession(sessionId: string | null | undefined): sessionId is string;
|
|
32
55
|
export declare function clearProjectProviderCache(projectId: string): void;
|
|
33
56
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/shared.ts"],"names":[],"mappings":"AAaA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAMxC;AAMD,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE;IAChC,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,GAAG,CAAC,CAuBJ;AAgBD,eAAO,MAAM,WAAW,0BAA0B,CAAC;AACnD,eAAO,MAAM,SAAS,wBAAwB,CAAC;AAC/C,eAAO,MAAM,WAAW,0BAA0B,CAAC;AACnD,eAAO,MAAM,YAAY,2BAA2B,CAAC;AAiBrD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAE3E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAE/E;AAKD,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,IAAI,MAAM,CAEjG;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAGjE;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/shared.ts"],"names":[],"mappings":"AAaA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAMxC;AAMD,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE;IAChC,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,GAAG,CAAC,CAuBJ;AAgBD,eAAO,MAAM,WAAW,0BAA0B,CAAC;AACnD,eAAO,MAAM,SAAS,wBAAwB,CAAC;AAC/C,eAAO,MAAM,WAAW,0BAA0B,CAAC;AACnD,eAAO,MAAM,YAAY,2BAA2B,CAAC;AAiBrD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAE3E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAE/E;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,CAEpD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,SAAS,CAGpF;AAKD,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,IAAI,MAAM,CAEjG;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAGjE;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,WAAW,CAAC"}
|