@deepseek-ai/dsh-cordis-client-runner 0.1.3-alpha.2 → 0.1.5-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/client.js +620 -124
- package/package.json +7 -7
package/lib/client.js
CHANGED
|
@@ -1114,22 +1114,43 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1114
1114
|
const SERVICE_API = [
|
|
1115
1115
|
{
|
|
1116
1116
|
key: "layout",
|
|
1117
|
-
summary: "
|
|
1118
|
-
description: "
|
|
1117
|
+
summary: "Panel navigation and geometry actions exposed through ctx.layout.",
|
|
1118
|
+
description: "Panel navigation and geometry actions exposed through ctx.layout.",
|
|
1119
1119
|
methods: [
|
|
1120
|
+
{
|
|
1121
|
+
signature: "selectPanel(panelId: MainPanelId | null): void",
|
|
1122
|
+
description: "Select a global central panel without changing the current Session.",
|
|
1123
|
+
parameters: [{
|
|
1124
|
+
name: "panelId",
|
|
1125
|
+
description: "registered main key, or null to show the Conversation."
|
|
1126
|
+
}],
|
|
1127
|
+
throws: ["if the selected main key is not registered; preserves the current selection."]
|
|
1128
|
+
},
|
|
1129
|
+
{
|
|
1130
|
+
signature: "beginNavigation(): AbortSignal",
|
|
1131
|
+
description: "Start an asynchronous navigation, superseding any earlier pending navigation.",
|
|
1132
|
+
parameters: [],
|
|
1133
|
+
returns: "a signal aborted by the next navigation or layout disposal; check it before committing UI state."
|
|
1134
|
+
},
|
|
1120
1135
|
{
|
|
1121
1136
|
signature: "toggleSidebar(): void",
|
|
1122
1137
|
description: "Toggle the sidebar panel (closed ⟷ contract default width).",
|
|
1123
1138
|
parameters: []
|
|
1124
1139
|
},
|
|
1125
1140
|
{
|
|
1126
|
-
signature: "
|
|
1127
|
-
description: "
|
|
1128
|
-
parameters: [
|
|
1141
|
+
signature: "openRightbar(track: boolean, fullscreen: boolean): void",
|
|
1142
|
+
description: "Report the right panel's presentation without changing its expanded state.",
|
|
1143
|
+
parameters: [{
|
|
1144
|
+
name: "track",
|
|
1145
|
+
description: "whether the normal panel width reserves a grid track, including beneath a fullscreen overlay."
|
|
1146
|
+
}, {
|
|
1147
|
+
name: "fullscreen",
|
|
1148
|
+
description: "whether the panel covers the frame and hides its outer resize handle; independent of the underlying grid track."
|
|
1149
|
+
}]
|
|
1129
1150
|
},
|
|
1130
1151
|
{
|
|
1131
|
-
signature: "
|
|
1132
|
-
description: "
|
|
1152
|
+
signature: "closeRightbar(): void",
|
|
1153
|
+
description: "Report the right panel as hidden: no track, no handle.",
|
|
1133
1154
|
parameters: []
|
|
1134
1155
|
}
|
|
1135
1156
|
]
|
|
@@ -1427,6 +1448,35 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1427
1448
|
summary: "Workspace archive and directory operations consumed by Client UI domains.",
|
|
1428
1449
|
description: "Workspace archive and directory operations consumed by Client UI domains.",
|
|
1429
1450
|
methods: [
|
|
1451
|
+
{
|
|
1452
|
+
signature: "openSession(sessionId: SessionId): void",
|
|
1453
|
+
description: "Select a Session and show its Conversation as one UI navigation action.",
|
|
1454
|
+
parameters: [{
|
|
1455
|
+
name: "sessionId",
|
|
1456
|
+
description: "listed or retained Session to display."
|
|
1457
|
+
}]
|
|
1458
|
+
},
|
|
1459
|
+
{
|
|
1460
|
+
signature: "openWorkspace(workspaceId: WorkspaceId, beforeOpen?: (sessionId: SessionId) => void): Promise<void>",
|
|
1461
|
+
description: "Connect a Workspace and open its Session unless a later navigation supersedes it.",
|
|
1462
|
+
parameters: [{
|
|
1463
|
+
name: "workspaceId",
|
|
1464
|
+
description: "target Workspace."
|
|
1465
|
+
}, {
|
|
1466
|
+
name: "beforeOpen",
|
|
1467
|
+
description: "optional synchronous preparation for the selected Session, skipped after supersession."
|
|
1468
|
+
}],
|
|
1469
|
+
returns: "completion; a superseded request may create a Session but does not open it."
|
|
1470
|
+
},
|
|
1471
|
+
{
|
|
1472
|
+
signature: "forkSession(sessionId: SessionId): Promise<void>",
|
|
1473
|
+
description: "Fork a Session and open the child unless a later navigation supersedes it.",
|
|
1474
|
+
parameters: [{
|
|
1475
|
+
name: "sessionId",
|
|
1476
|
+
description: "source Session."
|
|
1477
|
+
}],
|
|
1478
|
+
returns: "completion; a superseded request leaves its child available without selecting it."
|
|
1479
|
+
},
|
|
1430
1480
|
{
|
|
1431
1481
|
signature: "connectWorkspace(workspaceId: WorkspaceId): Promise<SessionId>",
|
|
1432
1482
|
description: "Resolve the reusable or newly created blank Session for a Workspace.",
|
|
@@ -1778,6 +1828,10 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1778
1828
|
name: "LocaleSnapshot",
|
|
1779
1829
|
declaration: "export interface LocaleSnapshot {\n active: LocaleId;\n locales: readonly LocaleDefinition[];\n revision: number;\n}"
|
|
1780
1830
|
},
|
|
1831
|
+
{
|
|
1832
|
+
name: "MainPanelId",
|
|
1833
|
+
declaration: "export type MainPanelId = Branded<'MainPanelId'>;"
|
|
1834
|
+
},
|
|
1781
1835
|
{
|
|
1782
1836
|
name: "MatchedShare",
|
|
1783
1837
|
declaration: "export type MatchedShare<E extends SlotEntryDef, M> = E['kind'] extends 'chain' ? {\n matched: M;\n} : object;"
|
|
@@ -2145,36 +2199,6 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2145
2199
|
//#region lib/types/client/slot-catalog.js
|
|
2146
2200
|
/** Every slot the shipped web bundle declares, sorted by key. */
|
|
2147
2201
|
const CLIENT_SLOT_API = [
|
|
2148
|
-
{
|
|
2149
|
-
key: "conversation",
|
|
2150
|
-
kind: "single",
|
|
2151
|
-
scope: "session-maybe",
|
|
2152
|
-
summary: "The whole center column, across both the no-session hero and a live conversation.",
|
|
2153
|
-
doc: "The whole center column, across both the no-session hero and a live\nconversation. OCCUPIED by ui-conversation's ConversationRoot, which\ndeclares the session body, composer, and input seats inside it —\nregistering here replaces the entire conversation surface (and removes\nevery seat it declares) rather than adding to it.\n\nCurrent-session-optional: the occupant owns both states without\nchanging its React identity, so it keeps its own state across a session\nswitch. It receives no owner props; session facts arrive through the\nframework hooks of the `session-maybe` scope.",
|
|
2154
|
-
registerOptions: [],
|
|
2155
|
-
ownerProps: ["/** Conversation owner share: business state and actions belong to the registrant. */\nexport interface ConvOwnerProps {}"],
|
|
2156
|
-
ownerPropsReferences: [],
|
|
2157
|
-
standardProps: [
|
|
2158
|
-
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2159
|
-
"useSessions: UseSessions",
|
|
2160
|
-
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2161
|
-
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2162
|
-
"useConversation: MaybeSnapshotSelectorHook<ConversationSnapshot>",
|
|
2163
|
-
"useInput: MaybeSnapshotSelectorHook<InputState>",
|
|
2164
|
-
"inputActions: InputActions | undefined",
|
|
2165
|
-
"useSession: MaybeSnapshotSelectorHook<SessionSnapshot>",
|
|
2166
|
-
"sessionId: SessionId | undefined",
|
|
2167
|
-
"useProjection: UseProjection"
|
|
2168
|
-
],
|
|
2169
|
-
keyDomain: "",
|
|
2170
|
-
hookContext: "",
|
|
2171
|
-
slotInject: "",
|
|
2172
|
-
declaredBy: "an entry in 'root' (client-ui-layout), so it exists while that entry is mounted",
|
|
2173
|
-
occupants: ["client-ui-conversation ConversationRoot"],
|
|
2174
|
-
replaceRisk: "shadows-shipped-ui",
|
|
2175
|
-
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation', () => ctx.slots.register(\n { name: 'conversation' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2176
|
-
source: "packages/client/ui-layout/src/client/index.ts:65"
|
|
2177
|
-
},
|
|
2178
2202
|
{
|
|
2179
2203
|
key: "conversation.approval.detail",
|
|
2180
2204
|
kind: "single",
|
|
@@ -2185,7 +2209,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2185
2209
|
ownerProps: ["/** Stable identity handed to an optional approval-detail renderer. */\nexport interface ApprovalDetailOwnerProps {\n /** Tool call correlated with the request. */\n callId: ToolCallId\n}"],
|
|
2186
2210
|
ownerPropsReferences: [],
|
|
2187
2211
|
standardProps: [
|
|
2212
|
+
"useResource: UseResource",
|
|
2188
2213
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2214
|
+
"usePanelInfo: UsePanelInfo",
|
|
2189
2215
|
"useSessions: UseSessions",
|
|
2190
2216
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2191
2217
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2236,7 +2262,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2236
2262
|
ownerProps: ["/** Owner currency of finalized-assistant actions. */\nexport interface AssistantActionOwnerProps {\n messageId: MessageId\n}"],
|
|
2237
2263
|
ownerPropsReferences: ["MessageId"],
|
|
2238
2264
|
standardProps: [
|
|
2265
|
+
"useResource: UseResource",
|
|
2239
2266
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2267
|
+
"usePanelInfo: UsePanelInfo",
|
|
2240
2268
|
"useSessions: UseSessions",
|
|
2241
2269
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2242
2270
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2256,7 +2284,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2256
2284
|
occupants: ["client-ui-message-feedback MessageFeedbackActions id 'feedback'"],
|
|
2257
2285
|
replaceRisk: "none",
|
|
2258
2286
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.assistant-actions', () => ctx.slots.register(\n { name: 'conversation.chat.assistant-actions', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2259
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2287
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:213"
|
|
2260
2288
|
},
|
|
2261
2289
|
{
|
|
2262
2290
|
key: "conversation.chat.commandview",
|
|
@@ -2277,7 +2305,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2277
2305
|
"CompactionSummaryNode"
|
|
2278
2306
|
],
|
|
2279
2307
|
standardProps: [
|
|
2308
|
+
"useResource: UseResource",
|
|
2280
2309
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2310
|
+
"usePanelInfo: UsePanelInfo",
|
|
2281
2311
|
"useSessions: UseSessions",
|
|
2282
2312
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2283
2313
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2297,7 +2327,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2297
2327
|
occupants: [],
|
|
2298
2328
|
replaceRisk: "none",
|
|
2299
2329
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.commandview', () => ctx.slots.register(\n { name: 'conversation.chat.commandview', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2300
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2330
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:201"
|
|
2301
2331
|
},
|
|
2302
2332
|
{
|
|
2303
2333
|
key: "conversation.chat.node",
|
|
@@ -2311,16 +2341,19 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2311
2341
|
type: "string",
|
|
2312
2342
|
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
2313
2343
|
}],
|
|
2314
|
-
ownerProps: ["/** Stable owner currency delivered to a keyed Chat renderer. */\nexport interface ChatNodeOwnerProps {\n
|
|
2344
|
+
ownerProps: ["/** Stable owner currency delivered to a keyed Chat renderer. */\nexport interface ChatNodeOwnerProps {\n cwd?: string | undefined\n openFile: (path: string, options?: OpenFileOptions) => void\n inspectCall: (callId: ToolCallId) => void\n forkAt: (seq: number) => void\n /**\n * Session-authorized image loader, down-threaded from the Chat view so a\n * chat-node renderer can render the attachment presentation slot directly\n * with only the durable references plus this loader, instead of receiving a\n * rendering closure.\n */\n loadImage: MessageImageLoader\n renderMessageImages: RenderMessageImages\n fileMentions: (owner: TurnTailOwnerProps) => MarkdownFileMentions | undefined\n /** Turn-process state when this Node belongs to a projected Turn. */\n turnProcess?: TurnProcessOwnerProps | undefined\n}"],
|
|
2315
2345
|
ownerPropsReferences: [
|
|
2316
2346
|
"MarkdownFileMentions",
|
|
2317
2347
|
"MessageImageLoader",
|
|
2348
|
+
"OpenFileOptions",
|
|
2318
2349
|
"RenderMessageImages",
|
|
2319
2350
|
"TurnProcessOwnerProps",
|
|
2320
2351
|
"TurnTailOwnerProps"
|
|
2321
2352
|
],
|
|
2322
2353
|
standardProps: [
|
|
2354
|
+
"useResource: UseResource",
|
|
2323
2355
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2356
|
+
"usePanelInfo: UsePanelInfo",
|
|
2324
2357
|
"useSessions: UseSessions",
|
|
2325
2358
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2326
2359
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2358,7 +2391,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2358
2391
|
],
|
|
2359
2392
|
replaceRisk: "shadows-shipped-ui",
|
|
2360
2393
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.node', () => ctx.slots.register(\n { name: 'conversation.chat.node', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2361
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2394
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:182"
|
|
2362
2395
|
},
|
|
2363
2396
|
{
|
|
2364
2397
|
key: "conversation.chat.turnTail",
|
|
@@ -2375,7 +2408,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2375
2408
|
ownerProps: ["/** Owner currency of the completed-Turn extension chain. */\nexport interface TurnTailOwnerProps {\n turn: TurnLocation\n seq: number\n openFile: (path: string) => void\n}"],
|
|
2376
2409
|
ownerPropsReferences: ["TurnLocation"],
|
|
2377
2410
|
standardProps: [
|
|
2411
|
+
"useResource: UseResource",
|
|
2378
2412
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2413
|
+
"usePanelInfo: UsePanelInfo",
|
|
2379
2414
|
"useSessions: UseSessions",
|
|
2380
2415
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2381
2416
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2392,10 +2427,10 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2392
2427
|
hookContext: "",
|
|
2393
2428
|
slotInject: "",
|
|
2394
2429
|
declaredBy: "an entry in 'conversation.chat.node' (client-ui-chat), so it exists while that entry is mounted",
|
|
2395
|
-
occupants: ["client-ui-deliverables
|
|
2430
|
+
occupants: ["client-ui-deliverables Deliverables"],
|
|
2396
2431
|
replaceRisk: "none",
|
|
2397
2432
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.turnTail', () => ctx.slots.register(\n { name: 'conversation.chat.turnTail', select: owner => null },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2398
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2433
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:207"
|
|
2399
2434
|
},
|
|
2400
2435
|
{
|
|
2401
2436
|
key: "conversation.composer",
|
|
@@ -2416,7 +2451,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2416
2451
|
"SessionSnapshot"
|
|
2417
2452
|
],
|
|
2418
2453
|
standardProps: [
|
|
2454
|
+
"useResource: UseResource",
|
|
2419
2455
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2456
|
+
"usePanelInfo: UsePanelInfo",
|
|
2420
2457
|
"useSessions: UseSessions",
|
|
2421
2458
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2422
2459
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2432,7 +2469,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2432
2469
|
keyDomain: "",
|
|
2433
2470
|
hookContext: "",
|
|
2434
2471
|
slotInject: "",
|
|
2435
|
-
declaredBy: "an entry in 'conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2472
|
+
declaredBy: "an entry in 'main.conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2436
2473
|
occupants: [
|
|
2437
2474
|
"client-ui-approval ApprovalPanel",
|
|
2438
2475
|
"client-ui-subagent SubagentReadOnlyComposer",
|
|
@@ -2440,7 +2477,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2440
2477
|
],
|
|
2441
2478
|
replaceRisk: "none",
|
|
2442
2479
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.composer', () => ctx.slots.register(\n { name: 'conversation.composer', select: owner => null },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2443
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2480
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:158"
|
|
2444
2481
|
},
|
|
2445
2482
|
{
|
|
2446
2483
|
key: "conversation.composer.bar",
|
|
@@ -2452,7 +2489,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2452
2489
|
ownerProps: ["/** Owner share of the resident composer bar. */\nexport interface ComposerBarOwnerProps {\n /** Hero uses centered placement; composer uses the active bottom placement. */\n variant: 'hero' | 'composer'\n /** A feature-owned reason that makes message input inert while leaving model selection live. */\n blocked?: { readonly reason: string }\n /** Lock all message actions while preserving the resident composer surface. */\n disabled?: boolean\n /** Whether the shared Workspace picker is expanded. */\n workspacePickerOpen?: boolean\n /** Open the Workspace picker from the inert composer surface. */\n onRequestWorkspace?: () => void\n placeholder?: string\n /** Optional content rendered above the composer surface. */\n accessory?: ReactNode\n}"],
|
|
2453
2490
|
ownerPropsReferences: ["Workspace"],
|
|
2454
2491
|
standardProps: [
|
|
2492
|
+
"useResource: UseResource",
|
|
2455
2493
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2494
|
+
"usePanelInfo: UsePanelInfo",
|
|
2456
2495
|
"useSessions: UseSessions",
|
|
2457
2496
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2458
2497
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2466,11 +2505,11 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2466
2505
|
keyDomain: "",
|
|
2467
2506
|
hookContext: "",
|
|
2468
2507
|
slotInject: "",
|
|
2469
|
-
declaredBy: "an entry in 'conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2508
|
+
declaredBy: "an entry in 'main.conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2470
2509
|
occupants: ["client-ui-conversation InputBar"],
|
|
2471
2510
|
replaceRisk: "shadows-shipped-ui",
|
|
2472
2511
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.composer.bar', () => ctx.slots.register(\n { name: 'conversation.composer.bar' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2473
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2512
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:176"
|
|
2474
2513
|
},
|
|
2475
2514
|
{
|
|
2476
2515
|
key: "conversation.composer.dock",
|
|
@@ -2501,7 +2540,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2501
2540
|
ownerProps: [],
|
|
2502
2541
|
ownerPropsReferences: [],
|
|
2503
2542
|
standardProps: [
|
|
2543
|
+
"useResource: UseResource",
|
|
2504
2544
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2545
|
+
"usePanelInfo: UsePanelInfo",
|
|
2505
2546
|
"useSessions: UseSessions",
|
|
2506
2547
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2507
2548
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2518,42 +2559,10 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2518
2559
|
hookContext: "",
|
|
2519
2560
|
slotInject: "",
|
|
2520
2561
|
declaredBy: "an entry in 'conversation.composer.bar' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2521
|
-
occupants: ["client-ui-chat
|
|
2562
|
+
occupants: ["client-ui-chat StatsPills id 'stats'"],
|
|
2522
2563
|
replaceRisk: "none",
|
|
2523
2564
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.composer.dock', () => ctx.slots.register(\n { name: 'conversation.composer.dock', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2524
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2525
|
-
},
|
|
2526
|
-
{
|
|
2527
|
-
key: "conversation.details.tool",
|
|
2528
|
-
kind: "single",
|
|
2529
|
-
scope: "session",
|
|
2530
|
-
summary: "Whole details-panel body for the selected Tool call.",
|
|
2531
|
-
doc: "Whole details-panel body for the selected Tool call. The component receives\nthe running or settled block and optional workspace root. A registration\nreplaces the shipped Tool details renderer; absence uses the raw fallback.",
|
|
2532
|
-
registerOptions: [],
|
|
2533
|
-
ownerProps: ["/** Tool block rendered in the details panel. */\nexport interface DetailsToolOwnerProps {\n block: ToolCallBlock\n cwd?: string | undefined\n}"],
|
|
2534
|
-
ownerPropsReferences: [],
|
|
2535
|
-
standardProps: [
|
|
2536
|
-
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2537
|
-
"useSessions: UseSessions",
|
|
2538
|
-
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2539
|
-
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2540
|
-
"useChat: UseChat",
|
|
2541
|
-
"useConversation: UseConversation",
|
|
2542
|
-
"useInput: SnapshotSelectorHook<InputState>",
|
|
2543
|
-
"inputActions: InputActions",
|
|
2544
|
-
"useSession: SessionSnapshotSelector",
|
|
2545
|
-
"sessionId: SessionId",
|
|
2546
|
-
"useProjection: UseProjection",
|
|
2547
|
-
"useTrajectory: UseTrajectory"
|
|
2548
|
-
],
|
|
2549
|
-
keyDomain: "",
|
|
2550
|
-
hookContext: "",
|
|
2551
|
-
slotInject: "",
|
|
2552
|
-
declaredBy: "an entry in 'details' (client-ui-chat), so it exists while that entry is mounted",
|
|
2553
|
-
occupants: ["client-ui-tool ToolDetails"],
|
|
2554
|
-
replaceRisk: "shadows-shipped-ui",
|
|
2555
|
-
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.details.tool', () => ctx.slots.register(\n { name: 'conversation.details.tool' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2556
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:233"
|
|
2565
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:170"
|
|
2557
2566
|
},
|
|
2558
2567
|
{
|
|
2559
2568
|
key: "conversation.hero.agentPreset",
|
|
@@ -2565,7 +2574,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2565
2574
|
ownerProps: ["/** Owner share of the Hero agent-preset control. */\nexport interface HeroAgentPresetOwnerProps {\n /** Marker field: the occupant owns its roster and staged selection. */\n children?: never\n}"],
|
|
2566
2575
|
ownerPropsReferences: [],
|
|
2567
2576
|
standardProps: [
|
|
2577
|
+
"useResource: UseResource",
|
|
2568
2578
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2579
|
+
"usePanelInfo: UsePanelInfo",
|
|
2569
2580
|
"useSessions: UseSessions",
|
|
2570
2581
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2571
2582
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -2573,11 +2584,11 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2573
2584
|
keyDomain: "",
|
|
2574
2585
|
hookContext: "",
|
|
2575
2586
|
slotInject: "",
|
|
2576
|
-
declaredBy: "an entry in 'conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2587
|
+
declaredBy: "an entry in 'main.conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2577
2588
|
occupants: ["client-ui-agent-preset AgentPresetSeat"],
|
|
2578
2589
|
replaceRisk: "shadows-shipped-ui",
|
|
2579
2590
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.hero.agentPreset', () => ctx.slots.register(\n { name: 'conversation.hero.agentPreset' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2580
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2591
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:164"
|
|
2581
2592
|
},
|
|
2582
2593
|
{
|
|
2583
2594
|
key: "conversation.hero.brand.mark",
|
|
@@ -2589,7 +2600,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2589
2600
|
ownerProps: ["/** Presentation props supplied to the blank-session brand mark. */\nexport interface HeroBrandMarkOwnerProps {\n /** Requested square edge in pixels. */\n size: number\n /** Host class preserving the surrounding mark geometry. */\n className?: string | undefined\n}"],
|
|
2590
2601
|
ownerPropsReferences: [],
|
|
2591
2602
|
standardProps: [
|
|
2603
|
+
"useResource: UseResource",
|
|
2592
2604
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2605
|
+
"usePanelInfo: UsePanelInfo",
|
|
2593
2606
|
"useSessions: UseSessions",
|
|
2594
2607
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2595
2608
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -2597,11 +2610,11 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2597
2610
|
keyDomain: "",
|
|
2598
2611
|
hookContext: "",
|
|
2599
2612
|
slotInject: "",
|
|
2600
|
-
declaredBy: "an entry in 'conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2613
|
+
declaredBy: "an entry in 'main.conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2601
2614
|
occupants: [],
|
|
2602
2615
|
replaceRisk: "none",
|
|
2603
2616
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.hero.brand.mark', () => ctx.slots.register(\n { name: 'conversation.hero.brand.mark' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2604
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2617
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:162"
|
|
2605
2618
|
},
|
|
2606
2619
|
{
|
|
2607
2620
|
key: "conversation.hero.workspace",
|
|
@@ -2613,7 +2626,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2613
2626
|
ownerProps: ["/** Owner share common to blank-session Workspace pickers. */\nexport interface EmptyWorkspaceOwnerProps {\n open: boolean\n anchorRef?: RefObject<HTMLElement>\n /** Currently selected Workspace, when available. */\n selectedId?: WorkspaceId | undefined\n onPick: (workspaceId: WorkspaceId) => void\n onClose: () => void\n}"],
|
|
2614
2627
|
ownerPropsReferences: ["Workspace"],
|
|
2615
2628
|
standardProps: [
|
|
2629
|
+
"useResource: UseResource",
|
|
2616
2630
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2631
|
+
"usePanelInfo: UsePanelInfo",
|
|
2617
2632
|
"useSessions: UseSessions",
|
|
2618
2633
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2619
2634
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -2621,11 +2636,11 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2621
2636
|
keyDomain: "",
|
|
2622
2637
|
hookContext: "",
|
|
2623
2638
|
slotInject: "",
|
|
2624
|
-
declaredBy: "an entry in 'conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2639
|
+
declaredBy: "an entry in 'main.conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2625
2640
|
occupants: ["client-ui-workspace WorkspacePicker"],
|
|
2626
2641
|
replaceRisk: "shadows-shipped-ui",
|
|
2627
2642
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.hero.workspace', () => ctx.slots.register(\n { name: 'conversation.hero.workspace' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2628
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2643
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:160"
|
|
2629
2644
|
},
|
|
2630
2645
|
{
|
|
2631
2646
|
key: "conversation.hero.workspace.directoryFlow",
|
|
@@ -2637,7 +2652,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2637
2652
|
ownerProps: ["/**\n * Owner share of the directory-flow holes: the complete conversation between\n * the trigger surface and the picking interaction. The occupant reads `open`\n * to run/render its interaction and reports exactly one outcome per open.\n */\nexport interface DirectoryFlowOwnerProps {\n /** True while a picking interaction is requested; flipping back to false withdraws the request. */\n open: boolean\n /** True while the owner adopts a picked path (`createWorkspace` in flight); occupants disable their commit affordances. */\n busy: boolean\n /** The operator picked a directory (absolute host path); the owner adopts it. */\n onPicked: (path: string) => void\n /** The operator dismissed the interaction; the owner just closes the flow. */\n onCancel: () => void\n /** The interaction itself failed (chooser missing, listing denied); the owner shows its error surface. */\n onError: (message: string) => void\n}"],
|
|
2638
2653
|
ownerPropsReferences: [],
|
|
2639
2654
|
standardProps: [
|
|
2655
|
+
"useResource: UseResource",
|
|
2640
2656
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2657
|
+
"usePanelInfo: UsePanelInfo",
|
|
2641
2658
|
"useSessions: UseSessions",
|
|
2642
2659
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2643
2660
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -2665,7 +2682,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2665
2682
|
"DraftFileUploads"
|
|
2666
2683
|
],
|
|
2667
2684
|
standardProps: [
|
|
2685
|
+
"useResource: UseResource",
|
|
2668
2686
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2687
|
+
"usePanelInfo: UsePanelInfo",
|
|
2669
2688
|
"useSessions: UseSessions",
|
|
2670
2689
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2671
2690
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2683,7 +2702,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2683
2702
|
occupants: ["client-ui-attachment ComposerAttachments"],
|
|
2684
2703
|
replaceRisk: "shadows-shipped-ui",
|
|
2685
2704
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.attachments', () => ctx.slots.register(\n { name: 'conversation.input.attachments' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2686
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2705
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:178"
|
|
2687
2706
|
},
|
|
2688
2707
|
{
|
|
2689
2708
|
key: "conversation.input.dock",
|
|
@@ -2714,7 +2733,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2714
2733
|
ownerProps: ["/** Point-in-time owner values for composer extension entries. */\nexport interface InputZone {\n readonly session: SessionSnapshot\n readonly input: InputState\n}"],
|
|
2715
2734
|
ownerPropsReferences: ["InputState", "SessionSnapshot"],
|
|
2716
2735
|
standardProps: [
|
|
2736
|
+
"useResource: UseResource",
|
|
2717
2737
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2738
|
+
"usePanelInfo: UsePanelInfo",
|
|
2718
2739
|
"useSessions: UseSessions",
|
|
2719
2740
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2720
2741
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2730,7 +2751,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2730
2751
|
keyDomain: "",
|
|
2731
2752
|
hookContext: "",
|
|
2732
2753
|
slotInject: "",
|
|
2733
|
-
declaredBy: "an entry in 'conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2754
|
+
declaredBy: "an entry in 'main.conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2734
2755
|
occupants: [
|
|
2735
2756
|
"client-ui-conversation QueueDock id 'queue'",
|
|
2736
2757
|
"client-ui-conversation TodoDock id 'todo'",
|
|
@@ -2738,7 +2759,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2738
2759
|
],
|
|
2739
2760
|
replaceRisk: "none",
|
|
2740
2761
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.dock', () => ctx.slots.register(\n { name: 'conversation.input.dock', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2741
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2762
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:166"
|
|
2742
2763
|
},
|
|
2743
2764
|
{
|
|
2744
2765
|
key: "conversation.input.left",
|
|
@@ -2769,7 +2790,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2769
2790
|
ownerProps: [],
|
|
2770
2791
|
ownerPropsReferences: [],
|
|
2771
2792
|
standardProps: [
|
|
2793
|
+
"useResource: UseResource",
|
|
2772
2794
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2795
|
+
"usePanelInfo: UsePanelInfo",
|
|
2773
2796
|
"useSessions: UseSessions",
|
|
2774
2797
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2775
2798
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2789,7 +2812,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2789
2812
|
occupants: [],
|
|
2790
2813
|
replaceRisk: "none",
|
|
2791
2814
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.left', () => ctx.slots.register(\n { name: 'conversation.input.left', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2792
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2815
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:172"
|
|
2793
2816
|
},
|
|
2794
2817
|
{
|
|
2795
2818
|
key: "conversation.input.model",
|
|
@@ -2801,7 +2824,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2801
2824
|
ownerProps: ["/** Owner share of the named plan and model controls. */\nexport interface InputControlOwnerProps {\n /** Whether the composer currently refuses interaction. */\n locked: boolean\n}"],
|
|
2802
2825
|
ownerPropsReferences: [],
|
|
2803
2826
|
standardProps: [
|
|
2827
|
+
"useResource: UseResource",
|
|
2804
2828
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2829
|
+
"usePanelInfo: UsePanelInfo",
|
|
2805
2830
|
"useSessions: UseSessions",
|
|
2806
2831
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2807
2832
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2821,7 +2846,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2821
2846
|
occupants: ["client-ui-model-selection ModelSelect"],
|
|
2822
2847
|
replaceRisk: "shadows-shipped-ui",
|
|
2823
2848
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.model', () => ctx.slots.register(\n { name: 'conversation.input.model' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2824
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2849
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:186"
|
|
2825
2850
|
},
|
|
2826
2851
|
{
|
|
2827
2852
|
key: "conversation.input.overlay",
|
|
@@ -2852,7 +2877,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2852
2877
|
ownerProps: [],
|
|
2853
2878
|
ownerPropsReferences: [],
|
|
2854
2879
|
standardProps: [
|
|
2880
|
+
"useResource: UseResource",
|
|
2855
2881
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2882
|
+
"usePanelInfo: UsePanelInfo",
|
|
2856
2883
|
"useSessions: UseSessions",
|
|
2857
2884
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2858
2885
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2869,10 +2896,14 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2869
2896
|
hookContext: "",
|
|
2870
2897
|
slotInject: "",
|
|
2871
2898
|
declaredBy: "an entry in 'conversation.composer.bar' (client-ui-conversation), so it exists while that entry is mounted",
|
|
2872
|
-
occupants: [
|
|
2899
|
+
occupants: [
|
|
2900
|
+
"client-ui-commands PopupSelectView id 'command-popup'",
|
|
2901
|
+
"client-ui-input-trigger MenuView id 'slash-menu'",
|
|
2902
|
+
"client-ui-message-feedback FeedbackDialog id 'feedback-dialog'"
|
|
2903
|
+
],
|
|
2873
2904
|
replaceRisk: "none",
|
|
2874
2905
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.overlay', () => ctx.slots.register(\n { name: 'conversation.input.overlay', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2875
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2906
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:168"
|
|
2876
2907
|
},
|
|
2877
2908
|
{
|
|
2878
2909
|
key: "conversation.input.plan",
|
|
@@ -2884,7 +2915,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2884
2915
|
ownerProps: ["/** Owner share of the named plan and model controls. */\nexport interface InputControlOwnerProps {\n /** Whether the composer currently refuses interaction. */\n locked: boolean\n}"],
|
|
2885
2916
|
ownerPropsReferences: [],
|
|
2886
2917
|
standardProps: [
|
|
2918
|
+
"useResource: UseResource",
|
|
2887
2919
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2920
|
+
"usePanelInfo: UsePanelInfo",
|
|
2888
2921
|
"useSessions: UseSessions",
|
|
2889
2922
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2890
2923
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2904,7 +2937,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2904
2937
|
occupants: ["client-ui-plan PlanChip"],
|
|
2905
2938
|
replaceRisk: "shadows-shipped-ui",
|
|
2906
2939
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.plan', () => ctx.slots.register(\n { name: 'conversation.input.plan' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2907
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2940
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:184"
|
|
2908
2941
|
},
|
|
2909
2942
|
{
|
|
2910
2943
|
key: "conversation.input.right",
|
|
@@ -2935,7 +2968,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2935
2968
|
ownerProps: [],
|
|
2936
2969
|
ownerPropsReferences: [],
|
|
2937
2970
|
standardProps: [
|
|
2971
|
+
"useResource: UseResource",
|
|
2938
2972
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2973
|
+
"usePanelInfo: UsePanelInfo",
|
|
2939
2974
|
"useSessions: UseSessions",
|
|
2940
2975
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2941
2976
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2955,7 +2990,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2955
2990
|
occupants: [],
|
|
2956
2991
|
replaceRisk: "none",
|
|
2957
2992
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.right', () => ctx.slots.register(\n { name: 'conversation.input.right', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2958
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2993
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:174"
|
|
2959
2994
|
},
|
|
2960
2995
|
{
|
|
2961
2996
|
key: "conversation.message.images",
|
|
@@ -2971,7 +3006,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2971
3006
|
"MessageImageSource"
|
|
2972
3007
|
],
|
|
2973
3008
|
standardProps: [
|
|
3009
|
+
"useResource: UseResource",
|
|
2974
3010
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3011
|
+
"usePanelInfo: UsePanelInfo",
|
|
2975
3012
|
"useSessions: UseSessions",
|
|
2976
3013
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
2977
3014
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -2991,7 +3028,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2991
3028
|
occupants: ["client-ui-attachment MessageImages"],
|
|
2992
3029
|
replaceRisk: "shadows-shipped-ui",
|
|
2993
3030
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.message.images', () => ctx.slots.register(\n { name: 'conversation.message.images' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2994
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
3031
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:195"
|
|
2995
3032
|
},
|
|
2996
3033
|
{
|
|
2997
3034
|
key: "conversation.session",
|
|
@@ -3003,7 +3040,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3003
3040
|
ownerProps: [],
|
|
3004
3041
|
ownerPropsReferences: [],
|
|
3005
3042
|
standardProps: [
|
|
3043
|
+
"useResource: UseResource",
|
|
3006
3044
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3045
|
+
"usePanelInfo: UsePanelInfo",
|
|
3007
3046
|
"useSessions: UseSessions",
|
|
3008
3047
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3009
3048
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -3019,11 +3058,11 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3019
3058
|
keyDomain: "",
|
|
3020
3059
|
hookContext: "",
|
|
3021
3060
|
slotInject: "",
|
|
3022
|
-
declaredBy: "an entry in 'conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
3061
|
+
declaredBy: "an entry in 'main.conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
3023
3062
|
occupants: ["client-ui-conversation ConversationSession"],
|
|
3024
3063
|
replaceRisk: "shadows-shipped-ui",
|
|
3025
3064
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.session', () => ctx.slots.register(\n { name: 'conversation.session' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3026
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3065
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:123"
|
|
3027
3066
|
},
|
|
3028
3067
|
{
|
|
3029
3068
|
key: "conversation.session.header",
|
|
@@ -3035,7 +3074,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3035
3074
|
ownerProps: [],
|
|
3036
3075
|
ownerPropsReferences: [],
|
|
3037
3076
|
standardProps: [
|
|
3077
|
+
"useResource: UseResource",
|
|
3038
3078
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3079
|
+
"usePanelInfo: UsePanelInfo",
|
|
3039
3080
|
"useSessions: UseSessions",
|
|
3040
3081
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3041
3082
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -3051,11 +3092,11 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3051
3092
|
keyDomain: "",
|
|
3052
3093
|
hookContext: "",
|
|
3053
3094
|
slotInject: "",
|
|
3054
|
-
declaredBy: "an entry in 'conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
3095
|
+
declaredBy: "an entry in 'main.conversation' (client-ui-conversation), so it exists while that entry is mounted",
|
|
3055
3096
|
occupants: ["client-ui-conversation ConversationSessionHeader"],
|
|
3056
3097
|
replaceRisk: "shadows-shipped-ui",
|
|
3057
3098
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.session.header', () => ctx.slots.register(\n { name: 'conversation.session.header' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3058
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3099
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:125"
|
|
3059
3100
|
},
|
|
3060
3101
|
{
|
|
3061
3102
|
key: "conversation.session.header.actions",
|
|
@@ -3086,7 +3127,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3086
3127
|
ownerProps: ["/** Header actions derive their state from standard Session props. */\nexport interface ConversationHeaderActionOwnerProps {\n /** Marker field: entries receive no owner-specific values. */\n children?: never\n}"],
|
|
3087
3128
|
ownerPropsReferences: [],
|
|
3088
3129
|
standardProps: [
|
|
3130
|
+
"useResource: UseResource",
|
|
3089
3131
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3132
|
+
"usePanelInfo: UsePanelInfo",
|
|
3090
3133
|
"useSessions: UseSessions",
|
|
3091
3134
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3092
3135
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -3111,7 +3154,41 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3111
3154
|
],
|
|
3112
3155
|
replaceRisk: "none",
|
|
3113
3156
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.session.header.actions', () => ctx.slots.register(\n { name: 'conversation.session.header.actions', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3114
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3157
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:133"
|
|
3158
|
+
},
|
|
3159
|
+
{
|
|
3160
|
+
key: "conversation.session.header.corner",
|
|
3161
|
+
kind: "single",
|
|
3162
|
+
scope: "session",
|
|
3163
|
+
summary: "The header's far-right corner, past the utilities' edge and into the header's own padding, for one control.",
|
|
3164
|
+
doc: "The header's far-right corner, past the utilities' edge and into the\nheader's own padding, for one control. The corner is laid out only while\nits occupant renders something; an occupant with nothing to show renders\nnothing, and the utilities take the header's edge.",
|
|
3165
|
+
registerOptions: [],
|
|
3166
|
+
ownerProps: ["/** The header corner's occupant derives its state from standard Session props. */\nexport interface ConversationHeaderCornerOwnerProps {\n /** Marker field: the occupant receives no owner-specific values. */\n children?: never\n}"],
|
|
3167
|
+
ownerPropsReferences: [],
|
|
3168
|
+
standardProps: [
|
|
3169
|
+
"useResource: UseResource",
|
|
3170
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3171
|
+
"usePanelInfo: UsePanelInfo",
|
|
3172
|
+
"useSessions: UseSessions",
|
|
3173
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3174
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3175
|
+
"useChat: UseChat",
|
|
3176
|
+
"useConversation: UseConversation",
|
|
3177
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
3178
|
+
"inputActions: InputActions",
|
|
3179
|
+
"useSession: SessionSnapshotSelector",
|
|
3180
|
+
"sessionId: SessionId",
|
|
3181
|
+
"useProjection: UseProjection",
|
|
3182
|
+
"useTrajectory: UseTrajectory"
|
|
3183
|
+
],
|
|
3184
|
+
keyDomain: "",
|
|
3185
|
+
hookContext: "",
|
|
3186
|
+
slotInject: "",
|
|
3187
|
+
declaredBy: "an entry in 'conversation.session.header' (client-ui-conversation), so it exists while that entry is mounted",
|
|
3188
|
+
occupants: ["client-ui-sidebar-right ExpandButton"],
|
|
3189
|
+
replaceRisk: "shadows-shipped-ui",
|
|
3190
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.session.header.corner', () => ctx.slots.register(\n { name: 'conversation.session.header.corner' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3191
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:150"
|
|
3115
3192
|
},
|
|
3116
3193
|
{
|
|
3117
3194
|
key: "conversation.session.header.lineage",
|
|
@@ -3123,7 +3200,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3123
3200
|
ownerProps: ["/** Plain breadcrumb data handed to the optional lineage renderer. */\nexport interface ConversationHeaderLineageOwnerProps {\n /** Session represented by this breadcrumb title. */\n lineageSessionId: SessionId\n /** Display title available to a combined title/control renderer. */\n displayTitle: string\n /** Navigate to an ancestor title when present. */\n openTitle?: () => void\n}"],
|
|
3124
3201
|
ownerPropsReferences: ["SessionId"],
|
|
3125
3202
|
standardProps: [
|
|
3203
|
+
"useResource: UseResource",
|
|
3126
3204
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3205
|
+
"usePanelInfo: UsePanelInfo",
|
|
3127
3206
|
"useSessions: UseSessions",
|
|
3128
3207
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3129
3208
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -3143,7 +3222,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3143
3222
|
occupants: ["client-ui-subagent SubagentHeaderLineage"],
|
|
3144
3223
|
replaceRisk: "shadows-shipped-ui",
|
|
3145
3224
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.session.header.lineage', () => ctx.slots.register(\n { name: 'conversation.session.header.lineage' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3146
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3225
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:127"
|
|
3147
3226
|
},
|
|
3148
3227
|
{
|
|
3149
3228
|
key: "conversation.session.header.utilities",
|
|
@@ -3174,7 +3253,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3174
3253
|
ownerProps: ["/** Header actions derive their state from standard Session props. */\nexport interface ConversationHeaderActionOwnerProps {\n /** Marker field: entries receive no owner-specific values. */\n children?: never\n}"],
|
|
3175
3254
|
ownerPropsReferences: [],
|
|
3176
3255
|
standardProps: [
|
|
3256
|
+
"useResource: UseResource",
|
|
3177
3257
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3258
|
+
"usePanelInfo: UsePanelInfo",
|
|
3178
3259
|
"useSessions: UseSessions",
|
|
3179
3260
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3180
3261
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -3194,7 +3275,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3194
3275
|
occupants: ["client-ui-open-in-app OpenInAppAction id 'open-in-app'", "session-log-export SessionLogDownloadHeaderAction id 'session-log-download'"],
|
|
3195
3276
|
replaceRisk: "none",
|
|
3196
3277
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.session.header.utilities', () => ctx.slots.register(\n { name: 'conversation.session.header.utilities', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3197
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3278
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:139"
|
|
3198
3279
|
},
|
|
3199
3280
|
{
|
|
3200
3281
|
key: "conversation.trajectory.images",
|
|
@@ -3210,7 +3291,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3210
3291
|
"MessageImageSource"
|
|
3211
3292
|
],
|
|
3212
3293
|
standardProps: [
|
|
3294
|
+
"useResource: UseResource",
|
|
3213
3295
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3296
|
+
"usePanelInfo: UsePanelInfo",
|
|
3214
3297
|
"useSessions: UseSessions",
|
|
3215
3298
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3216
3299
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -3230,7 +3313,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3230
3313
|
occupants: ["client-ui-attachment MessageImages"],
|
|
3231
3314
|
replaceRisk: "shadows-shipped-ui",
|
|
3232
3315
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.trajectory.images', () => ctx.slots.register(\n { name: 'conversation.trajectory.images' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3233
|
-
source: "packages/client/ui-trajectory/src/client/trajectory-contract.ts:
|
|
3316
|
+
source: "packages/client/ui-trajectory/src/client/trajectory-contract.ts:98"
|
|
3234
3317
|
},
|
|
3235
3318
|
{
|
|
3236
3319
|
key: "conversation.view",
|
|
@@ -3261,7 +3344,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3261
3344
|
ownerProps: ["/** Conversation View entries obtain their data from registered standard hooks. */\nexport interface ConvViewOwnerProps {\n /** Focus request addressed to the selected View. */\n viewRequest: import('./views.ts').ConversationViewRequest | null\n /** Select a View and address one opaque focus identity to it. */\n openView: (view: string, focus: string) => void\n /** Acknowledge the current one-shot focus request. */\n completeViewRequest: () => void\n}"],
|
|
3262
3345
|
ownerPropsReferences: ["ConversationViewRequest"],
|
|
3263
3346
|
standardProps: [
|
|
3347
|
+
"useResource: UseResource",
|
|
3264
3348
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3349
|
+
"usePanelInfo: UsePanelInfo",
|
|
3265
3350
|
"useSessions: UseSessions",
|
|
3266
3351
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3267
3352
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -3281,19 +3366,110 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3281
3366
|
occupants: ["client-ui-chat ChatView id 'chat'", "client-ui-trajectory TrajectoryView id 'trajectory'"],
|
|
3282
3367
|
replaceRisk: "none",
|
|
3283
3368
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.view', () => ctx.slots.register(\n { name: 'conversation.view', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3284
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3369
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:156"
|
|
3370
|
+
},
|
|
3371
|
+
{
|
|
3372
|
+
key: "main",
|
|
3373
|
+
kind: "keyed",
|
|
3374
|
+
scope: "root",
|
|
3375
|
+
summary: "Central panel selected by sidebar entry id.",
|
|
3376
|
+
doc: "Central panel selected by sidebar entry id. The reserved `conversation`\nkey hosts the Conversation; other keys receive no Session binding.",
|
|
3377
|
+
registerOptions: [{
|
|
3378
|
+
name: "key",
|
|
3379
|
+
requirement: "required",
|
|
3380
|
+
type: "string",
|
|
3381
|
+
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
3382
|
+
}],
|
|
3383
|
+
ownerProps: [],
|
|
3384
|
+
ownerPropsReferences: [],
|
|
3385
|
+
standardProps: [
|
|
3386
|
+
"useResource: UseResource",
|
|
3387
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3388
|
+
"usePanelInfo: UsePanelInfo",
|
|
3389
|
+
"useSessions: UseSessions",
|
|
3390
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3391
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
3392
|
+
],
|
|
3393
|
+
keyDomain: "open: any string the owner dispatches (no compile-time key set), already taken: conversation",
|
|
3394
|
+
hookContext: "",
|
|
3395
|
+
slotInject: "",
|
|
3396
|
+
declaredBy: "an entry in 'root' (client-ui-layout), so it exists while that entry is mounted",
|
|
3397
|
+
occupants: ["client-ui-conversation ConversationPanel key 'conversation'"],
|
|
3398
|
+
replaceRisk: "shadows-shipped-ui",
|
|
3399
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('main', () => ctx.slots.register(\n { name: 'main', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3400
|
+
source: "packages/client/ui-layout/src/client/index.ts:66"
|
|
3401
|
+
},
|
|
3402
|
+
{
|
|
3403
|
+
key: "main.conversation",
|
|
3404
|
+
kind: "single",
|
|
3405
|
+
scope: "session-maybe",
|
|
3406
|
+
summary: "Conversation shell beneath its root-scoped main-panel entry.",
|
|
3407
|
+
doc: "Conversation shell beneath its root-scoped main-panel entry.",
|
|
3408
|
+
registerOptions: [],
|
|
3409
|
+
ownerProps: [],
|
|
3410
|
+
ownerPropsReferences: [],
|
|
3411
|
+
standardProps: [
|
|
3412
|
+
"useResource: UseResource",
|
|
3413
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3414
|
+
"usePanelInfo: UsePanelInfo",
|
|
3415
|
+
"useSessions: UseSessions",
|
|
3416
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3417
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3418
|
+
"useConversation: MaybeSnapshotSelectorHook<ConversationSnapshot>",
|
|
3419
|
+
"useInput: MaybeSnapshotSelectorHook<InputState>",
|
|
3420
|
+
"inputActions: InputActions | undefined",
|
|
3421
|
+
"useSession: MaybeSnapshotSelectorHook<SessionSnapshot>",
|
|
3422
|
+
"sessionId: SessionId | undefined",
|
|
3423
|
+
"useProjection: UseProjection"
|
|
3424
|
+
],
|
|
3425
|
+
keyDomain: "",
|
|
3426
|
+
hookContext: "",
|
|
3427
|
+
slotInject: "",
|
|
3428
|
+
declaredBy: "an entry in 'main' (client-ui-conversation), so it exists while that entry is mounted",
|
|
3429
|
+
occupants: ["client-ui-conversation ConversationRoot"],
|
|
3430
|
+
replaceRisk: "shadows-shipped-ui",
|
|
3431
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('main.conversation', () => ctx.slots.register(\n { name: 'main.conversation' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3432
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:121"
|
|
3285
3433
|
},
|
|
3286
3434
|
{
|
|
3287
|
-
key: "
|
|
3435
|
+
key: "rightbar",
|
|
3436
|
+
kind: "single",
|
|
3437
|
+
scope: "root",
|
|
3438
|
+
summary: "The right column: a track the centre makes room for, or nothing.",
|
|
3439
|
+
doc: "The right column: a track the centre makes room for, or nothing. OCCUPIED\nby the right Sidebar, which uses the resolved column width in normal\nmode and covers the viewport in fullscreen, retaining the wide-screen\ncolumn reservation underneath.\n\nWhether the panel is shown, and whether it takes a track, is the\noccupant's own recorded business — it reports the composition of its\nexpanded and presentation state through `ctx.layout`, and the frame sizes\nthe track and places the resize handle from that. The expand control is\nnot this column's: it is a button in the conversation header. The root\noccupant decides when to render its Session-bound content.",
|
|
3440
|
+
registerOptions: [],
|
|
3441
|
+
ownerProps: ["/** Right column owner share: resolved normal geometry and opening eligibility. */\nexport interface RightbarOwnerProps {\n /** Resolved normal panel width in px, not the saved preference; zero if it cannot fit. */\n width: number\n /** Current frame width in px. */\n viewportWidth: number\n /**\n * Whether a normal right panel can retain 300px beside a 400px center.\n * Before a narrow opening, includes the space from collapsing the left sidebar.\n */\n canShow: boolean\n}"],
|
|
3442
|
+
ownerPropsReferences: [],
|
|
3443
|
+
standardProps: [
|
|
3444
|
+
"useResource: UseResource",
|
|
3445
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3446
|
+
"usePanelInfo: UsePanelInfo",
|
|
3447
|
+
"useSessions: UseSessions",
|
|
3448
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3449
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
3450
|
+
],
|
|
3451
|
+
keyDomain: "",
|
|
3452
|
+
hookContext: "",
|
|
3453
|
+
slotInject: "",
|
|
3454
|
+
declaredBy: "an entry in 'root' (client-ui-layout), so it exists while that entry is mounted",
|
|
3455
|
+
occupants: ["client-ui-sidebar-right RightbarRoot"],
|
|
3456
|
+
replaceRisk: "shadows-shipped-ui",
|
|
3457
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('rightbar', () => ctx.slots.register(\n { name: 'rightbar' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3458
|
+
source: "packages/client/ui-layout/src/client/index.ts:80"
|
|
3459
|
+
},
|
|
3460
|
+
{
|
|
3461
|
+
key: "rightbar.session",
|
|
3288
3462
|
kind: "single",
|
|
3289
3463
|
scope: "session",
|
|
3290
|
-
summary: "
|
|
3291
|
-
doc: "
|
|
3464
|
+
summary: "Session content selected by the root-scoped right Sidebar controller.",
|
|
3465
|
+
doc: "Session content selected by the root-scoped right Sidebar controller.",
|
|
3292
3466
|
registerOptions: [],
|
|
3293
|
-
ownerProps: ["/**
|
|
3467
|
+
ownerProps: ["/** Right column owner share: resolved normal geometry and opening eligibility. */\nexport interface RightbarOwnerProps {\n /** Resolved normal panel width in px, not the saved preference; zero if it cannot fit. */\n width: number\n /** Current frame width in px. */\n viewportWidth: number\n /**\n * Whether a normal right panel can retain 300px beside a 400px center.\n * Before a narrow opening, includes the space from collapsing the left sidebar.\n */\n canShow: boolean\n}"],
|
|
3294
3468
|
ownerPropsReferences: [],
|
|
3295
3469
|
standardProps: [
|
|
3470
|
+
"useResource: UseResource",
|
|
3296
3471
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3472
|
+
"usePanelInfo: UsePanelInfo",
|
|
3297
3473
|
"useSessions: UseSessions",
|
|
3298
3474
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3299
3475
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -3309,11 +3485,11 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3309
3485
|
keyDomain: "",
|
|
3310
3486
|
hookContext: "",
|
|
3311
3487
|
slotInject: "",
|
|
3312
|
-
declaredBy: "an entry in '
|
|
3313
|
-
occupants: ["client-ui-
|
|
3488
|
+
declaredBy: "an entry in 'rightbar' (client-ui-sidebar-right), so it exists while that entry is mounted",
|
|
3489
|
+
occupants: ["client-ui-sidebar-right RightbarSeat"],
|
|
3314
3490
|
replaceRisk: "shadows-shipped-ui",
|
|
3315
|
-
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('
|
|
3316
|
-
source: "packages/client/ui-
|
|
3491
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('rightbar.session', () => ctx.slots.register(\n { name: 'rightbar.session' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3492
|
+
source: "packages/client/ui-sidebar-right/src/client/contract/slots.ts:42"
|
|
3317
3493
|
},
|
|
3318
3494
|
{
|
|
3319
3495
|
key: "root",
|
|
@@ -3325,7 +3501,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3325
3501
|
ownerProps: ["/** Root owner share: the shell supplies nothing — the frame is inject-assembled. */\nexport interface RootOwnerProps { children?: never }"],
|
|
3326
3502
|
ownerPropsReferences: [],
|
|
3327
3503
|
standardProps: [
|
|
3504
|
+
"useResource: UseResource",
|
|
3328
3505
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3506
|
+
"usePanelInfo: UsePanelInfo",
|
|
3329
3507
|
"useSessions: UseSessions",
|
|
3330
3508
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3331
3509
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3368,7 +3546,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3368
3546
|
ownerProps: ["/** Owner share of the header title seat (the shell supplies nothing). */\nexport interface SettingsHeaderOwnerProps {\n /** Marker field: header owner props are intentionally empty. */\n children?: never\n}"],
|
|
3369
3547
|
ownerPropsReferences: [],
|
|
3370
3548
|
standardProps: [
|
|
3549
|
+
"useResource: UseResource",
|
|
3371
3550
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3551
|
+
"usePanelInfo: UsePanelInfo",
|
|
3372
3552
|
"useSessions: UseSessions",
|
|
3373
3553
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3374
3554
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3392,7 +3572,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3392
3572
|
ownerProps: ["/** Owner share of the header title seat (the shell supplies nothing). */\nexport interface SettingsHeaderOwnerProps {\n /** Marker field: header owner props are intentionally empty. */\n children?: never\n}"],
|
|
3393
3573
|
ownerPropsReferences: [],
|
|
3394
3574
|
standardProps: [
|
|
3575
|
+
"useResource: UseResource",
|
|
3395
3576
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3577
|
+
"usePanelInfo: UsePanelInfo",
|
|
3396
3578
|
"useSessions: UseSessions",
|
|
3397
3579
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3398
3580
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3435,7 +3617,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3435
3617
|
ownerProps: ["/** Owner share of a General preference row (the section supplies nothing). */\nexport interface SettingsGeneralItemOwnerProps {\n /** Marker field: item owner props are intentionally empty. */\n children?: never\n}"],
|
|
3436
3618
|
ownerPropsReferences: [],
|
|
3437
3619
|
standardProps: [
|
|
3620
|
+
"useResource: UseResource",
|
|
3438
3621
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3622
|
+
"usePanelInfo: UsePanelInfo",
|
|
3439
3623
|
"useSessions: UseSessions",
|
|
3440
3624
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3441
3625
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3466,7 +3650,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3466
3650
|
ownerProps: ["/** Owner share of the header title seat (the shell supplies nothing). */\nexport interface SettingsHeaderOwnerProps {\n /** Marker field: header owner props are intentionally empty. */\n children?: never\n}"],
|
|
3467
3651
|
ownerPropsReferences: [],
|
|
3468
3652
|
standardProps: [
|
|
3653
|
+
"useResource: UseResource",
|
|
3469
3654
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3655
|
+
"usePanelInfo: UsePanelInfo",
|
|
3470
3656
|
"useSessions: UseSessions",
|
|
3471
3657
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3472
3658
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3509,7 +3695,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3509
3695
|
ownerProps: ["/** Owner share of the footer area (the section supplies nothing). */\nexport interface ModelsFooterOwnerProps {\n /** Marker field: footer owner props are intentionally empty. */\n children?: never\n}"],
|
|
3510
3696
|
ownerPropsReferences: [],
|
|
3511
3697
|
standardProps: [
|
|
3698
|
+
"useResource: UseResource",
|
|
3512
3699
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3700
|
+
"usePanelInfo: UsePanelInfo",
|
|
3513
3701
|
"useSessions: UseSessions",
|
|
3514
3702
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3515
3703
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3538,7 +3726,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3538
3726
|
ownerProps: ["/** Owner share of one provider-card extension occurrence. */\nexport interface ProviderCardExtrasOwnerProps {\n /** The card's directory row (route id, display name, settings address, live state). */\n provider: ProviderDirectoryEntry\n /** Whether any layer configures this provider (its profile resolves); `false` while the add-provider draft edits a dormant row. */\n configured: boolean\n /** Whether the row's referenced api-key credential is confirmed configured (the page's credential join). */\n keyConfigured: boolean\n}"],
|
|
3539
3727
|
ownerPropsReferences: ["ProviderDirectoryEntry"],
|
|
3540
3728
|
standardProps: [
|
|
3729
|
+
"useResource: UseResource",
|
|
3541
3730
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3731
|
+
"usePanelInfo: UsePanelInfo",
|
|
3542
3732
|
"useSessions: UseSessions",
|
|
3543
3733
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3544
3734
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3581,7 +3771,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3581
3771
|
ownerProps: ["/** Owner share of the currently active settings-backed onboarding step. */\nexport interface SettingsOnboardingOwnerProps {\n /** Stable id of the step currently selected by the coordinator. */\n stepId: string\n /** Complete or skip this step and transfer ownership to the next entry. */\n complete: () => void\n /** Open the settings panel directly on one registered section. */\n openSection: (id: string) => void\n}"],
|
|
3582
3772
|
ownerPropsReferences: [],
|
|
3583
3773
|
standardProps: [
|
|
3774
|
+
"useResource: UseResource",
|
|
3584
3775
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3776
|
+
"usePanelInfo: UsePanelInfo",
|
|
3585
3777
|
"useSessions: UseSessions",
|
|
3586
3778
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3587
3779
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3610,7 +3802,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3610
3802
|
ownerProps: ["/** Owner share of a plugin card (the section supplies nothing). */\nexport interface SettingsPluginItemOwnerProps {\n /** Marker field: card owner props are intentionally empty. */\n children?: never\n}"],
|
|
3611
3803
|
ownerPropsReferences: [],
|
|
3612
3804
|
standardProps: [
|
|
3805
|
+
"useResource: UseResource",
|
|
3613
3806
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3807
|
+
"usePanelInfo: UsePanelInfo",
|
|
3614
3808
|
"useSessions: UseSessions",
|
|
3615
3809
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3616
3810
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3658,7 +3852,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3658
3852
|
ownerProps: ["/** Owner share of a Plugins tab (the section supplies nothing). */\nexport interface SettingsPluginsTabOwnerProps {\n /** Marker field: tab owner props are intentionally empty. */\n children?: never\n}"],
|
|
3659
3853
|
ownerPropsReferences: [],
|
|
3660
3854
|
standardProps: [
|
|
3855
|
+
"useResource: UseResource",
|
|
3661
3856
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3857
|
+
"usePanelInfo: UsePanelInfo",
|
|
3662
3858
|
"useSessions: UseSessions",
|
|
3663
3859
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3664
3860
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3701,7 +3897,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3701
3897
|
ownerProps: ["/**\n * Owner share of a settings section entry. The shell owns modal visibility\n * and navigation; a section's data arrives through its own inject faces and\n * stores. `close` is the one shell affordance a section receives, for flows\n * that leave settings altogether (starting a session from a section) — the\n * onboarding coordinator's `openSection`/`complete` precedent, inverted.\n */\nexport interface SettingsSectionOwnerProps {\n /** Close the settings panel (the shell owns the open state). */\n close: () => void\n}"],
|
|
3702
3898
|
ownerPropsReferences: [],
|
|
3703
3899
|
standardProps: [
|
|
3900
|
+
"useResource: UseResource",
|
|
3704
3901
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3902
|
+
"usePanelInfo: UsePanelInfo",
|
|
3705
3903
|
"useSessions: UseSessions",
|
|
3706
3904
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3707
3905
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3730,7 +3928,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3730
3928
|
ownerProps: ["/** Owner share of the trigger content seat: the sidebar column state. */\nexport interface SettingsTriggerOwnerProps {\n /** Whether the sidebar renders wide content (false = 56px rail, icon only). */\n wide: boolean\n}"],
|
|
3731
3929
|
ownerPropsReferences: [],
|
|
3732
3930
|
standardProps: [
|
|
3931
|
+
"useResource: UseResource",
|
|
3733
3932
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3933
|
+
"usePanelInfo: UsePanelInfo",
|
|
3734
3934
|
"useSessions: UseSessions",
|
|
3735
3935
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3736
3936
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3773,7 +3973,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3773
3973
|
ownerProps: [],
|
|
3774
3974
|
ownerPropsReferences: [],
|
|
3775
3975
|
standardProps: [
|
|
3976
|
+
"useResource: UseResource",
|
|
3776
3977
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3978
|
+
"usePanelInfo: UsePanelInfo",
|
|
3777
3979
|
"useSessions: UseSessions",
|
|
3778
3980
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3779
3981
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3785,7 +3987,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3785
3987
|
occupants: [],
|
|
3786
3988
|
replaceRisk: "none",
|
|
3787
3989
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('shell.overlay', () => ctx.slots.register(\n { name: 'shell.overlay', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3788
|
-
source: "packages/client/ui-layout/src/client/index.ts:
|
|
3990
|
+
source: "packages/client/ui-layout/src/client/index.ts:91"
|
|
3789
3991
|
},
|
|
3790
3992
|
{
|
|
3791
3993
|
key: "sidebar",
|
|
@@ -3797,7 +3999,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3797
3999
|
ownerProps: ["/** Sidebar owner share: live column state from the frame's concession solve. */\nexport interface SidebarOwnerProps {\n /** True when the sidebar is closed (the column renders the compact control rail). */\n collapsed: boolean\n /** Rendered column width in px (SIDEBAR_COLLAPSED when collapsed). */\n width: number\n}"],
|
|
3798
4000
|
ownerPropsReferences: [],
|
|
3799
4001
|
standardProps: [
|
|
4002
|
+
"useResource: UseResource",
|
|
3800
4003
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4004
|
+
"usePanelInfo: UsePanelInfo",
|
|
3801
4005
|
"useSessions: UseSessions",
|
|
3802
4006
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3803
4007
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3809,7 +4013,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3809
4013
|
occupants: ["client-ui-sidebar SidebarRoot"],
|
|
3810
4014
|
replaceRisk: "shadows-shipped-ui",
|
|
3811
4015
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar', () => ctx.slots.register(\n { name: 'sidebar' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3812
|
-
source: "packages/client/ui-layout/src/client/index.ts:
|
|
4016
|
+
source: "packages/client/ui-layout/src/client/index.ts:61"
|
|
3813
4017
|
},
|
|
3814
4018
|
{
|
|
3815
4019
|
key: "sidebar.brand.mark",
|
|
@@ -3821,7 +4025,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3821
4025
|
ownerProps: ["/** Geometry supplied to the sidebar brand-mark occupant. */\nexport interface SidebarBrandMarkOwnerProps {\n /** Requested square edge in pixels. */\n size: number\n}"],
|
|
3822
4026
|
ownerPropsReferences: [],
|
|
3823
4027
|
standardProps: [
|
|
4028
|
+
"useResource: UseResource",
|
|
3824
4029
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4030
|
+
"usePanelInfo: UsePanelInfo",
|
|
3825
4031
|
"useSessions: UseSessions",
|
|
3826
4032
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3827
4033
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3833,7 +4039,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3833
4039
|
occupants: ["client-ui-brand-official OfficialBrandMark"],
|
|
3834
4040
|
replaceRisk: "shadows-shipped-ui",
|
|
3835
4041
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.brand.mark', () => ctx.slots.register(\n { name: 'sidebar.brand.mark' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3836
|
-
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:
|
|
4042
|
+
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:22"
|
|
3837
4043
|
},
|
|
3838
4044
|
{
|
|
3839
4045
|
key: "sidebar.brand.name",
|
|
@@ -3845,7 +4051,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3845
4051
|
ownerProps: ["/** Empty owner share for the sidebar brand-name occupant. */\nexport interface SidebarBrandNameOwnerProps {\n /** Marker field: the occupant owns its own content and width. */\n children?: never\n}"],
|
|
3846
4052
|
ownerPropsReferences: [],
|
|
3847
4053
|
standardProps: [
|
|
4054
|
+
"useResource: UseResource",
|
|
3848
4055
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4056
|
+
"usePanelInfo: UsePanelInfo",
|
|
3849
4057
|
"useSessions: UseSessions",
|
|
3850
4058
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3851
4059
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3857,7 +4065,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3857
4065
|
occupants: ["client-ui-brand-official OfficialBrandName"],
|
|
3858
4066
|
replaceRisk: "shadows-shipped-ui",
|
|
3859
4067
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.brand.name', () => ctx.slots.register(\n { name: 'sidebar.brand.name' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3860
|
-
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:
|
|
4068
|
+
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:27"
|
|
3861
4069
|
},
|
|
3862
4070
|
{
|
|
3863
4071
|
key: "sidebar.footer.action",
|
|
@@ -3888,7 +4096,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3888
4096
|
ownerProps: ["/** Owner share of an action rendered beside Settings at the sidebar foot. */\nexport interface SidebarFooterActionOwnerProps {\n /** Whether the sidebar renders wide content (false = 56px rail). */\n wide: boolean\n}"],
|
|
3889
4097
|
ownerPropsReferences: [],
|
|
3890
4098
|
standardProps: [
|
|
4099
|
+
"useResource: UseResource",
|
|
3891
4100
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4101
|
+
"usePanelInfo: UsePanelInfo",
|
|
3892
4102
|
"useSessions: UseSessions",
|
|
3893
4103
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3894
4104
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3900,7 +4110,276 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3900
4110
|
occupants: ["client-ui-cordis CordisPanel id 'cordis-panel'"],
|
|
3901
4111
|
replaceRisk: "none",
|
|
3902
4112
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.footer.action', () => ctx.slots.register(\n { name: 'sidebar.footer.action', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3903
|
-
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:
|
|
4113
|
+
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:50"
|
|
4114
|
+
},
|
|
4115
|
+
{
|
|
4116
|
+
key: "sidebar.panellist",
|
|
4117
|
+
kind: "list",
|
|
4118
|
+
scope: "root",
|
|
4119
|
+
summary: "Global panel icons.",
|
|
4120
|
+
doc: "Global panel icons. Each list id addresses the matching main panel;\nthe sidebar owns the button and resolves its label from list metadata.",
|
|
4121
|
+
registerOptions: [
|
|
4122
|
+
{
|
|
4123
|
+
name: "id",
|
|
4124
|
+
requirement: "required",
|
|
4125
|
+
type: "string",
|
|
4126
|
+
doc: "Your cell key. Use an id of your own: a fresh id is added beside the shipped entries, while reusing a shipped id puts you in THAT cell and replaces it. Owners that filter by id address you by it."
|
|
4127
|
+
},
|
|
4128
|
+
{
|
|
4129
|
+
name: "order",
|
|
4130
|
+
requirement: "optional",
|
|
4131
|
+
type: "number",
|
|
4132
|
+
doc: "Position among the entries, ascending (default 0)."
|
|
4133
|
+
},
|
|
4134
|
+
{
|
|
4135
|
+
name: "label",
|
|
4136
|
+
requirement: "optional",
|
|
4137
|
+
type: "string | (() => string)",
|
|
4138
|
+
doc: "Display text where the owner projects one (nav rows, tabs). A thunk is re-read on every projection, so localized text follows the active locale without re-registering."
|
|
4139
|
+
}
|
|
4140
|
+
],
|
|
4141
|
+
ownerProps: ["/** Icon presentation supplied by the global panel row. */\nexport interface SidebarPanelIconOwnerProps {\n /** Requested square edge in pixels. */\n size: number\n /** Whether this panel is selected in the main column. */\n active: boolean\n}"],
|
|
4142
|
+
ownerPropsReferences: [],
|
|
4143
|
+
standardProps: [
|
|
4144
|
+
"useResource: UseResource",
|
|
4145
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4146
|
+
"usePanelInfo: UsePanelInfo",
|
|
4147
|
+
"useSessions: UseSessions",
|
|
4148
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
4149
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
4150
|
+
],
|
|
4151
|
+
keyDomain: "",
|
|
4152
|
+
hookContext: "",
|
|
4153
|
+
slotInject: "",
|
|
4154
|
+
declaredBy: "an entry in 'sidebar' (client-ui-sidebar), so it exists while that entry is mounted",
|
|
4155
|
+
occupants: [],
|
|
4156
|
+
replaceRisk: "none",
|
|
4157
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.panellist', () => ctx.slots.register(\n { name: 'sidebar.panellist', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4158
|
+
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:32"
|
|
4159
|
+
},
|
|
4160
|
+
{
|
|
4161
|
+
key: "sidebar.right.pane.tab",
|
|
4162
|
+
kind: "keyed",
|
|
4163
|
+
scope: "session",
|
|
4164
|
+
summary: "One tab's body, dispatched with the `id` of the type in force for `tab.kind`.",
|
|
4165
|
+
doc: "One tab's body, dispatched with the `id` of the type in force for\n`tab.kind`. A tab type registers here under its definition's `id` and\nreceives every tab of that kind, in every pane, docked or floating. A kind\nwith no type in force renders the owner's \"nothing can view this\" notice\nrather than an empty pane.",
|
|
4166
|
+
registerOptions: [{
|
|
4167
|
+
name: "key",
|
|
4168
|
+
requirement: "required",
|
|
4169
|
+
type: "string",
|
|
4170
|
+
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
4171
|
+
}],
|
|
4172
|
+
ownerProps: [],
|
|
4173
|
+
ownerPropsReferences: [],
|
|
4174
|
+
standardProps: [
|
|
4175
|
+
"useResource: UseResource",
|
|
4176
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4177
|
+
"usePanelInfo: UsePanelInfo",
|
|
4178
|
+
"useSessions: UseSessions",
|
|
4179
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
4180
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4181
|
+
"useChat: UseChat",
|
|
4182
|
+
"useConversation: UseConversation",
|
|
4183
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
4184
|
+
"inputActions: InputActions",
|
|
4185
|
+
"useSession: SessionSnapshotSelector",
|
|
4186
|
+
"sessionId: SessionId",
|
|
4187
|
+
"useProjection: UseProjection",
|
|
4188
|
+
"useTrajectory: UseTrajectory"
|
|
4189
|
+
],
|
|
4190
|
+
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
4191
|
+
hookContext: "TabHookContext",
|
|
4192
|
+
slotInject: "SidebarRightTabInjected",
|
|
4193
|
+
declaredBy: "an entry in 'rightbar.session' (client-ui-sidebar-right), so it exists while that entry is mounted",
|
|
4194
|
+
occupants: [
|
|
4195
|
+
"client-ui-sidebar-documentpreview TextPreview",
|
|
4196
|
+
"client-ui-sidebar-files FilesBody",
|
|
4197
|
+
"client-ui-sidebar-right GuideBody"
|
|
4198
|
+
],
|
|
4199
|
+
replaceRisk: "none",
|
|
4200
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.right.pane.tab', () => ctx.slots.register(\n { name: 'sidebar.right.pane.tab', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4201
|
+
source: "packages/client/ui-sidebar-right/src/client/contract/slots.ts:50"
|
|
4202
|
+
},
|
|
4203
|
+
{
|
|
4204
|
+
key: "sidebar.right.pane.tab.title",
|
|
4205
|
+
kind: "keyed",
|
|
4206
|
+
scope: "session",
|
|
4207
|
+
summary: "A tab's title as its chip (and a floating panel's header) shows it, dispatched with the same key and information hook as the body.",
|
|
4208
|
+
doc: "A tab's title as its chip (and a floating panel's header) shows it,\ndispatched with the same key and information hook as the body. A type with a\nlive title — a terminal named after its shell, a chat after its first\nline — registers here and reads its own store; one without registers\nnothing and the chip shows the registry's `title(address)` text captured\nat open time.",
|
|
4209
|
+
registerOptions: [{
|
|
4210
|
+
name: "key",
|
|
4211
|
+
requirement: "required",
|
|
4212
|
+
type: "string",
|
|
4213
|
+
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
4214
|
+
}],
|
|
4215
|
+
ownerProps: [],
|
|
4216
|
+
ownerPropsReferences: [],
|
|
4217
|
+
standardProps: [
|
|
4218
|
+
"useResource: UseResource",
|
|
4219
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4220
|
+
"usePanelInfo: UsePanelInfo",
|
|
4221
|
+
"useSessions: UseSessions",
|
|
4222
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
4223
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4224
|
+
"useChat: UseChat",
|
|
4225
|
+
"useConversation: UseConversation",
|
|
4226
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
4227
|
+
"inputActions: InputActions",
|
|
4228
|
+
"useSession: SessionSnapshotSelector",
|
|
4229
|
+
"sessionId: SessionId",
|
|
4230
|
+
"useProjection: UseProjection",
|
|
4231
|
+
"useTrajectory: UseTrajectory"
|
|
4232
|
+
],
|
|
4233
|
+
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
4234
|
+
hookContext: "TabHookContext",
|
|
4235
|
+
slotInject: "SidebarRightTabInjected",
|
|
4236
|
+
declaredBy: "an entry in 'rightbar.session' (client-ui-sidebar-right), so it exists while that entry is mounted",
|
|
4237
|
+
occupants: [
|
|
4238
|
+
"client-ui-sidebar-documentpreview TextTitle",
|
|
4239
|
+
"client-ui-sidebar-files FilesTitle",
|
|
4240
|
+
"client-ui-sidebar-right GuideTitle"
|
|
4241
|
+
],
|
|
4242
|
+
replaceRisk: "none",
|
|
4243
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.right.pane.tab.title', () => ctx.slots.register(\n { name: 'sidebar.right.pane.tab.title', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4244
|
+
source: "packages/client/ui-sidebar-right/src/client/contract/slots.ts:64"
|
|
4245
|
+
},
|
|
4246
|
+
{
|
|
4247
|
+
key: "sidebar.right.tab.document",
|
|
4248
|
+
kind: "keyed",
|
|
4249
|
+
scope: "session",
|
|
4250
|
+
summary: "Document body selected by a registered implementation id.",
|
|
4251
|
+
doc: "Document body selected by a registered implementation id.",
|
|
4252
|
+
registerOptions: [{
|
|
4253
|
+
name: "key",
|
|
4254
|
+
requirement: "required",
|
|
4255
|
+
type: "string",
|
|
4256
|
+
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
4257
|
+
}],
|
|
4258
|
+
ownerProps: ["/**\n * Contents prepared by the preview owner using ordinary file reads.\n * Byte arrays are transient UI input, never persisted layout or Session data.\n */\nexport type DocumentContent =\n | { readonly kind: 'text'; readonly text: string; readonly pages: readonly DocumentTextPage[]; readonly eof: boolean }\n | { readonly kind: 'bytes'; readonly data: Uint8Array<ArrayBuffer> }"],
|
|
4259
|
+
ownerPropsReferences: ["DocumentTextPage"],
|
|
4260
|
+
standardProps: [
|
|
4261
|
+
"useResource: UseResource",
|
|
4262
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4263
|
+
"usePanelInfo: UsePanelInfo",
|
|
4264
|
+
"useSessions: UseSessions",
|
|
4265
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
4266
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4267
|
+
"useChat: UseChat",
|
|
4268
|
+
"useConversation: UseConversation",
|
|
4269
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
4270
|
+
"inputActions: InputActions",
|
|
4271
|
+
"useSession: SessionSnapshotSelector",
|
|
4272
|
+
"sessionId: SessionId",
|
|
4273
|
+
"useProjection: UseProjection",
|
|
4274
|
+
"useTrajectory: UseTrajectory"
|
|
4275
|
+
],
|
|
4276
|
+
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
4277
|
+
hookContext: "UseSidebarRightTabInfo",
|
|
4278
|
+
slotInject: "{ hooks: { tabInfo: SlotHookFactory<'sidebar.right.tab.document', UseSidebarRightTabInfo> } }",
|
|
4279
|
+
declaredBy: "an entry in 'sidebar.right.pane.tab' (client-ui-sidebar-documentpreview), so it exists while that entry is mounted",
|
|
4280
|
+
occupants: [
|
|
4281
|
+
"client-ui-sidebar-documentpreview CodeBody",
|
|
4282
|
+
"client-ui-sidebar-documentpreview HtmlBody",
|
|
4283
|
+
"client-ui-sidebar-documentpreview ImageBody",
|
|
4284
|
+
"client-ui-sidebar-documentpreview MarkdownBody",
|
|
4285
|
+
"client-ui-sidebar-documentpreview PdfBody",
|
|
4286
|
+
"client-ui-sidebar-documentpreview TextBody"
|
|
4287
|
+
],
|
|
4288
|
+
replaceRisk: "none",
|
|
4289
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.right.tab.document', () => ctx.slots.register(\n { name: 'sidebar.right.tab.document', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4290
|
+
source: "packages/client/ui-sidebar-documentpreview/src/client/document/contract.ts:23"
|
|
4291
|
+
},
|
|
4292
|
+
{
|
|
4293
|
+
key: "sidebar.right.tab.guide",
|
|
4294
|
+
kind: "chain",
|
|
4295
|
+
scope: "session",
|
|
4296
|
+
summary: "The guide tab's body.",
|
|
4297
|
+
doc: "The guide tab's body. Selectors run in chain order and the first\nnon-declining entry replaces the shipped guide entirely; with no entry, or\nwith every entry declining, the shipped guide renders.",
|
|
4298
|
+
registerOptions: [{
|
|
4299
|
+
name: "select",
|
|
4300
|
+
requirement: "required",
|
|
4301
|
+
type: "(owner) => unknown | null",
|
|
4302
|
+
doc: "Pure routing selector. Entries are tried in ascending order; the first non-null result wins and arrives as the component's `matched` prop. All-null falls through to the owner's fallback."
|
|
4303
|
+
}],
|
|
4304
|
+
ownerProps: [],
|
|
4305
|
+
ownerPropsReferences: [],
|
|
4306
|
+
standardProps: [
|
|
4307
|
+
"useResource: UseResource",
|
|
4308
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4309
|
+
"usePanelInfo: UsePanelInfo",
|
|
4310
|
+
"useSessions: UseSessions",
|
|
4311
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
4312
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4313
|
+
"useChat: UseChat",
|
|
4314
|
+
"useConversation: UseConversation",
|
|
4315
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
4316
|
+
"inputActions: InputActions",
|
|
4317
|
+
"useSession: SessionSnapshotSelector",
|
|
4318
|
+
"sessionId: SessionId",
|
|
4319
|
+
"useProjection: UseProjection",
|
|
4320
|
+
"useTrajectory: UseTrajectory"
|
|
4321
|
+
],
|
|
4322
|
+
keyDomain: "",
|
|
4323
|
+
hookContext: "UseSidebarRightTabInfo",
|
|
4324
|
+
slotInject: "{ hooks: { tabInfo: SlotHookFactory<'sidebar.right.tab.guide', UseSidebarRightTabInfo> } }",
|
|
4325
|
+
declaredBy: "an entry in 'sidebar.right.pane.tab' (client-ui-sidebar-right), so it exists while that entry is mounted",
|
|
4326
|
+
occupants: [],
|
|
4327
|
+
replaceRisk: "none",
|
|
4328
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.right.tab.guide', () => ctx.slots.register(\n { name: 'sidebar.right.tab.guide', select: owner => null },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4329
|
+
source: "packages/client/ui-sidebar-right/src/client/contract/slots.ts:75"
|
|
4330
|
+
},
|
|
4331
|
+
{
|
|
4332
|
+
key: "sidebar.right.tab.menu.item",
|
|
4333
|
+
kind: "list",
|
|
4334
|
+
scope: "session",
|
|
4335
|
+
summary: "Extra items at the end of one tab's actions menu, in registration order.",
|
|
4336
|
+
doc: "Extra items at the end of one tab's actions menu, in registration order.\nEntries decide their own visibility from the tab they are given. Without a\nregistrant the menu shows only the kit's own layout actions.",
|
|
4337
|
+
registerOptions: [
|
|
4338
|
+
{
|
|
4339
|
+
name: "id",
|
|
4340
|
+
requirement: "required",
|
|
4341
|
+
type: "string",
|
|
4342
|
+
doc: "Your cell key. Use an id of your own: a fresh id is added beside the shipped entries, while reusing a shipped id puts you in THAT cell and replaces it. Owners that filter by id address you by it."
|
|
4343
|
+
},
|
|
4344
|
+
{
|
|
4345
|
+
name: "order",
|
|
4346
|
+
requirement: "optional",
|
|
4347
|
+
type: "number",
|
|
4348
|
+
doc: "Position among the entries, ascending (default 0)."
|
|
4349
|
+
},
|
|
4350
|
+
{
|
|
4351
|
+
name: "label",
|
|
4352
|
+
requirement: "optional",
|
|
4353
|
+
type: "string | (() => string)",
|
|
4354
|
+
doc: "Display text where the owner projects one (nav rows, tabs). A thunk is re-read on every projection, so localized text follows the active locale without re-registering."
|
|
4355
|
+
}
|
|
4356
|
+
],
|
|
4357
|
+
ownerProps: ["/** Owner share of one tab-menu item occurrence. */\nexport interface SidebarRightTabMenuOwnerProps {\n /** The tab whose menu is open. */\n tab: TabRecord\n /**\n * Dismiss the menu.\n *\n * An item that acts MUST call this: the menu is the kit's, and it closes on\n * its own actions only. An item that leaves it open leaves a menu floating\n * over content the action may have just replaced.\n */\n dismiss: () => void\n}"],
|
|
4358
|
+
ownerPropsReferences: ["TabRecord"],
|
|
4359
|
+
standardProps: [
|
|
4360
|
+
"useResource: UseResource",
|
|
4361
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4362
|
+
"usePanelInfo: UsePanelInfo",
|
|
4363
|
+
"useSessions: UseSessions",
|
|
4364
|
+
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
4365
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4366
|
+
"useChat: UseChat",
|
|
4367
|
+
"useConversation: UseConversation",
|
|
4368
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
4369
|
+
"inputActions: InputActions",
|
|
4370
|
+
"useSession: SessionSnapshotSelector",
|
|
4371
|
+
"sessionId: SessionId",
|
|
4372
|
+
"useProjection: UseProjection",
|
|
4373
|
+
"useTrajectory: UseTrajectory"
|
|
4374
|
+
],
|
|
4375
|
+
keyDomain: "",
|
|
4376
|
+
hookContext: "",
|
|
4377
|
+
slotInject: "",
|
|
4378
|
+
declaredBy: "an entry in 'rightbar.session' (client-ui-sidebar-right), so it exists while that entry is mounted",
|
|
4379
|
+
occupants: [],
|
|
4380
|
+
replaceRisk: "none",
|
|
4381
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.right.tab.menu.item', () => ctx.slots.register(\n { name: 'sidebar.right.tab.menu.item', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4382
|
+
source: "packages/client/ui-sidebar-right/src/client/contract/slots.ts:86"
|
|
3904
4383
|
},
|
|
3905
4384
|
{
|
|
3906
4385
|
key: "sidebar.settings",
|
|
@@ -3912,7 +4391,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3912
4391
|
ownerProps: ["/**\n * Owner share of the sidebar settings seat: the column display state the\n * occupant's trigger row must render against (wide row vs rail icon).\n */\nexport interface SidebarSettingsOwnerProps {\n /** Whether the sidebar renders wide content (false = 56px rail). */\n wide: boolean\n}"],
|
|
3913
4392
|
ownerPropsReferences: [],
|
|
3914
4393
|
standardProps: [
|
|
4394
|
+
"useResource: UseResource",
|
|
3915
4395
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4396
|
+
"usePanelInfo: UsePanelInfo",
|
|
3916
4397
|
"useSessions: UseSessions",
|
|
3917
4398
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3918
4399
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3924,7 +4405,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3924
4405
|
occupants: ["client-ui-settings-general SettingsRoot"],
|
|
3925
4406
|
replaceRisk: "shadows-shipped-ui",
|
|
3926
4407
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.settings', () => ctx.slots.register(\n { name: 'sidebar.settings' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3927
|
-
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:
|
|
4408
|
+
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:45"
|
|
3928
4409
|
},
|
|
3929
4410
|
{
|
|
3930
4411
|
key: "sidebar.workspaces",
|
|
@@ -3936,7 +4417,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3936
4417
|
ownerProps: ["/**\n * Owner share of the browser hole — the only facts crossing the shell/region\n * boundary. Business data and actions arrive through the region's own inject.\n */\nexport interface SidebarSectionOwnerProps {\n /** Shell fold-state output: wide renders the full browser, rail the icon column. */\n wide: boolean\n /** Rail icons request expansion; the browser rides the wide flip for focus. */\n expandSidebar: () => void\n}"],
|
|
3937
4418
|
ownerPropsReferences: [],
|
|
3938
4419
|
standardProps: [
|
|
4420
|
+
"useResource: UseResource",
|
|
3939
4421
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4422
|
+
"usePanelInfo: UsePanelInfo",
|
|
3940
4423
|
"useSessions: UseSessions",
|
|
3941
4424
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3942
4425
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3948,7 +4431,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3948
4431
|
occupants: ["client-ui-workspace WorkspaceBrowser"],
|
|
3949
4432
|
replaceRisk: "shadows-shipped-ui",
|
|
3950
4433
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.workspaces', () => ctx.slots.register(\n { name: 'sidebar.workspaces' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3951
|
-
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:
|
|
4434
|
+
source: "packages/client/ui-sidebar/src/client/contract/slots.ts:39"
|
|
3952
4435
|
},
|
|
3953
4436
|
{
|
|
3954
4437
|
key: "sidebar.workspaces.directoryFlow",
|
|
@@ -3960,7 +4443,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3960
4443
|
ownerProps: ["/**\n * Owner share of the directory-flow holes: the complete conversation between\n * the trigger surface and the picking interaction. The occupant reads `open`\n * to run/render its interaction and reports exactly one outcome per open.\n */\nexport interface DirectoryFlowOwnerProps {\n /** True while a picking interaction is requested; flipping back to false withdraws the request. */\n open: boolean\n /** True while the owner adopts a picked path (`createWorkspace` in flight); occupants disable their commit affordances. */\n busy: boolean\n /** The operator picked a directory (absolute host path); the owner adopts it. */\n onPicked: (path: string) => void\n /** The operator dismissed the interaction; the owner just closes the flow. */\n onCancel: () => void\n /** The interaction itself failed (chooser missing, listing denied); the owner shows its error surface. */\n onError: (message: string) => void\n}"],
|
|
3961
4444
|
ownerPropsReferences: [],
|
|
3962
4445
|
standardProps: [
|
|
4446
|
+
"useResource: UseResource",
|
|
3963
4447
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4448
|
+
"usePanelInfo: UsePanelInfo",
|
|
3964
4449
|
"useSessions: UseSessions",
|
|
3965
4450
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3966
4451
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>"
|
|
@@ -3984,7 +4469,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3984
4469
|
ownerProps: ["/** Owner currency of the Tool image gallery slot: references plus the loader. */\nexport interface ToolImagesOwnerProps {\n /** Durable references or submission-echo previews in result order. */\n images: readonly MessageImageSource[]\n /** Session-authorized image URL loader for the durable arm. */\n loadImage: MessageImageLoader\n /** Horizontal placement inside the owning record. */\n align: 'start' | 'end'\n}"],
|
|
3985
4470
|
ownerPropsReferences: ["MessageImageLoader", "MessageImageSource"],
|
|
3986
4471
|
standardProps: [
|
|
4472
|
+
"useResource: UseResource",
|
|
3987
4473
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4474
|
+
"usePanelInfo: UsePanelInfo",
|
|
3988
4475
|
"useSessions: UseSessions",
|
|
3989
4476
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
3990
4477
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -4018,10 +4505,16 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4018
4505
|
type: "string",
|
|
4019
4506
|
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
4020
4507
|
}],
|
|
4021
|
-
ownerProps: ["/** Standard owner currency supplied to every atomic Tool view. */\nexport interface ToolCallOwnerProps {\n /** Tool call identity, stable across running and settled forms. */\n callId: string\n /** Wire Tool name and keyed dispatch value. */\n toolName: string\n /** Frozen running call or settled result node. */\n block: ToolCallBlock\n /** Session workspace root for relative summaries. */\n cwd?: string | undefined\n /** Host account home; POSIX home-rooted summaries display as `~`. */\n home?: string | undefined\n
|
|
4022
|
-
ownerPropsReferences: [
|
|
4508
|
+
ownerProps: ["/** Standard owner currency supplied to every atomic Tool view. */\nexport interface ToolCallOwnerProps {\n /** Tool call identity, stable across running and settled forms. */\n callId: string\n /** Wire Tool name and keyed dispatch value. */\n toolName: string\n /** Frozen running call or settled result node. */\n block: ToolCallBlock\n /** Session workspace root for relative summaries. */\n cwd?: string | undefined\n /** Host account home; POSIX home-rooted summaries display as `~`. */\n home?: string | undefined\n /**\n * Open a Tool argument path. A view that knows which line the call was about\n * passes it, and the opened surface lands there.\n */\n openFile: (path: string, options?: OpenFileOptions) => void\n /**\n * Session-authorized image loader for the `tool.call.images` slot, supplied\n * by the chat node that owns this call. A composed chat node always\n * supplies it (`ChatNodeOwnerProps.loadImage` is required), so the tool\n * layer never imports an attachment implementation nor handles URL\n * authorization.\n */\n loadImage: MessageImageLoader\n /** Inspect this call in the trajectory view when available. */\n inspect?: (() => void) | undefined\n}"],
|
|
4509
|
+
ownerPropsReferences: [
|
|
4510
|
+
"ChatNodeOwnerProps",
|
|
4511
|
+
"MessageImageLoader",
|
|
4512
|
+
"OpenFileOptions"
|
|
4513
|
+
],
|
|
4023
4514
|
standardProps: [
|
|
4515
|
+
"useResource: UseResource",
|
|
4024
4516
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4517
|
+
"usePanelInfo: UsePanelInfo",
|
|
4025
4518
|
"useSessions: UseSessions",
|
|
4026
4519
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
4027
4520
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
@@ -4034,11 +4527,12 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4034
4527
|
"useProjection: UseProjection",
|
|
4035
4528
|
"useTrajectory: UseTrajectory"
|
|
4036
4529
|
],
|
|
4037
|
-
keyDomain: "open: any string the owner dispatches (no compile-time key set), already taken: ask_user_question, bash, cordis_define, cordis_run, cordis_stop, cordis_undefine, edit, glob, grep, read, read_image, skill, todo_write, web_fetch, web_search, write",
|
|
4530
|
+
keyDomain: "open: any string the owner dispatches (no compile-time key set), already taken: ask_user_question, bash, cordis_define, cordis_run, cordis_stop, cordis_undefine, edit, glob, grep, present, read, read_image, skill, todo_write, web_fetch, web_search, write",
|
|
4038
4531
|
hookContext: "",
|
|
4039
4532
|
slotInject: "",
|
|
4040
4533
|
declaredBy: "an entry in 'conversation.chat.node' (client-ui-tool), so it exists while that entry is mounted",
|
|
4041
4534
|
occupants: [
|
|
4535
|
+
"client-ui-deliverables PresentRow key 'present'",
|
|
4042
4536
|
"client-ui-skill SkillRow key 'skill'",
|
|
4043
4537
|
"client-ui-tool AskQuestionRow key 'ask_user_question'",
|
|
4044
4538
|
"client-ui-tool BashRow key 'bash'",
|
|
@@ -4079,7 +4573,9 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4079
4573
|
"CordisDynamicPluginRunId"
|
|
4080
4574
|
],
|
|
4081
4575
|
standardProps: [
|
|
4576
|
+
"useResource: UseResource",
|
|
4082
4577
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4578
|
+
"usePanelInfo: UsePanelInfo",
|
|
4083
4579
|
"useSessions: UseSessions",
|
|
4084
4580
|
"useSessionPendingInteraction: UseSessionPendingInteraction",
|
|
4085
4581
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|