@deepseek-ai/dsh-cordis-client-runner 0.2.1-alpha.2 → 0.2.1-alpha.4
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 +712 -207
- package/locale/en.json +5 -0
- package/locale/zh.json +6 -0
- package/package.json +12 -11
package/lib/client.js
CHANGED
|
@@ -1416,7 +1416,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1416
1416
|
},
|
|
1417
1417
|
{
|
|
1418
1418
|
signature: "setFontSize(role: FontRole, px: number): void",
|
|
1419
|
-
description: "Change one role's font size
|
|
1419
|
+
description: "Change one role's font size. Accepted values are written through the settings scope and emit `theme/change`.",
|
|
1420
1420
|
parameters: [{
|
|
1421
1421
|
name: "role",
|
|
1422
1422
|
description: "font role."
|
|
@@ -1499,15 +1499,22 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1499
1499
|
}]
|
|
1500
1500
|
},
|
|
1501
1501
|
{
|
|
1502
|
-
signature: "openWorkspace(workspaceId: WorkspaceId, beforeOpen?: (sessionId: SessionId) => void): Promise<void>",
|
|
1502
|
+
signature: "openWorkspace( workspaceId: WorkspaceId, beforeOpen?: (sessionId: SessionId) => void, options?: Pick<StartSessionOptions, 'agentPreset'>, ): Promise<void>",
|
|
1503
1503
|
description: "Connect a Workspace and open its Session unless a later navigation supersedes it.",
|
|
1504
|
-
parameters: [
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1504
|
+
parameters: [
|
|
1505
|
+
{
|
|
1506
|
+
name: "workspaceId",
|
|
1507
|
+
description: "target Workspace."
|
|
1508
|
+
},
|
|
1509
|
+
{
|
|
1510
|
+
name: "beforeOpen",
|
|
1511
|
+
description: "optional synchronous preparation for the selected Session, skipped after supersession; a throw aborts the open and releases the retained reference."
|
|
1512
|
+
},
|
|
1513
|
+
{
|
|
1514
|
+
name: "options",
|
|
1515
|
+
description: "choices for the Session the connection creates or reuses."
|
|
1516
|
+
}
|
|
1517
|
+
],
|
|
1511
1518
|
returns: "completion; a superseded request may create a Session but does not open it.",
|
|
1512
1519
|
throws: ["on failure; a refused creation is also shown through the Workspace notice unless a later navigation or disposal superseded the request."]
|
|
1513
1520
|
},
|
|
@@ -1531,11 +1538,14 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1531
1538
|
returns: "the child SessionId after creation and inherited-title increment."
|
|
1532
1539
|
},
|
|
1533
1540
|
{
|
|
1534
|
-
signature: "connectWorkspace(workspaceId: WorkspaceId): Promise<SessionId>",
|
|
1535
|
-
description: "Resolve the
|
|
1541
|
+
signature: "connectWorkspace(workspaceId: WorkspaceId, options?: Pick<StartSessionOptions, 'agentPreset'>): Promise<SessionId>",
|
|
1542
|
+
description: "Resolve the Session for a new conversation in a Workspace: the Host reuses the first listed blank member while it is reusable and otherwise creates one, under the requested preset or the Host default.",
|
|
1536
1543
|
parameters: [{
|
|
1537
1544
|
name: "workspaceId",
|
|
1538
1545
|
description: "target Workspace."
|
|
1546
|
+
}, {
|
|
1547
|
+
name: "options",
|
|
1548
|
+
description: "choices for the created or reused Session."
|
|
1539
1549
|
}],
|
|
1540
1550
|
returns: "a Session already addressable through the Session Controller."
|
|
1541
1551
|
},
|
|
@@ -1547,7 +1557,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1547
1557
|
description: "explicit target; absent inherits the current or most recent Workspace."
|
|
1548
1558
|
}, {
|
|
1549
1559
|
name: "options",
|
|
1550
|
-
description: "initial content; existing text or attachments are preserved unless clearPreviousDraft is true."
|
|
1560
|
+
description: "initial content and the reused blank's preset; existing text or attachments are preserved unless clearPreviousDraft is true."
|
|
1551
1561
|
}]
|
|
1552
1562
|
},
|
|
1553
1563
|
{
|
|
@@ -1793,12 +1803,16 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1793
1803
|
},
|
|
1794
1804
|
{
|
|
1795
1805
|
name: "ConnectionHandle",
|
|
1796
|
-
declaration: "export interface ConnectionHandle {\n readonly isLoopback: boolean;\n readonly generation: ConnectionGenerationState;\n readonly state: ConnectionStateSource;\n readonly rpc: ClientConnectionRpc;\n reconnect(): void;\n registerGenerationSource(source: ConnectionGenerationSource): () => void;\n start(sinks: ConnectionSinks, config?: ConnectionRecoveryConfig): ConnectionLoop;\n}"
|
|
1806
|
+
declaration: "export interface ConnectionHandle {\n readonly interactions: ConnectionInteractions;\n readonly isLoopback: boolean;\n readonly generation: ConnectionGenerationState;\n readonly state: ConnectionStateSource;\n readonly rpc: ClientConnectionRpc;\n openWebSocket(path: string): ConnectionWebSocket;\n reconnect(): void;\n registerGenerationSource(source: ConnectionGenerationSource): () => void;\n start(sinks: ConnectionSinks, config?: ConnectionRecoveryConfig): ConnectionLoop;\n}"
|
|
1797
1807
|
},
|
|
1798
1808
|
{
|
|
1799
1809
|
name: "ConnectionHostInfo",
|
|
1800
1810
|
declaration: "export interface ConnectionHostInfo {\n readonly home: string;\n}"
|
|
1801
1811
|
},
|
|
1812
|
+
{
|
|
1813
|
+
name: "ConnectionInteractions",
|
|
1814
|
+
declaration: "export type ConnectionInteractions = 'answer' | 'none';"
|
|
1815
|
+
},
|
|
1802
1816
|
{
|
|
1803
1817
|
name: "ConnectionLoop",
|
|
1804
1818
|
declaration: "export interface ConnectionLoop {\n stop(): void;\n}"
|
|
@@ -1827,6 +1841,14 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1827
1841
|
name: "ConnectionStateSource",
|
|
1828
1842
|
declaration: "export interface ConnectionStateSource {\n getSnapshot(): ConnectionState | undefined;\n subscribe(listener: () => void): () => void;\n}"
|
|
1829
1843
|
},
|
|
1844
|
+
{
|
|
1845
|
+
name: "ConnectionWebSocket",
|
|
1846
|
+
declaration: "export interface ConnectionWebSocket {\n readonly readyState: number;\n send(data: string): void;\n close(code?: number, reason?: string): void;\n addEventListener<Event extends keyof ConnectionWebSocketEventMap>(event: Event, listener: (event: ConnectionWebSocketEventMap[Event]) => void, options?: {\n readonly once?: boolean;\n }): void;\n removeEventListener<Event extends keyof ConnectionWebSocketEventMap>(event: Event, listener: (event: ConnectionWebSocketEventMap[Event]) => void): void;\n}"
|
|
1847
|
+
},
|
|
1848
|
+
{
|
|
1849
|
+
name: "ConnectionWebSocketEventMap",
|
|
1850
|
+
declaration: "export interface ConnectionWebSocketEventMap {\n readonly open: object;\n readonly error: object;\n readonly close: object;\n readonly message: {\n readonly data: unknown;\n };\n}"
|
|
1851
|
+
},
|
|
1830
1852
|
{
|
|
1831
1853
|
name: "DraftInitializationOptions",
|
|
1832
1854
|
declaration: "export interface DraftInitializationOptions {\n readonly prompt?: string;\n readonly clearPreviousDraft?: boolean;\n}"
|
|
@@ -1897,7 +1919,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1897
1919
|
},
|
|
1898
1920
|
{
|
|
1899
1921
|
name: "ISessions",
|
|
1900
|
-
declaration: "export interface ISessions {\n readonly list: ObservableSnapshot<SessionListState>;\n retain(target: SessionTarget, options: SessionRetainOptions): SessionReference;\n using<T>(target: SessionTarget, options: SessionRetainOptions, operation: (reference: SessionReference) => T | Promise<T>): Promise<T>;\n retainInfo(id: SessionId): ObservableSnapshot<SessionRetainInfo>;\n readonly searchResultLimit: number;\n create(opts?: {\n workspaceId?: WorkspaceId;\n cwd?: string;\n sessionId?: SessionId;\n }): Promise<SessionId>;\n subagentAddress(id: SessionId): SubagentAddress | undefined;\n refreshProjections(sessionId: SessionId): Promise<void>;\n refresh(): Promise<void>;\n search(query: string, signal: AbortSignal): Promise<RemoteResult<{\n items: SessionSearchResultItem[];\n hasMore: boolean;\n }>>;\n fork(opts: {\n sessionId: SessionId;\n atSeq?: number;\n increaseTitle?: boolean;\n onCreated?: (childId: SessionId) => void;\n allowMigration?: boolean;\n }): Promise<SessionId>;\n scope(id: SessionId): AgentContext | undefined;\n scopeOf(ctx: Context): SessionId | undefined;\n sessionOf(ctx: Context): SessionFace | undefined;\n binding(id: SessionId): SessionBinding | undefined;\n}"
|
|
1922
|
+
declaration: "export interface ISessions {\n readonly list: ObservableSnapshot<SessionListState>;\n retain(target: SessionTarget, options: SessionRetainOptions): SessionReference;\n using<T>(target: SessionTarget, options: SessionRetainOptions, operation: (reference: SessionReference) => T | Promise<T>): Promise<T>;\n retainInfo(id: SessionId): ObservableSnapshot<SessionRetainInfo>;\n readonly searchResultLimit: number;\n create(opts?: {\n workspaceId?: WorkspaceId;\n cwd?: string;\n sessionId?: SessionId;\n agentPreset?: string;\n }): Promise<SessionId>;\n subagentAddress(id: SessionId): SubagentAddress | undefined;\n refreshProjections(sessionId: SessionId): Promise<void>;\n refresh(): Promise<void>;\n search(query: string, signal: AbortSignal): Promise<RemoteResult<{\n items: SessionSearchResultItem[];\n hasMore: boolean;\n }>>;\n fork(opts: {\n sessionId: SessionId;\n atSeq?: number;\n increaseTitle?: boolean;\n onCreated?: (childId: SessionId) => void;\n allowMigration?: boolean;\n }): Promise<SessionId>;\n scope(id: SessionId): AgentContext | undefined;\n scopeOf(ctx: Context): SessionId | undefined;\n sessionOf(ctx: Context): SessionFace | undefined;\n binding(id: SessionId): SessionBinding | undefined;\n}"
|
|
1901
1923
|
},
|
|
1902
1924
|
{
|
|
1903
1925
|
name: "KeyedHooksSources",
|
|
@@ -1909,7 +1931,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
1909
1931
|
},
|
|
1910
1932
|
{
|
|
1911
1933
|
name: "KeyedStandardSource",
|
|
1912
|
-
declaration: "export type KeyedStandardSource = (key: string) => HostObservable<unknown> | undefined;"
|
|
1934
|
+
declaration: "export type KeyedStandardSource = (key: string, member?: string) => HostObservable<unknown> | undefined;"
|
|
1913
1935
|
},
|
|
1914
1936
|
{
|
|
1915
1937
|
name: "KeyPropsOf",
|
|
@@ -2205,7 +2227,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2205
2227
|
},
|
|
2206
2228
|
{
|
|
2207
2229
|
name: "SlotEntryDef",
|
|
2208
|
-
declaration: "export interface SlotEntryDef {\n kind: SlotKind;\n scope: SlotScope;\n owner?: object;\n keyProps?: Record<string, object>;\n hookContext?: unknown;\n inject?: object;\n}"
|
|
2230
|
+
declaration: "export interface SlotEntryDef {\n kind: SlotKind;\n scope: SlotScope;\n inline?: true;\n owner?: object;\n keyProps?: Record<string, object>;\n hookContext?: unknown;\n inject?: object;\n}"
|
|
2209
2231
|
},
|
|
2210
2232
|
{
|
|
2211
2233
|
name: "SlotFactoryMap",
|
|
@@ -2241,7 +2263,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2241
2263
|
},
|
|
2242
2264
|
{
|
|
2243
2265
|
name: "SlotSpec",
|
|
2244
|
-
declaration: "export type SlotSpec<E extends SlotEntryDef> = {\n kind: E['kind'];\n scope: E['scope'];\n} & ('inject' extends keyof E ? E extends {\n inject: infer Injected extends object;\n} ? {\n inject: Injected;\n} : {\n inject?: object;\n} : {\n inject?: never;\n});"
|
|
2266
|
+
declaration: "export type SlotSpec<E extends SlotEntryDef> = {\n kind: E['kind'];\n scope: E['scope'];\n inline?: true;\n} & ('inject' extends keyof E ? E extends {\n inject: infer Injected extends object;\n} ? {\n inject: Injected;\n} : {\n inject?: object;\n} : {\n inject?: never;\n});"
|
|
2245
2267
|
},
|
|
2246
2268
|
{
|
|
2247
2269
|
name: "SnapshotSelectorHook",
|
|
@@ -2249,7 +2271,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2249
2271
|
},
|
|
2250
2272
|
{
|
|
2251
2273
|
name: "StartSessionOptions",
|
|
2252
|
-
declaration: "export
|
|
2274
|
+
declaration: "export interface StartSessionOptions extends DraftInitializationOptions {\n readonly agentPreset?: string;\n}"
|
|
2253
2275
|
},
|
|
2254
2276
|
{
|
|
2255
2277
|
name: "StoreDecl",
|
|
@@ -2420,13 +2442,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2420
2442
|
ownerProps: ["/** Stable identity handed to an optional approval-detail renderer. */\nexport interface ApprovalDetailOwnerProps {\n /** Tool call correlated with the request. */\n callId: ToolCallId\n}"],
|
|
2421
2443
|
ownerPropsReferences: [],
|
|
2422
2444
|
standardProps: [
|
|
2445
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2423
2446
|
"useResource: UseResource",
|
|
2424
2447
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2425
2448
|
"usePanelInfo: UsePanelInfo",
|
|
2426
2449
|
"useSessions: UseSessions",
|
|
2427
2450
|
"useSessionStatus: UseSessionStatus",
|
|
2428
2451
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2429
|
-
"
|
|
2452
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2453
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2430
2454
|
"useChat: UseChat",
|
|
2431
2455
|
"useConversation: UseConversation",
|
|
2432
2456
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2434,6 +2458,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2434
2458
|
"useSession: SessionSnapshotSelector",
|
|
2435
2459
|
"sessionId: SessionId",
|
|
2436
2460
|
"useProjection: UseProjection",
|
|
2461
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2437
2462
|
"useTrajectory: UseTrajectory"
|
|
2438
2463
|
],
|
|
2439
2464
|
keyDomain: "",
|
|
@@ -2474,13 +2499,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2474
2499
|
ownerProps: ["/** Owner currency of finalized-assistant actions. */\nexport interface AssistantActionOwnerProps {\n messageId: MessageId\n}"],
|
|
2475
2500
|
ownerPropsReferences: ["MessageId"],
|
|
2476
2501
|
standardProps: [
|
|
2502
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2477
2503
|
"useResource: UseResource",
|
|
2478
2504
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2479
2505
|
"usePanelInfo: UsePanelInfo",
|
|
2480
2506
|
"useSessions: UseSessions",
|
|
2481
2507
|
"useSessionStatus: UseSessionStatus",
|
|
2482
2508
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2483
|
-
"
|
|
2509
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2510
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2484
2511
|
"useChat: UseChat",
|
|
2485
2512
|
"useConversation: UseConversation",
|
|
2486
2513
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2488,6 +2515,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2488
2515
|
"useSession: SessionSnapshotSelector",
|
|
2489
2516
|
"sessionId: SessionId",
|
|
2490
2517
|
"useProjection: UseProjection",
|
|
2518
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2491
2519
|
"useTrajectory: UseTrajectory"
|
|
2492
2520
|
],
|
|
2493
2521
|
keyDomain: "",
|
|
@@ -2497,7 +2525,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2497
2525
|
occupants: ["client-ui-message-feedback MessageFeedbackActions id 'feedback'"],
|
|
2498
2526
|
replaceRisk: "none",
|
|
2499
2527
|
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}",
|
|
2500
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2528
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:441"
|
|
2501
2529
|
},
|
|
2502
2530
|
{
|
|
2503
2531
|
key: "conversation.chat.commandview",
|
|
@@ -2518,13 +2546,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2518
2546
|
"CompactionSummaryNode"
|
|
2519
2547
|
],
|
|
2520
2548
|
standardProps: [
|
|
2549
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2521
2550
|
"useResource: UseResource",
|
|
2522
2551
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2523
2552
|
"usePanelInfo: UsePanelInfo",
|
|
2524
2553
|
"useSessions: UseSessions",
|
|
2525
2554
|
"useSessionStatus: UseSessionStatus",
|
|
2526
2555
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2527
|
-
"
|
|
2556
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2557
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2528
2558
|
"useChat: UseChat",
|
|
2529
2559
|
"useConversation: UseConversation",
|
|
2530
2560
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2532,6 +2562,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2532
2562
|
"useSession: SessionSnapshotSelector",
|
|
2533
2563
|
"sessionId: SessionId",
|
|
2534
2564
|
"useProjection: UseProjection",
|
|
2565
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2535
2566
|
"useTrajectory: UseTrajectory"
|
|
2536
2567
|
],
|
|
2537
2568
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
@@ -2541,7 +2572,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2541
2572
|
occupants: [],
|
|
2542
2573
|
replaceRisk: "none",
|
|
2543
2574
|
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}",
|
|
2544
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2575
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:423"
|
|
2545
2576
|
},
|
|
2546
2577
|
{
|
|
2547
2578
|
key: "conversation.chat.flow",
|
|
@@ -2550,20 +2581,22 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2550
2581
|
summary: "Ordered Chat rows and local echoes with viewport-bound visibility hooks.",
|
|
2551
2582
|
doc: "Ordered Chat rows and local echoes with viewport-bound visibility hooks.",
|
|
2552
2583
|
registerOptions: [],
|
|
2553
|
-
ownerProps: ["/** Ordered rows and reconciled local echoes rendered inside one Chat viewport. */\nexport interface ChatFlowOwnerProps extends Pick<ChatNodeOwnerProps,\n 'cwd' | '
|
|
2584
|
+
ownerProps: ["/** Ordered rows and reconciled local echoes rendered inside one Chat viewport. */\nexport interface ChatFlowOwnerProps extends Pick<ChatNodeOwnerProps,\n 'cwd' | 'openFile' | 'inspectCall' | 'forkAt' | 'loadImage' | 'fileMentions'> {\n readonly entries: readonly RenderEntry[]\n readonly pendingInputs: readonly (PendingSubmission | InboxState['next-step'][number])[]\n readonly lastInputTurn: number | undefined\n readonly deferCollapse: boolean\n}"],
|
|
2554
2585
|
ownerPropsReferences: [
|
|
2555
2586
|
"ChatNodeOwnerProps",
|
|
2556
2587
|
"PendingSubmission",
|
|
2557
2588
|
"RenderEntry"
|
|
2558
2589
|
],
|
|
2559
2590
|
standardProps: [
|
|
2591
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2560
2592
|
"useResource: UseResource",
|
|
2561
2593
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2562
2594
|
"usePanelInfo: UsePanelInfo",
|
|
2563
2595
|
"useSessions: UseSessions",
|
|
2564
2596
|
"useSessionStatus: UseSessionStatus",
|
|
2565
2597
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2566
|
-
"
|
|
2598
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2599
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2567
2600
|
"useChat: UseChat",
|
|
2568
2601
|
"useConversation: UseConversation",
|
|
2569
2602
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2571,6 +2604,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2571
2604
|
"useSession: SessionSnapshotSelector",
|
|
2572
2605
|
"sessionId: SessionId",
|
|
2573
2606
|
"useProjection: UseProjection",
|
|
2607
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2574
2608
|
"useTrajectory: UseTrajectory"
|
|
2575
2609
|
],
|
|
2576
2610
|
keyDomain: "",
|
|
@@ -2580,7 +2614,49 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2580
2614
|
occupants: ["client-ui-chat ChatFlow"],
|
|
2581
2615
|
replaceRisk: "shadows-shipped-ui",
|
|
2582
2616
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.flow', () => ctx.slots.register(\n { name: 'conversation.chat.flow' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2583
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2617
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:390"
|
|
2618
|
+
},
|
|
2619
|
+
{
|
|
2620
|
+
key: "conversation.chat.message.images",
|
|
2621
|
+
kind: "single",
|
|
2622
|
+
scope: "session",
|
|
2623
|
+
summary: "Renderer for one consecutive group of durable message images.",
|
|
2624
|
+
doc: "Renderer for one consecutive group of durable message images. The owner\nsupplies image references, an authorized loader, and alignment. A\nregistration replaces the shipped gallery; without one, images are omitted.",
|
|
2625
|
+
registerOptions: [],
|
|
2626
|
+
ownerProps: ["/** Message image group handed to the optional attachment presentation plugin. */\nexport interface MessageImagesOwnerProps {\n /** Durable references or submission-echo previews in source 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 /** Force every image into the compact message-attachment tile size. */\n compact?: boolean\n /** Fixed, uncropped thumbnail for an attachment list row. */\n thumbnail?: boolean\n}"],
|
|
2627
|
+
ownerPropsReferences: [
|
|
2628
|
+
"Message",
|
|
2629
|
+
"MessageImageLoader",
|
|
2630
|
+
"MessageImageSource"
|
|
2631
|
+
],
|
|
2632
|
+
standardProps: [
|
|
2633
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2634
|
+
"useResource: UseResource",
|
|
2635
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2636
|
+
"usePanelInfo: UsePanelInfo",
|
|
2637
|
+
"useSessions: UseSessions",
|
|
2638
|
+
"useSessionStatus: UseSessionStatus",
|
|
2639
|
+
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2640
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2641
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2642
|
+
"useChat: UseChat",
|
|
2643
|
+
"useConversation: UseConversation",
|
|
2644
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
2645
|
+
"inputActions: InputActions",
|
|
2646
|
+
"useSession: SessionSnapshotSelector",
|
|
2647
|
+
"sessionId: SessionId",
|
|
2648
|
+
"useProjection: UseProjection",
|
|
2649
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2650
|
+
"useTrajectory: UseTrajectory"
|
|
2651
|
+
],
|
|
2652
|
+
keyDomain: "",
|
|
2653
|
+
hookContext: "",
|
|
2654
|
+
slotInject: "",
|
|
2655
|
+
declaredBy: "an entry in 'conversation.chat.node' (client-ui-chat), so it exists while that entry is mounted",
|
|
2656
|
+
occupants: ["client-ui-attachment MessageImages"],
|
|
2657
|
+
replaceRisk: "shadows-shipped-ui",
|
|
2658
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.message.images', () => ctx.slots.register(\n { name: 'conversation.chat.message.images' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2659
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:415"
|
|
2584
2660
|
},
|
|
2585
2661
|
{
|
|
2586
2662
|
key: "conversation.chat.node",
|
|
@@ -2594,23 +2670,24 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2594
2670
|
type: "string",
|
|
2595
2671
|
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
2596
2672
|
}],
|
|
2597
|
-
ownerProps: ["/** Stable owner currency delivered to a keyed Chat renderer. */\nexport interface ChatNodeOwnerProps {\n /** Renderer-owned Node portion selected by the grouping Definition. */\n groupPart?: string\n cwd?: string | undefined\n
|
|
2673
|
+
ownerProps: ["/** Stable owner currency delivered to a keyed Chat renderer. */\nexport interface ChatNodeOwnerProps {\n /** Renderer-owned Node portion selected by the grouping Definition. */\n groupPart?: string\n cwd?: string | undefined\n openFile: (path: string, options?: OpenFileOptions) => void\n inspectCall: ((callId: ToolCallId) => void) | undefined\n forkAt: (seq: number) => void\n /** Session-authorized image loader supplied by the Chat view. */\n loadImage: MessageImageLoader\n fileMentions: (owner: TurnTailOwnerProps) => MarkdownFileMentions | undefined\n /** Turn-process state when this Node belongs to a projected Turn. */\n turnProcess?: TurnProcessOwnerProps | undefined\n}"],
|
|
2598
2674
|
ownerPropsReferences: [
|
|
2599
2675
|
"MarkdownFileMentions",
|
|
2600
2676
|
"MessageImageLoader",
|
|
2601
2677
|
"OpenFileOptions",
|
|
2602
|
-
"RenderMessageImages",
|
|
2603
2678
|
"TurnProcessOwnerProps",
|
|
2604
2679
|
"TurnTailOwnerProps"
|
|
2605
2680
|
],
|
|
2606
2681
|
standardProps: [
|
|
2682
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2607
2683
|
"useResource: UseResource",
|
|
2608
2684
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2609
2685
|
"usePanelInfo: UsePanelInfo",
|
|
2610
2686
|
"useSessions: UseSessions",
|
|
2611
2687
|
"useSessionStatus: UseSessionStatus",
|
|
2612
2688
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2613
|
-
"
|
|
2689
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2690
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2614
2691
|
"useChat: UseChat",
|
|
2615
2692
|
"useConversation: UseConversation",
|
|
2616
2693
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2618,6 +2695,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2618
2695
|
"useSession: SessionSnapshotSelector",
|
|
2619
2696
|
"sessionId: SessionId",
|
|
2620
2697
|
"useProjection: UseProjection",
|
|
2698
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2621
2699
|
"useTrajectory: UseTrajectory"
|
|
2622
2700
|
],
|
|
2623
2701
|
keyDomain: "fixed by the owner's key table { [Kind in ChatNodeKind]: { node: ChatNode<Kind> } }, already taken: assistant-step, command, command-input, compaction, context, manual-compaction, model-retry, question-reply, steering, system-prompt, tool-call, turn-error, turn-max-tokens, turn-process, turn-tail, turn-trigger, unknown, user, workflow-run",
|
|
@@ -2647,7 +2725,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2647
2725
|
],
|
|
2648
2726
|
replaceRisk: "shadows-shipped-ui",
|
|
2649
2727
|
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}",
|
|
2650
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2728
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:402"
|
|
2651
2729
|
},
|
|
2652
2730
|
{
|
|
2653
2731
|
key: "conversation.chat.reasoning.body",
|
|
@@ -2659,13 +2737,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2659
2737
|
ownerProps: ["/** Original model-provided reasoning offered to the expanded Body Slot. */\nexport interface ReasoningBodyOwnerProps {\n /** Complete or streaming reasoning text. */\n readonly text: string\n /** Whether the reasoning tail is still streaming. */\n readonly running: boolean\n}"],
|
|
2660
2738
|
ownerPropsReferences: [],
|
|
2661
2739
|
standardProps: [
|
|
2740
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2662
2741
|
"useResource: UseResource",
|
|
2663
2742
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2664
2743
|
"usePanelInfo: UsePanelInfo",
|
|
2665
2744
|
"useSessions: UseSessions",
|
|
2666
2745
|
"useSessionStatus: UseSessionStatus",
|
|
2667
2746
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2668
|
-
"
|
|
2747
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2748
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2669
2749
|
"useChat: UseChat",
|
|
2670
2750
|
"useConversation: UseConversation",
|
|
2671
2751
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2673,6 +2753,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2673
2753
|
"useSession: SessionSnapshotSelector",
|
|
2674
2754
|
"sessionId: SessionId",
|
|
2675
2755
|
"useProjection: UseProjection",
|
|
2756
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2676
2757
|
"useTrajectory: UseTrajectory"
|
|
2677
2758
|
],
|
|
2678
2759
|
keyDomain: "",
|
|
@@ -2682,7 +2763,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2682
2763
|
occupants: ["client-ui-chat DefaultReasoningBody", "experimental-client-ui-cot-translation TranslationBody"],
|
|
2683
2764
|
replaceRisk: "shadows-shipped-ui",
|
|
2684
2765
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.reasoning.body', () => ctx.slots.register(\n { name: 'conversation.chat.reasoning.body' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2685
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2766
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:429"
|
|
2686
2767
|
},
|
|
2687
2768
|
{
|
|
2688
2769
|
key: "conversation.chat.turnTail",
|
|
@@ -2713,13 +2794,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2713
2794
|
ownerProps: ["/** Owner currency of the completed-Turn extension chain. */\nexport interface TurnTailOwnerProps {\n turn: TurnLocation\n seq: number\n openFile: (path: string) => void\n}"],
|
|
2714
2795
|
ownerPropsReferences: ["TurnLocation"],
|
|
2715
2796
|
standardProps: [
|
|
2797
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2716
2798
|
"useResource: UseResource",
|
|
2717
2799
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2718
2800
|
"usePanelInfo: UsePanelInfo",
|
|
2719
2801
|
"useSessions: UseSessions",
|
|
2720
2802
|
"useSessionStatus: UseSessionStatus",
|
|
2721
2803
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2722
|
-
"
|
|
2804
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2805
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2723
2806
|
"useChat: UseChat",
|
|
2724
2807
|
"useConversation: UseConversation",
|
|
2725
2808
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2727,6 +2810,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2727
2810
|
"useSession: SessionSnapshotSelector",
|
|
2728
2811
|
"sessionId: SessionId",
|
|
2729
2812
|
"useProjection: UseProjection",
|
|
2813
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2730
2814
|
"useTrajectory: UseTrajectory"
|
|
2731
2815
|
],
|
|
2732
2816
|
keyDomain: "",
|
|
@@ -2740,7 +2824,49 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2740
2824
|
],
|
|
2741
2825
|
replaceRisk: "none",
|
|
2742
2826
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.turnTail', () => ctx.slots.register(\n { name: 'conversation.chat.turnTail', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2743
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
2827
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:435"
|
|
2828
|
+
},
|
|
2829
|
+
{
|
|
2830
|
+
key: "conversation.chat.user.images",
|
|
2831
|
+
kind: "single",
|
|
2832
|
+
scope: "session",
|
|
2833
|
+
summary: "User-message images, including pending and local-echo previews, independently replaceable from output images.",
|
|
2834
|
+
doc: "User-message images, including pending and local-echo previews, independently replaceable from output images.",
|
|
2835
|
+
registerOptions: [],
|
|
2836
|
+
ownerProps: ["/** Message image group handed to the optional attachment presentation plugin. */\nexport interface MessageImagesOwnerProps {\n /** Durable references or submission-echo previews in source 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 /** Force every image into the compact message-attachment tile size. */\n compact?: boolean\n /** Fixed, uncropped thumbnail for an attachment list row. */\n thumbnail?: boolean\n}"],
|
|
2837
|
+
ownerPropsReferences: [
|
|
2838
|
+
"Message",
|
|
2839
|
+
"MessageImageLoader",
|
|
2840
|
+
"MessageImageSource"
|
|
2841
|
+
],
|
|
2842
|
+
standardProps: [
|
|
2843
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2844
|
+
"useResource: UseResource",
|
|
2845
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2846
|
+
"usePanelInfo: UsePanelInfo",
|
|
2847
|
+
"useSessions: UseSessions",
|
|
2848
|
+
"useSessionStatus: UseSessionStatus",
|
|
2849
|
+
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2850
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2851
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2852
|
+
"useChat: UseChat",
|
|
2853
|
+
"useConversation: UseConversation",
|
|
2854
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
2855
|
+
"inputActions: InputActions",
|
|
2856
|
+
"useSession: SessionSnapshotSelector",
|
|
2857
|
+
"sessionId: SessionId",
|
|
2858
|
+
"useProjection: UseProjection",
|
|
2859
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2860
|
+
"useTrajectory: UseTrajectory"
|
|
2861
|
+
],
|
|
2862
|
+
keyDomain: "",
|
|
2863
|
+
hookContext: "",
|
|
2864
|
+
slotInject: "",
|
|
2865
|
+
declaredBy: "factory 'conversation.chat.user.content' (client-ui-chat), so it exists while that definition is registered",
|
|
2866
|
+
occupants: ["client-ui-attachment MessageImages"],
|
|
2867
|
+
replaceRisk: "shadows-shipped-ui",
|
|
2868
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.chat.user.images', () => ctx.slots.register(\n { name: 'conversation.chat.user.images' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2869
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:417"
|
|
2744
2870
|
},
|
|
2745
2871
|
{
|
|
2746
2872
|
key: "conversation.composer",
|
|
@@ -2761,13 +2887,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2761
2887
|
"SessionSnapshot"
|
|
2762
2888
|
],
|
|
2763
2889
|
standardProps: [
|
|
2890
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2764
2891
|
"useResource: UseResource",
|
|
2765
2892
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2766
2893
|
"usePanelInfo: UsePanelInfo",
|
|
2767
2894
|
"useSessions: UseSessions",
|
|
2768
2895
|
"useSessionStatus: UseSessionStatus",
|
|
2769
2896
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2770
|
-
"
|
|
2897
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2898
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2771
2899
|
"useChat: UseChat",
|
|
2772
2900
|
"useConversation: UseConversation",
|
|
2773
2901
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2775,6 +2903,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2775
2903
|
"useSession: SessionSnapshotSelector",
|
|
2776
2904
|
"sessionId: SessionId",
|
|
2777
2905
|
"useProjection: UseProjection",
|
|
2906
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2778
2907
|
"useTrajectory: UseTrajectory"
|
|
2779
2908
|
],
|
|
2780
2909
|
keyDomain: "",
|
|
@@ -2788,7 +2917,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2788
2917
|
],
|
|
2789
2918
|
replaceRisk: "none",
|
|
2790
2919
|
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}",
|
|
2791
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2920
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:260"
|
|
2792
2921
|
},
|
|
2793
2922
|
{
|
|
2794
2923
|
key: "conversation.composer.bar",
|
|
@@ -2800,19 +2929,22 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2800
2929
|
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}"],
|
|
2801
2930
|
ownerPropsReferences: ["Workspace"],
|
|
2802
2931
|
standardProps: [
|
|
2932
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2803
2933
|
"useResource: UseResource",
|
|
2804
2934
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2805
2935
|
"usePanelInfo: UsePanelInfo",
|
|
2806
2936
|
"useSessions: UseSessions",
|
|
2807
2937
|
"useSessionStatus: UseSessionStatus",
|
|
2808
2938
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2809
|
-
"
|
|
2939
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2940
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2810
2941
|
"useConversation: MaybeSnapshotSelectorHook<ConversationSnapshot>",
|
|
2811
2942
|
"useInput: MaybeSnapshotSelectorHook<InputState>",
|
|
2812
2943
|
"inputActions: InputActions | undefined",
|
|
2813
2944
|
"useSession: MaybeSnapshotSelectorHook<SessionSnapshot>",
|
|
2814
2945
|
"sessionId: SessionId | undefined",
|
|
2815
|
-
"useProjection: UseProjection"
|
|
2946
|
+
"useProjection: UseProjection",
|
|
2947
|
+
"useAccess: (action: RemoteEndpoint) => boolean | undefined"
|
|
2816
2948
|
],
|
|
2817
2949
|
keyDomain: "",
|
|
2818
2950
|
hookContext: "",
|
|
@@ -2821,7 +2953,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2821
2953
|
occupants: ["client-ui-conversation InputBar"],
|
|
2822
2954
|
replaceRisk: "shadows-shipped-ui",
|
|
2823
2955
|
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}",
|
|
2824
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
2956
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:282"
|
|
2825
2957
|
},
|
|
2826
2958
|
{
|
|
2827
2959
|
key: "conversation.composer.dock",
|
|
@@ -2852,13 +2984,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2852
2984
|
ownerProps: [],
|
|
2853
2985
|
ownerPropsReferences: [],
|
|
2854
2986
|
standardProps: [
|
|
2987
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2855
2988
|
"useResource: UseResource",
|
|
2856
2989
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2857
2990
|
"usePanelInfo: UsePanelInfo",
|
|
2858
2991
|
"useSessions: UseSessions",
|
|
2859
2992
|
"useSessionStatus: UseSessionStatus",
|
|
2860
2993
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2861
|
-
"
|
|
2994
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
2995
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2862
2996
|
"useChat: UseChat",
|
|
2863
2997
|
"useConversation: UseConversation",
|
|
2864
2998
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -2866,6 +3000,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2866
3000
|
"useSession: SessionSnapshotSelector",
|
|
2867
3001
|
"sessionId: SessionId",
|
|
2868
3002
|
"useProjection: UseProjection",
|
|
3003
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
2869
3004
|
"useTrajectory: UseTrajectory"
|
|
2870
3005
|
],
|
|
2871
3006
|
keyDomain: "",
|
|
@@ -2875,7 +3010,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2875
3010
|
occupants: ["client-ui-chat ActivityPill id 'activity'", "client-ui-chat UsagePill id 'usage'"],
|
|
2876
3011
|
replaceRisk: "none",
|
|
2877
3012
|
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}",
|
|
2878
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3013
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:274"
|
|
2879
3014
|
},
|
|
2880
3015
|
{
|
|
2881
3016
|
key: "conversation.header",
|
|
@@ -2887,19 +3022,22 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2887
3022
|
ownerProps: [],
|
|
2888
3023
|
ownerPropsReferences: [],
|
|
2889
3024
|
standardProps: [
|
|
3025
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2890
3026
|
"useResource: UseResource",
|
|
2891
3027
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2892
3028
|
"usePanelInfo: UsePanelInfo",
|
|
2893
3029
|
"useSessions: UseSessions",
|
|
2894
3030
|
"useSessionStatus: UseSessionStatus",
|
|
2895
3031
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2896
|
-
"
|
|
3032
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3033
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2897
3034
|
"useConversation: MaybeSnapshotSelectorHook<ConversationSnapshot>",
|
|
2898
3035
|
"useInput: MaybeSnapshotSelectorHook<InputState>",
|
|
2899
3036
|
"inputActions: InputActions | undefined",
|
|
2900
3037
|
"useSession: MaybeSnapshotSelectorHook<SessionSnapshot>",
|
|
2901
3038
|
"sessionId: SessionId | undefined",
|
|
2902
|
-
"useProjection: UseProjection"
|
|
3039
|
+
"useProjection: UseProjection",
|
|
3040
|
+
"useAccess: (action: RemoteEndpoint) => boolean | undefined"
|
|
2903
3041
|
],
|
|
2904
3042
|
keyDomain: "",
|
|
2905
3043
|
hookContext: "",
|
|
@@ -2908,7 +3046,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2908
3046
|
occupants: ["client-ui-conversation ConversationHeader"],
|
|
2909
3047
|
replaceRisk: "shadows-shipped-ui",
|
|
2910
3048
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.header', () => ctx.slots.register(\n { name: 'conversation.header' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2911
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3049
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:212"
|
|
2912
3050
|
},
|
|
2913
3051
|
{
|
|
2914
3052
|
key: "conversation.header.leading",
|
|
@@ -2920,13 +3058,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2920
3058
|
ownerProps: ["/** The leading seat exposes global navigation independently of a Session. */\nexport interface ConversationHeaderLeadingOwnerProps {\n /** Marker field: the occupant receives no owner-specific values. */\n children?: never\n}"],
|
|
2921
3059
|
ownerPropsReferences: [],
|
|
2922
3060
|
standardProps: [
|
|
3061
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2923
3062
|
"useResource: UseResource",
|
|
2924
3063
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2925
3064
|
"usePanelInfo: UsePanelInfo",
|
|
2926
3065
|
"useSessions: UseSessions",
|
|
2927
3066
|
"useSessionStatus: UseSessionStatus",
|
|
2928
3067
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2929
|
-
"
|
|
3068
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3069
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
2930
3070
|
],
|
|
2931
3071
|
keyDomain: "",
|
|
2932
3072
|
hookContext: "",
|
|
@@ -2935,7 +3075,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2935
3075
|
occupants: [],
|
|
2936
3076
|
replaceRisk: "none",
|
|
2937
3077
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.header.leading', () => ctx.slots.register(\n { name: 'conversation.header.leading' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
2938
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3078
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:241"
|
|
2939
3079
|
},
|
|
2940
3080
|
{
|
|
2941
3081
|
key: "conversation.hero.agentPreset",
|
|
@@ -2947,19 +3087,22 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2947
3087
|
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}"],
|
|
2948
3088
|
ownerPropsReferences: [],
|
|
2949
3089
|
standardProps: [
|
|
3090
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2950
3091
|
"useResource: UseResource",
|
|
2951
3092
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2952
3093
|
"usePanelInfo: UsePanelInfo",
|
|
2953
3094
|
"useSessions: UseSessions",
|
|
2954
3095
|
"useSessionStatus: UseSessionStatus",
|
|
2955
3096
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2956
|
-
"
|
|
3097
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3098
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
2957
3099
|
"useConversation: MaybeSnapshotSelectorHook<ConversationSnapshot>",
|
|
2958
3100
|
"useInput: MaybeSnapshotSelectorHook<InputState>",
|
|
2959
3101
|
"inputActions: InputActions | undefined",
|
|
2960
3102
|
"useSession: MaybeSnapshotSelectorHook<SessionSnapshot>",
|
|
2961
3103
|
"sessionId: SessionId | undefined",
|
|
2962
|
-
"useProjection: UseProjection"
|
|
3104
|
+
"useProjection: UseProjection",
|
|
3105
|
+
"useAccess: (action: RemoteEndpoint) => boolean | undefined"
|
|
2963
3106
|
],
|
|
2964
3107
|
keyDomain: "",
|
|
2965
3108
|
hookContext: "",
|
|
@@ -2968,7 +3111,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2968
3111
|
occupants: ["client-ui-agent-preset AgentPresetSeat"],
|
|
2969
3112
|
replaceRisk: "shadows-shipped-ui",
|
|
2970
3113
|
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}",
|
|
2971
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3114
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:266"
|
|
2972
3115
|
},
|
|
2973
3116
|
{
|
|
2974
3117
|
key: "conversation.hero.brand.mark",
|
|
@@ -2980,13 +3123,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2980
3123
|
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}"],
|
|
2981
3124
|
ownerPropsReferences: [],
|
|
2982
3125
|
standardProps: [
|
|
3126
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
2983
3127
|
"useResource: UseResource",
|
|
2984
3128
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
2985
3129
|
"usePanelInfo: UsePanelInfo",
|
|
2986
3130
|
"useSessions: UseSessions",
|
|
2987
3131
|
"useSessionStatus: UseSessionStatus",
|
|
2988
3132
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
2989
|
-
"
|
|
3133
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3134
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
2990
3135
|
],
|
|
2991
3136
|
keyDomain: "",
|
|
2992
3137
|
hookContext: "",
|
|
@@ -2995,7 +3140,64 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
2995
3140
|
occupants: [],
|
|
2996
3141
|
replaceRisk: "none",
|
|
2997
3142
|
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}",
|
|
2998
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3143
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:264"
|
|
3144
|
+
},
|
|
3145
|
+
{
|
|
3146
|
+
key: "conversation.hero.options",
|
|
3147
|
+
kind: "list",
|
|
3148
|
+
scope: "session",
|
|
3149
|
+
summary: "Compact options right-aligned in the New Session row after the workspace and preset controls; rendered only with a Session.",
|
|
3150
|
+
doc: "Compact options right-aligned in the New Session row after the workspace and preset controls; rendered only with a Session.",
|
|
3151
|
+
registerOptions: [
|
|
3152
|
+
{
|
|
3153
|
+
name: "id",
|
|
3154
|
+
requirement: "required",
|
|
3155
|
+
type: "string",
|
|
3156
|
+
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."
|
|
3157
|
+
},
|
|
3158
|
+
{
|
|
3159
|
+
name: "order",
|
|
3160
|
+
requirement: "optional",
|
|
3161
|
+
type: "number",
|
|
3162
|
+
doc: "Position among the entries, ascending (default 0)."
|
|
3163
|
+
},
|
|
3164
|
+
{
|
|
3165
|
+
name: "label",
|
|
3166
|
+
requirement: "optional",
|
|
3167
|
+
type: "string | (() => string)",
|
|
3168
|
+
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."
|
|
3169
|
+
}
|
|
3170
|
+
],
|
|
3171
|
+
ownerProps: [],
|
|
3172
|
+
ownerPropsReferences: [],
|
|
3173
|
+
standardProps: [
|
|
3174
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3175
|
+
"useResource: UseResource",
|
|
3176
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3177
|
+
"usePanelInfo: UsePanelInfo",
|
|
3178
|
+
"useSessions: UseSessions",
|
|
3179
|
+
"useSessionStatus: UseSessionStatus",
|
|
3180
|
+
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3181
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3182
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3183
|
+
"useChat: UseChat",
|
|
3184
|
+
"useConversation: UseConversation",
|
|
3185
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
3186
|
+
"inputActions: InputActions",
|
|
3187
|
+
"useSession: SessionSnapshotSelector",
|
|
3188
|
+
"sessionId: SessionId",
|
|
3189
|
+
"useProjection: UseProjection",
|
|
3190
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3191
|
+
"useTrajectory: UseTrajectory"
|
|
3192
|
+
],
|
|
3193
|
+
keyDomain: "",
|
|
3194
|
+
hookContext: "",
|
|
3195
|
+
slotInject: "",
|
|
3196
|
+
declaredBy: "factory 'conversation.content' (client-ui-conversation), so it exists while that definition is registered",
|
|
3197
|
+
occupants: [],
|
|
3198
|
+
replaceRisk: "none",
|
|
3199
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.hero.options', () => ctx.slots.register(\n { name: 'conversation.hero.options', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3200
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:268"
|
|
2999
3201
|
},
|
|
3000
3202
|
{
|
|
3001
3203
|
key: "conversation.hero.workspace",
|
|
@@ -3007,13 +3209,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3007
3209
|
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}"],
|
|
3008
3210
|
ownerPropsReferences: ["Workspace"],
|
|
3009
3211
|
standardProps: [
|
|
3212
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3010
3213
|
"useResource: UseResource",
|
|
3011
3214
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3012
3215
|
"usePanelInfo: UsePanelInfo",
|
|
3013
3216
|
"useSessions: UseSessions",
|
|
3014
3217
|
"useSessionStatus: UseSessionStatus",
|
|
3015
3218
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3016
|
-
"
|
|
3219
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3220
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
3017
3221
|
],
|
|
3018
3222
|
keyDomain: "",
|
|
3019
3223
|
hookContext: "",
|
|
@@ -3022,7 +3226,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3022
3226
|
occupants: ["client-ui-workspace WorkspacePicker"],
|
|
3023
3227
|
replaceRisk: "shadows-shipped-ui",
|
|
3024
3228
|
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}",
|
|
3025
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3229
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:262"
|
|
3026
3230
|
},
|
|
3027
3231
|
{
|
|
3028
3232
|
key: "conversation.hero.workspace.directoryFlow",
|
|
@@ -3034,13 +3238,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3034
3238
|
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}"],
|
|
3035
3239
|
ownerPropsReferences: [],
|
|
3036
3240
|
standardProps: [
|
|
3241
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3037
3242
|
"useResource: UseResource",
|
|
3038
3243
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3039
3244
|
"usePanelInfo: UsePanelInfo",
|
|
3040
3245
|
"useSessions: UseSessions",
|
|
3041
3246
|
"useSessionStatus: UseSessionStatus",
|
|
3042
3247
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3043
|
-
"
|
|
3248
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3249
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
3044
3250
|
],
|
|
3045
3251
|
keyDomain: "",
|
|
3046
3252
|
hookContext: "",
|
|
@@ -3049,7 +3255,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3049
3255
|
occupants: ["client-ui-directory-picker-browse BrowseDirectoryFlow", "client-ui-directory-picker-native NativeDirectoryFlow"],
|
|
3050
3256
|
replaceRisk: "shadows-shipped-ui",
|
|
3051
3257
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.hero.workspace.directoryFlow', () => ctx.slots.register(\n { name: 'conversation.hero.workspace.directoryFlow' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3052
|
-
source: "packages/client/ui-workspace/src/client/contract/slots.ts:
|
|
3258
|
+
source: "packages/client/ui-workspace/src/client/contract/slots.ts:119"
|
|
3053
3259
|
},
|
|
3054
3260
|
{
|
|
3055
3261
|
key: "conversation.input.activity",
|
|
@@ -3061,13 +3267,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3061
3267
|
ownerProps: ["/** A toolbar activity hides ordinary accessory controls while expanded; its occupant must release expansion on unmount. */\nexport interface InputActivityOwnerProps extends InputControlOwnerProps {\n /** @param active - whether the occupant needs the toolbar width before the submit action. */\n onActiveChange: (active: boolean) => void\n}"],
|
|
3062
3268
|
ownerPropsReferences: ["InputControlOwnerProps"],
|
|
3063
3269
|
standardProps: [
|
|
3270
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3064
3271
|
"useResource: UseResource",
|
|
3065
3272
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3066
3273
|
"usePanelInfo: UsePanelInfo",
|
|
3067
3274
|
"useSessions: UseSessions",
|
|
3068
3275
|
"useSessionStatus: UseSessionStatus",
|
|
3069
3276
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3070
|
-
"
|
|
3277
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3278
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3071
3279
|
"useChat: UseChat",
|
|
3072
3280
|
"useConversation: UseConversation",
|
|
3073
3281
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3075,6 +3283,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3075
3283
|
"useSession: SessionSnapshotSelector",
|
|
3076
3284
|
"sessionId: SessionId",
|
|
3077
3285
|
"useProjection: UseProjection",
|
|
3286
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3078
3287
|
"useTrajectory: UseTrajectory"
|
|
3079
3288
|
],
|
|
3080
3289
|
keyDomain: "",
|
|
@@ -3084,7 +3293,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3084
3293
|
occupants: ["experimental-client-ui-voice-input VoiceInput"],
|
|
3085
3294
|
replaceRisk: "shadows-shipped-ui",
|
|
3086
3295
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.activity', () => ctx.slots.register(\n { name: 'conversation.input.activity' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3087
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3296
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:280"
|
|
3088
3297
|
},
|
|
3089
3298
|
{
|
|
3090
3299
|
key: "conversation.input.attachments",
|
|
@@ -3100,19 +3309,22 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3100
3309
|
"DraftFileUploads"
|
|
3101
3310
|
],
|
|
3102
3311
|
standardProps: [
|
|
3312
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3103
3313
|
"useResource: UseResource",
|
|
3104
3314
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3105
3315
|
"usePanelInfo: UsePanelInfo",
|
|
3106
3316
|
"useSessions: UseSessions",
|
|
3107
3317
|
"useSessionStatus: UseSessionStatus",
|
|
3108
3318
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3109
|
-
"
|
|
3319
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3320
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3110
3321
|
"useConversation: MaybeSnapshotSelectorHook<ConversationSnapshot>",
|
|
3111
3322
|
"useInput: MaybeSnapshotSelectorHook<InputState>",
|
|
3112
3323
|
"inputActions: InputActions | undefined",
|
|
3113
3324
|
"useSession: MaybeSnapshotSelectorHook<SessionSnapshot>",
|
|
3114
3325
|
"sessionId: SessionId | undefined",
|
|
3115
|
-
"useProjection: UseProjection"
|
|
3326
|
+
"useProjection: UseProjection",
|
|
3327
|
+
"useAccess: (action: RemoteEndpoint) => boolean | undefined"
|
|
3116
3328
|
],
|
|
3117
3329
|
keyDomain: "",
|
|
3118
3330
|
hookContext: "",
|
|
@@ -3121,7 +3333,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3121
3333
|
occupants: ["client-ui-attachment ComposerAttachments"],
|
|
3122
3334
|
replaceRisk: "shadows-shipped-ui",
|
|
3123
3335
|
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}",
|
|
3124
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3336
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:284"
|
|
3125
3337
|
},
|
|
3126
3338
|
{
|
|
3127
3339
|
key: "conversation.input.dock",
|
|
@@ -3152,13 +3364,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3152
3364
|
ownerProps: ["/** Point-in-time owner values for composer extension entries. */\nexport interface InputZone {\n readonly session: SessionSnapshot\n readonly input: InputState\n}"],
|
|
3153
3365
|
ownerPropsReferences: ["InputState", "SessionSnapshot"],
|
|
3154
3366
|
standardProps: [
|
|
3367
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3155
3368
|
"useResource: UseResource",
|
|
3156
3369
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3157
3370
|
"usePanelInfo: UsePanelInfo",
|
|
3158
3371
|
"useSessions: UseSessions",
|
|
3159
3372
|
"useSessionStatus: UseSessionStatus",
|
|
3160
3373
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3161
|
-
"
|
|
3374
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3375
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3162
3376
|
"useChat: UseChat",
|
|
3163
3377
|
"useConversation: UseConversation",
|
|
3164
3378
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3166,6 +3380,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3166
3380
|
"useSession: SessionSnapshotSelector",
|
|
3167
3381
|
"sessionId: SessionId",
|
|
3168
3382
|
"useProjection: UseProjection",
|
|
3383
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3169
3384
|
"useTrajectory: UseTrajectory"
|
|
3170
3385
|
],
|
|
3171
3386
|
keyDomain: "",
|
|
@@ -3180,7 +3395,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3180
3395
|
],
|
|
3181
3396
|
replaceRisk: "none",
|
|
3182
3397
|
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}",
|
|
3183
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3398
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:270"
|
|
3184
3399
|
},
|
|
3185
3400
|
{
|
|
3186
3401
|
key: "conversation.input.left",
|
|
@@ -3211,13 +3426,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3211
3426
|
ownerProps: [],
|
|
3212
3427
|
ownerPropsReferences: [],
|
|
3213
3428
|
standardProps: [
|
|
3429
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3214
3430
|
"useResource: UseResource",
|
|
3215
3431
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3216
3432
|
"usePanelInfo: UsePanelInfo",
|
|
3217
3433
|
"useSessions: UseSessions",
|
|
3218
3434
|
"useSessionStatus: UseSessionStatus",
|
|
3219
3435
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3220
|
-
"
|
|
3436
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3437
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3221
3438
|
"useChat: UseChat",
|
|
3222
3439
|
"useConversation: UseConversation",
|
|
3223
3440
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3225,6 +3442,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3225
3442
|
"useSession: SessionSnapshotSelector",
|
|
3226
3443
|
"sessionId: SessionId",
|
|
3227
3444
|
"useProjection: UseProjection",
|
|
3445
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3228
3446
|
"useTrajectory: UseTrajectory"
|
|
3229
3447
|
],
|
|
3230
3448
|
keyDomain: "",
|
|
@@ -3234,7 +3452,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3234
3452
|
occupants: [],
|
|
3235
3453
|
replaceRisk: "none",
|
|
3236
3454
|
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}",
|
|
3237
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3455
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:276"
|
|
3238
3456
|
},
|
|
3239
3457
|
{
|
|
3240
3458
|
key: "conversation.input.model",
|
|
@@ -3246,13 +3464,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3246
3464
|
ownerProps: ["/** Owner share of the named plan, permission, and model controls. */\nexport interface InputControlOwnerProps {\n /** Whether the composer currently refuses interaction. */\n locked: boolean\n}"],
|
|
3247
3465
|
ownerPropsReferences: [],
|
|
3248
3466
|
standardProps: [
|
|
3467
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3249
3468
|
"useResource: UseResource",
|
|
3250
3469
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3251
3470
|
"usePanelInfo: UsePanelInfo",
|
|
3252
3471
|
"useSessions: UseSessions",
|
|
3253
3472
|
"useSessionStatus: UseSessionStatus",
|
|
3254
3473
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3255
|
-
"
|
|
3474
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3475
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3256
3476
|
"useChat: UseChat",
|
|
3257
3477
|
"useConversation: UseConversation",
|
|
3258
3478
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3260,6 +3480,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3260
3480
|
"useSession: SessionSnapshotSelector",
|
|
3261
3481
|
"sessionId: SessionId",
|
|
3262
3482
|
"useProjection: UseProjection",
|
|
3483
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3263
3484
|
"useTrajectory: UseTrajectory"
|
|
3264
3485
|
],
|
|
3265
3486
|
keyDomain: "",
|
|
@@ -3269,7 +3490,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3269
3490
|
occupants: ["client-ui-model-selection ModelSelect"],
|
|
3270
3491
|
replaceRisk: "shadows-shipped-ui",
|
|
3271
3492
|
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}",
|
|
3272
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3493
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:298"
|
|
3273
3494
|
},
|
|
3274
3495
|
{
|
|
3275
3496
|
key: "conversation.input.overlay",
|
|
@@ -3300,13 +3521,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3300
3521
|
ownerProps: [],
|
|
3301
3522
|
ownerPropsReferences: [],
|
|
3302
3523
|
standardProps: [
|
|
3524
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3303
3525
|
"useResource: UseResource",
|
|
3304
3526
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3305
3527
|
"usePanelInfo: UsePanelInfo",
|
|
3306
3528
|
"useSessions: UseSessions",
|
|
3307
3529
|
"useSessionStatus: UseSessionStatus",
|
|
3308
3530
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3309
|
-
"
|
|
3531
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3532
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3310
3533
|
"useChat: UseChat",
|
|
3311
3534
|
"useConversation: UseConversation",
|
|
3312
3535
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3314,6 +3537,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3314
3537
|
"useSession: SessionSnapshotSelector",
|
|
3315
3538
|
"sessionId: SessionId",
|
|
3316
3539
|
"useProjection: UseProjection",
|
|
3540
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3317
3541
|
"useTrajectory: UseTrajectory"
|
|
3318
3542
|
],
|
|
3319
3543
|
keyDomain: "",
|
|
@@ -3327,7 +3551,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3327
3551
|
],
|
|
3328
3552
|
replaceRisk: "none",
|
|
3329
3553
|
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}",
|
|
3330
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3554
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:272"
|
|
3331
3555
|
},
|
|
3332
3556
|
{
|
|
3333
3557
|
key: "conversation.input.permission",
|
|
@@ -3339,13 +3563,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3339
3563
|
ownerProps: ["/** Owner share of the named plan, permission, and model controls. */\nexport interface InputControlOwnerProps {\n /** Whether the composer currently refuses interaction. */\n locked: boolean\n}"],
|
|
3340
3564
|
ownerPropsReferences: [],
|
|
3341
3565
|
standardProps: [
|
|
3566
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3342
3567
|
"useResource: UseResource",
|
|
3343
3568
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3344
3569
|
"usePanelInfo: UsePanelInfo",
|
|
3345
3570
|
"useSessions: UseSessions",
|
|
3346
3571
|
"useSessionStatus: UseSessionStatus",
|
|
3347
3572
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3348
|
-
"
|
|
3573
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3574
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3349
3575
|
"useChat: UseChat",
|
|
3350
3576
|
"useConversation: UseConversation",
|
|
3351
3577
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3353,6 +3579,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3353
3579
|
"useSession: SessionSnapshotSelector",
|
|
3354
3580
|
"sessionId: SessionId",
|
|
3355
3581
|
"useProjection: UseProjection",
|
|
3582
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3356
3583
|
"useTrajectory: UseTrajectory"
|
|
3357
3584
|
],
|
|
3358
3585
|
keyDomain: "",
|
|
@@ -3362,7 +3589,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3362
3589
|
occupants: ["client-ui-permission-presets PermissionSelect"],
|
|
3363
3590
|
replaceRisk: "shadows-shipped-ui",
|
|
3364
3591
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.input.permission', () => ctx.slots.register(\n { name: 'conversation.input.permission' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
3365
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3592
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:292"
|
|
3366
3593
|
},
|
|
3367
3594
|
{
|
|
3368
3595
|
key: "conversation.input.plan",
|
|
@@ -3374,13 +3601,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3374
3601
|
ownerProps: ["/** Owner share of the named plan, permission, and model controls. */\nexport interface InputControlOwnerProps {\n /** Whether the composer currently refuses interaction. */\n locked: boolean\n}"],
|
|
3375
3602
|
ownerPropsReferences: [],
|
|
3376
3603
|
standardProps: [
|
|
3604
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3377
3605
|
"useResource: UseResource",
|
|
3378
3606
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3379
3607
|
"usePanelInfo: UsePanelInfo",
|
|
3380
3608
|
"useSessions: UseSessions",
|
|
3381
3609
|
"useSessionStatus: UseSessionStatus",
|
|
3382
3610
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3383
|
-
"
|
|
3611
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3612
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3384
3613
|
"useChat: UseChat",
|
|
3385
3614
|
"useConversation: UseConversation",
|
|
3386
3615
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3388,6 +3617,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3388
3617
|
"useSession: SessionSnapshotSelector",
|
|
3389
3618
|
"sessionId: SessionId",
|
|
3390
3619
|
"useProjection: UseProjection",
|
|
3620
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3391
3621
|
"useTrajectory: UseTrajectory"
|
|
3392
3622
|
],
|
|
3393
3623
|
keyDomain: "",
|
|
@@ -3397,7 +3627,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3397
3627
|
occupants: ["client-ui-plan PlanChip"],
|
|
3398
3628
|
replaceRisk: "shadows-shipped-ui",
|
|
3399
3629
|
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}",
|
|
3400
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3630
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:290"
|
|
3401
3631
|
},
|
|
3402
3632
|
{
|
|
3403
3633
|
key: "conversation.input.right",
|
|
@@ -3428,13 +3658,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3428
3658
|
ownerProps: [],
|
|
3429
3659
|
ownerPropsReferences: [],
|
|
3430
3660
|
standardProps: [
|
|
3661
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3431
3662
|
"useResource: UseResource",
|
|
3432
3663
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3433
3664
|
"usePanelInfo: UsePanelInfo",
|
|
3434
3665
|
"useSessions: UseSessions",
|
|
3435
3666
|
"useSessionStatus: UseSessionStatus",
|
|
3436
3667
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3437
|
-
"
|
|
3668
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3669
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3438
3670
|
"useChat: UseChat",
|
|
3439
3671
|
"useConversation: UseConversation",
|
|
3440
3672
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3442,6 +3674,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3442
3674
|
"useSession: SessionSnapshotSelector",
|
|
3443
3675
|
"sessionId: SessionId",
|
|
3444
3676
|
"useProjection: UseProjection",
|
|
3677
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3445
3678
|
"useTrajectory: UseTrajectory"
|
|
3446
3679
|
],
|
|
3447
3680
|
keyDomain: "",
|
|
@@ -3451,46 +3684,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3451
3684
|
occupants: [],
|
|
3452
3685
|
replaceRisk: "none",
|
|
3453
3686
|
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}",
|
|
3454
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3455
|
-
},
|
|
3456
|
-
{
|
|
3457
|
-
key: "conversation.message.images",
|
|
3458
|
-
kind: "single",
|
|
3459
|
-
scope: "session",
|
|
3460
|
-
summary: "Renderer for one consecutive group of durable message images.",
|
|
3461
|
-
doc: "Renderer for one consecutive group of durable message images. The owner\nsupplies image references, an authorized loader, and alignment. A\nregistration replaces the shipped gallery; without one, images are omitted.",
|
|
3462
|
-
registerOptions: [],
|
|
3463
|
-
ownerProps: ["/** Message image group handed to the optional attachment presentation plugin. */\nexport interface MessageImagesOwnerProps {\n /** Durable references or submission-echo previews in source 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 /** Force every image into the compact message-attachment tile size. */\n compact?: boolean\n /** Fixed, uncropped thumbnail for an attachment list row. */\n thumbnail?: boolean\n}"],
|
|
3464
|
-
ownerPropsReferences: [
|
|
3465
|
-
"Message",
|
|
3466
|
-
"MessageImageLoader",
|
|
3467
|
-
"MessageImageSource"
|
|
3468
|
-
],
|
|
3469
|
-
standardProps: [
|
|
3470
|
-
"useResource: UseResource",
|
|
3471
|
-
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3472
|
-
"usePanelInfo: UsePanelInfo",
|
|
3473
|
-
"useSessions: UseSessions",
|
|
3474
|
-
"useSessionStatus: UseSessionStatus",
|
|
3475
|
-
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3476
|
-
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3477
|
-
"useChat: UseChat",
|
|
3478
|
-
"useConversation: UseConversation",
|
|
3479
|
-
"useInput: SnapshotSelectorHook<InputState>",
|
|
3480
|
-
"inputActions: InputActions",
|
|
3481
|
-
"useSession: SessionSnapshotSelector",
|
|
3482
|
-
"sessionId: SessionId",
|
|
3483
|
-
"useProjection: UseProjection",
|
|
3484
|
-
"useTrajectory: UseTrajectory"
|
|
3485
|
-
],
|
|
3486
|
-
keyDomain: "",
|
|
3487
|
-
hookContext: "",
|
|
3488
|
-
slotInject: "",
|
|
3489
|
-
declaredBy: "an entry in 'conversation.chat.flow' (client-ui-chat), so it exists while that entry is mounted",
|
|
3490
|
-
occupants: ["client-ui-attachment MessageImages"],
|
|
3491
|
-
replaceRisk: "shadows-shipped-ui",
|
|
3492
|
-
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}",
|
|
3493
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:390"
|
|
3687
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:278"
|
|
3494
3688
|
},
|
|
3495
3689
|
{
|
|
3496
3690
|
key: "conversation.plan-review.actions",
|
|
@@ -3521,13 +3715,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3521
3715
|
ownerProps: ["/**\n * A request narrowed to the `plan-review` presentation intent: everything the\n * decision card renders and answers with, so the panel never re-reads the\n * request fields. `approve` and `decline` are the asker's own options — an\n * answer must carry one of those labels verbatim — and `plan` is the markdown\n * body under review.\n */\nexport interface PlanReview {\n /** The reviewed question's id, echoed in the answer. */\n id: string\n /** The question text, kept as the card's accessible name. */\n question: string\n /** The plan markdown under review. */\n plan: string\n /** Logged tool invocation used to reopen this plan. */\n callId?: ToolCallId\n /** The option that approves the plan. */\n approve: QuestionOption\n /** The option that declines it; absent when the asker offered no other option. */\n decline?: QuestionOption\n}"],
|
|
3522
3716
|
ownerPropsReferences: [],
|
|
3523
3717
|
standardProps: [
|
|
3718
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3524
3719
|
"useResource: UseResource",
|
|
3525
3720
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3526
3721
|
"usePanelInfo: UsePanelInfo",
|
|
3527
3722
|
"useSessions: UseSessions",
|
|
3528
3723
|
"useSessionStatus: UseSessionStatus",
|
|
3529
3724
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3530
|
-
"
|
|
3725
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3726
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3531
3727
|
"useChat: UseChat",
|
|
3532
3728
|
"useConversation: UseConversation",
|
|
3533
3729
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3535,6 +3731,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3535
3731
|
"useSession: SessionSnapshotSelector",
|
|
3536
3732
|
"sessionId: SessionId",
|
|
3537
3733
|
"useProjection: UseProjection",
|
|
3734
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3538
3735
|
"useTrajectory: UseTrajectory"
|
|
3539
3736
|
],
|
|
3540
3737
|
keyDomain: "",
|
|
@@ -3556,13 +3753,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3556
3753
|
ownerProps: [],
|
|
3557
3754
|
ownerPropsReferences: [],
|
|
3558
3755
|
standardProps: [
|
|
3756
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3559
3757
|
"useResource: UseResource",
|
|
3560
3758
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3561
3759
|
"usePanelInfo: UsePanelInfo",
|
|
3562
3760
|
"useSessions: UseSessions",
|
|
3563
3761
|
"useSessionStatus: UseSessionStatus",
|
|
3564
3762
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3565
|
-
"
|
|
3763
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3764
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3566
3765
|
"useChat: UseChat",
|
|
3567
3766
|
"useConversation: UseConversation",
|
|
3568
3767
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3570,6 +3769,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3570
3769
|
"useSession: SessionSnapshotSelector",
|
|
3571
3770
|
"sessionId: SessionId",
|
|
3572
3771
|
"useProjection: UseProjection",
|
|
3772
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3573
3773
|
"useTrajectory: UseTrajectory"
|
|
3574
3774
|
],
|
|
3575
3775
|
keyDomain: "",
|
|
@@ -3579,7 +3779,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3579
3779
|
occupants: ["client-ui-conversation ConversationSession"],
|
|
3580
3780
|
replaceRisk: "shadows-shipped-ui",
|
|
3581
3781
|
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}",
|
|
3582
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3782
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:206"
|
|
3583
3783
|
},
|
|
3584
3784
|
{
|
|
3585
3785
|
key: "conversation.session.header",
|
|
@@ -3591,13 +3791,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3591
3791
|
ownerProps: [],
|
|
3592
3792
|
ownerPropsReferences: [],
|
|
3593
3793
|
standardProps: [
|
|
3794
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3594
3795
|
"useResource: UseResource",
|
|
3595
3796
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3596
3797
|
"usePanelInfo: UsePanelInfo",
|
|
3597
3798
|
"useSessions: UseSessions",
|
|
3598
3799
|
"useSessionStatus: UseSessionStatus",
|
|
3599
3800
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3600
|
-
"
|
|
3801
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3802
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3601
3803
|
"useChat: UseChat",
|
|
3602
3804
|
"useConversation: UseConversation",
|
|
3603
3805
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3605,6 +3807,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3605
3807
|
"useSession: SessionSnapshotSelector",
|
|
3606
3808
|
"sessionId: SessionId",
|
|
3607
3809
|
"useProjection: UseProjection",
|
|
3810
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3608
3811
|
"useTrajectory: UseTrajectory"
|
|
3609
3812
|
],
|
|
3610
3813
|
keyDomain: "",
|
|
@@ -3614,7 +3817,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3614
3817
|
occupants: ["client-ui-conversation ConversationSessionHeader"],
|
|
3615
3818
|
replaceRisk: "shadows-shipped-ui",
|
|
3616
3819
|
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}",
|
|
3617
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3820
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:214"
|
|
3618
3821
|
},
|
|
3619
3822
|
{
|
|
3620
3823
|
key: "conversation.session.header.actions",
|
|
@@ -3645,13 +3848,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3645
3848
|
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}"],
|
|
3646
3849
|
ownerPropsReferences: [],
|
|
3647
3850
|
standardProps: [
|
|
3851
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3648
3852
|
"useResource: UseResource",
|
|
3649
3853
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3650
3854
|
"usePanelInfo: UsePanelInfo",
|
|
3651
3855
|
"useSessions: UseSessions",
|
|
3652
3856
|
"useSessionStatus: UseSessionStatus",
|
|
3653
3857
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3654
|
-
"
|
|
3858
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3859
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3655
3860
|
"useChat: UseChat",
|
|
3656
3861
|
"useConversation: UseConversation",
|
|
3657
3862
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3659,6 +3864,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3659
3864
|
"useSession: SessionSnapshotSelector",
|
|
3660
3865
|
"sessionId: SessionId",
|
|
3661
3866
|
"useProjection: UseProjection",
|
|
3867
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3662
3868
|
"useTrajectory: UseTrajectory"
|
|
3663
3869
|
],
|
|
3664
3870
|
keyDomain: "",
|
|
@@ -3673,7 +3879,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3673
3879
|
],
|
|
3674
3880
|
replaceRisk: "none",
|
|
3675
3881
|
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}",
|
|
3676
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3882
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:229"
|
|
3677
3883
|
},
|
|
3678
3884
|
{
|
|
3679
3885
|
key: "conversation.session.header.corner",
|
|
@@ -3685,13 +3891,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3685
3891
|
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}"],
|
|
3686
3892
|
ownerPropsReferences: [],
|
|
3687
3893
|
standardProps: [
|
|
3894
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3688
3895
|
"useResource: UseResource",
|
|
3689
3896
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3690
3897
|
"usePanelInfo: UsePanelInfo",
|
|
3691
3898
|
"useSessions: UseSessions",
|
|
3692
3899
|
"useSessionStatus: UseSessionStatus",
|
|
3693
3900
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3694
|
-
"
|
|
3901
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3902
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3695
3903
|
"useChat: UseChat",
|
|
3696
3904
|
"useConversation: UseConversation",
|
|
3697
3905
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3699,6 +3907,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3699
3907
|
"useSession: SessionSnapshotSelector",
|
|
3700
3908
|
"sessionId: SessionId",
|
|
3701
3909
|
"useProjection: UseProjection",
|
|
3910
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3702
3911
|
"useTrajectory: UseTrajectory"
|
|
3703
3912
|
],
|
|
3704
3913
|
keyDomain: "",
|
|
@@ -3708,7 +3917,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3708
3917
|
occupants: ["client-ui-sidebar-right ExpandButton"],
|
|
3709
3918
|
replaceRisk: "shadows-shipped-ui",
|
|
3710
3919
|
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}",
|
|
3711
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3920
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:252"
|
|
3712
3921
|
},
|
|
3713
3922
|
{
|
|
3714
3923
|
key: "conversation.session.header.lineage",
|
|
@@ -3720,13 +3929,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3720
3929
|
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}"],
|
|
3721
3930
|
ownerPropsReferences: ["SessionId"],
|
|
3722
3931
|
standardProps: [
|
|
3932
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3723
3933
|
"useResource: UseResource",
|
|
3724
3934
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3725
3935
|
"usePanelInfo: UsePanelInfo",
|
|
3726
3936
|
"useSessions: UseSessions",
|
|
3727
3937
|
"useSessionStatus: UseSessionStatus",
|
|
3728
3938
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3729
|
-
"
|
|
3939
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3940
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3730
3941
|
"useChat: UseChat",
|
|
3731
3942
|
"useConversation: UseConversation",
|
|
3732
3943
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3734,6 +3945,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3734
3945
|
"useSession: SessionSnapshotSelector",
|
|
3735
3946
|
"sessionId: SessionId",
|
|
3736
3947
|
"useProjection: UseProjection",
|
|
3948
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3737
3949
|
"useTrajectory: UseTrajectory"
|
|
3738
3950
|
],
|
|
3739
3951
|
keyDomain: "",
|
|
@@ -3743,7 +3955,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3743
3955
|
occupants: ["client-ui-subagent SubagentHeaderLineage"],
|
|
3744
3956
|
replaceRisk: "shadows-shipped-ui",
|
|
3745
3957
|
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}",
|
|
3746
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
3958
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:223"
|
|
3747
3959
|
},
|
|
3748
3960
|
{
|
|
3749
3961
|
key: "conversation.session.header.utilities",
|
|
@@ -3774,13 +3986,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3774
3986
|
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}"],
|
|
3775
3987
|
ownerPropsReferences: [],
|
|
3776
3988
|
standardProps: [
|
|
3989
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3777
3990
|
"useResource: UseResource",
|
|
3778
3991
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3779
3992
|
"usePanelInfo: UsePanelInfo",
|
|
3780
3993
|
"useSessions: UseSessions",
|
|
3781
3994
|
"useSessionStatus: UseSessionStatus",
|
|
3782
3995
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3783
|
-
"
|
|
3996
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
3997
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3784
3998
|
"useChat: UseChat",
|
|
3785
3999
|
"useConversation: UseConversation",
|
|
3786
4000
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3788,6 +4002,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3788
4002
|
"useSession: SessionSnapshotSelector",
|
|
3789
4003
|
"sessionId: SessionId",
|
|
3790
4004
|
"useProjection: UseProjection",
|
|
4005
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3791
4006
|
"useTrajectory: UseTrajectory"
|
|
3792
4007
|
],
|
|
3793
4008
|
keyDomain: "",
|
|
@@ -3801,7 +4016,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3801
4016
|
],
|
|
3802
4017
|
replaceRisk: "none",
|
|
3803
4018
|
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}",
|
|
3804
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
4019
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:235"
|
|
3805
4020
|
},
|
|
3806
4021
|
{
|
|
3807
4022
|
key: "conversation.trajectory.images",
|
|
@@ -3817,13 +4032,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3817
4032
|
"MessageImageSource"
|
|
3818
4033
|
],
|
|
3819
4034
|
standardProps: [
|
|
4035
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3820
4036
|
"useResource: UseResource",
|
|
3821
4037
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3822
4038
|
"usePanelInfo: UsePanelInfo",
|
|
3823
4039
|
"useSessions: UseSessions",
|
|
3824
4040
|
"useSessionStatus: UseSessionStatus",
|
|
3825
4041
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3826
|
-
"
|
|
4042
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4043
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3827
4044
|
"useChat: UseChat",
|
|
3828
4045
|
"useConversation: UseConversation",
|
|
3829
4046
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3831,6 +4048,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3831
4048
|
"useSession: SessionSnapshotSelector",
|
|
3832
4049
|
"sessionId: SessionId",
|
|
3833
4050
|
"useProjection: UseProjection",
|
|
4051
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3834
4052
|
"useTrajectory: UseTrajectory"
|
|
3835
4053
|
],
|
|
3836
4054
|
keyDomain: "",
|
|
@@ -3842,6 +4060,57 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3842
4060
|
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}",
|
|
3843
4061
|
source: "packages/client/ui-trajectory/src/client/trajectory-contract.ts:103"
|
|
3844
4062
|
},
|
|
4063
|
+
{
|
|
4064
|
+
key: "conversation.user.text.node",
|
|
4065
|
+
kind: "keyed",
|
|
4066
|
+
scope: "session",
|
|
4067
|
+
summary: "One business-owned inline renderer for a pure JSON text node.",
|
|
4068
|
+
doc: "One business-owned inline renderer for a pure JSON text node.",
|
|
4069
|
+
registerOptions: [{
|
|
4070
|
+
name: "key",
|
|
4071
|
+
requirement: "required",
|
|
4072
|
+
type: "string",
|
|
4073
|
+
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
4074
|
+
}],
|
|
4075
|
+
ownerProps: ["/** JSON-only owner data common to every business text node. */\nexport interface UserTextNodeOwnerProps {\n readonly raw: string\n readonly interactive: boolean\n}"],
|
|
4076
|
+
ownerPropsReferences: [],
|
|
4077
|
+
standardProps: [
|
|
4078
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4079
|
+
"useResource: UseResource",
|
|
4080
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4081
|
+
"usePanelInfo: UsePanelInfo",
|
|
4082
|
+
"useSessions: UseSessions",
|
|
4083
|
+
"useSessionStatus: UseSessionStatus",
|
|
4084
|
+
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4085
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4086
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
4087
|
+
"useChat: UseChat",
|
|
4088
|
+
"useConversation: UseConversation",
|
|
4089
|
+
"useInput: SnapshotSelectorHook<InputState>",
|
|
4090
|
+
"inputActions: InputActions",
|
|
4091
|
+
"useSession: SessionSnapshotSelector",
|
|
4092
|
+
"sessionId: SessionId",
|
|
4093
|
+
"useProjection: UseProjection",
|
|
4094
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
4095
|
+
"useTrajectory: UseTrajectory"
|
|
4096
|
+
],
|
|
4097
|
+
keyDomain: "fixed by the owner's key table { [Id in UserTextId]: { node: UserTextNode<Id> } }, already taken: command, file, folder, secret, session, skill, text",
|
|
4098
|
+
hookContext: "",
|
|
4099
|
+
slotInject: "",
|
|
4100
|
+
declaredBy: "factory 'conversation.user.text' (client-ui-conversation), so it exists while that definition is registered",
|
|
4101
|
+
occupants: [
|
|
4102
|
+
"client-ui-conversation PlainUserText key 'text'",
|
|
4103
|
+
"client-ui-conversation SessionReference key 'session'",
|
|
4104
|
+
"client-ui-goal GoalCommandReference key 'command'",
|
|
4105
|
+
"client-ui-reference FileReference key 'file'",
|
|
4106
|
+
"client-ui-reference FolderReference key 'folder'",
|
|
4107
|
+
"client-ui-secret-mask SecretText key 'secret'",
|
|
4108
|
+
"client-ui-skill SkillReference key 'skill'"
|
|
4109
|
+
],
|
|
4110
|
+
replaceRisk: "shadows-shipped-ui",
|
|
4111
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('conversation.user.text.node', () => ctx.slots.register(\n { name: 'conversation.user.text.node', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4112
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:196"
|
|
4113
|
+
},
|
|
3845
4114
|
{
|
|
3846
4115
|
key: "conversation.view",
|
|
3847
4116
|
kind: "list",
|
|
@@ -3871,13 +4140,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3871
4140
|
ownerProps: ["/** Conversation View entries obtain their data from registered standard hooks. */\nexport interface ConvViewOwnerProps {\n /** Open a tool call's inspector when an inspection target is available. */\n inspectCall: ((callId: string) => void) | undefined\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}"],
|
|
3872
4141
|
ownerPropsReferences: ["ConversationViewRequest"],
|
|
3873
4142
|
standardProps: [
|
|
4143
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3874
4144
|
"useResource: UseResource",
|
|
3875
4145
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3876
4146
|
"usePanelInfo: UsePanelInfo",
|
|
3877
4147
|
"useSessions: UseSessions",
|
|
3878
4148
|
"useSessionStatus: UseSessionStatus",
|
|
3879
4149
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3880
|
-
"
|
|
4150
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4151
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3881
4152
|
"useChat: UseChat",
|
|
3882
4153
|
"useConversation: UseConversation",
|
|
3883
4154
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3885,6 +4156,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3885
4156
|
"useSession: SessionSnapshotSelector",
|
|
3886
4157
|
"sessionId: SessionId",
|
|
3887
4158
|
"useProjection: UseProjection",
|
|
4159
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3888
4160
|
"useTrajectory: UseTrajectory"
|
|
3889
4161
|
],
|
|
3890
4162
|
keyDomain: "",
|
|
@@ -3894,7 +4166,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3894
4166
|
occupants: ["client-ui-chat ChatView id 'chat'", "client-ui-trajectory TrajectoryView id 'trajectory'"],
|
|
3895
4167
|
replaceRisk: "none",
|
|
3896
4168
|
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}",
|
|
3897
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
4169
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:258"
|
|
3898
4170
|
},
|
|
3899
4171
|
{
|
|
3900
4172
|
key: "deliverables.file.actions",
|
|
@@ -3925,13 +4197,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3925
4197
|
ownerProps: ["/** Native file action selected by an explicit user gesture. */\nexport type PresentedAction = 'open' | 'reveal'", "/** Failure feedback for the shared native opening control. */\nexport type PresentedOpenFailure = 'openError' | 'revealError' | null"],
|
|
3926
4198
|
ownerPropsReferences: [],
|
|
3927
4199
|
standardProps: [
|
|
4200
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3928
4201
|
"useResource: UseResource",
|
|
3929
4202
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3930
4203
|
"usePanelInfo: UsePanelInfo",
|
|
3931
4204
|
"useSessions: UseSessions",
|
|
3932
4205
|
"useSessionStatus: UseSessionStatus",
|
|
3933
4206
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3934
|
-
"
|
|
4207
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4208
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3935
4209
|
"useChat: UseChat",
|
|
3936
4210
|
"useConversation: UseConversation",
|
|
3937
4211
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3939,6 +4213,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3939
4213
|
"useSession: SessionSnapshotSelector",
|
|
3940
4214
|
"sessionId: SessionId",
|
|
3941
4215
|
"useProjection: UseProjection",
|
|
4216
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3942
4217
|
"useTrajectory: UseTrajectory"
|
|
3943
4218
|
],
|
|
3944
4219
|
keyDomain: "",
|
|
@@ -3979,13 +4254,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3979
4254
|
ownerProps: ["/** Slot contract table. Owners extend via declaration merging; entries are {@link SlotEntryDef}. */\nexport interface SlotMap {}"],
|
|
3980
4255
|
ownerPropsReferences: ["SlotEntryDef"],
|
|
3981
4256
|
standardProps: [
|
|
4257
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
3982
4258
|
"useResource: UseResource",
|
|
3983
4259
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
3984
4260
|
"usePanelInfo: UsePanelInfo",
|
|
3985
4261
|
"useSessions: UseSessions",
|
|
3986
4262
|
"useSessionStatus: UseSessionStatus",
|
|
3987
4263
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
3988
|
-
"
|
|
4264
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4265
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
3989
4266
|
"useChat: UseChat",
|
|
3990
4267
|
"useConversation: UseConversation",
|
|
3991
4268
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -3993,6 +4270,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
3993
4270
|
"useSession: SessionSnapshotSelector",
|
|
3994
4271
|
"sessionId: SessionId",
|
|
3995
4272
|
"useProjection: UseProjection",
|
|
4273
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
3996
4274
|
"useTrajectory: UseTrajectory"
|
|
3997
4275
|
],
|
|
3998
4276
|
keyDomain: "",
|
|
@@ -4019,13 +4297,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4019
4297
|
ownerProps: [],
|
|
4020
4298
|
ownerPropsReferences: [],
|
|
4021
4299
|
standardProps: [
|
|
4300
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4022
4301
|
"useResource: UseResource",
|
|
4023
4302
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4024
4303
|
"usePanelInfo: UsePanelInfo",
|
|
4025
4304
|
"useSessions: UseSessions",
|
|
4026
4305
|
"useSessionStatus: UseSessionStatus",
|
|
4027
4306
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4028
|
-
"
|
|
4307
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4308
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4029
4309
|
],
|
|
4030
4310
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), already taken: conversation",
|
|
4031
4311
|
hookContext: "",
|
|
@@ -4050,19 +4330,22 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4050
4330
|
ownerProps: [],
|
|
4051
4331
|
ownerPropsReferences: [],
|
|
4052
4332
|
standardProps: [
|
|
4333
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4053
4334
|
"useResource: UseResource",
|
|
4054
4335
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4055
4336
|
"usePanelInfo: UsePanelInfo",
|
|
4056
4337
|
"useSessions: UseSessions",
|
|
4057
4338
|
"useSessionStatus: UseSessionStatus",
|
|
4058
4339
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4059
|
-
"
|
|
4340
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4341
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
4060
4342
|
"useConversation: MaybeSnapshotSelectorHook<ConversationSnapshot>",
|
|
4061
4343
|
"useInput: MaybeSnapshotSelectorHook<InputState>",
|
|
4062
4344
|
"inputActions: InputActions | undefined",
|
|
4063
4345
|
"useSession: MaybeSnapshotSelectorHook<SessionSnapshot>",
|
|
4064
4346
|
"sessionId: SessionId | undefined",
|
|
4065
|
-
"useProjection: UseProjection"
|
|
4347
|
+
"useProjection: UseProjection",
|
|
4348
|
+
"useAccess: (action: RemoteEndpoint) => boolean | undefined"
|
|
4066
4349
|
],
|
|
4067
4350
|
keyDomain: "",
|
|
4068
4351
|
hookContext: "",
|
|
@@ -4071,7 +4354,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4071
4354
|
occupants: ["client-ui-conversation ConversationRoot"],
|
|
4072
4355
|
replaceRisk: "shadows-shipped-ui",
|
|
4073
4356
|
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}",
|
|
4074
|
-
source: "packages/client/ui-conversation/src/client/contract/slots.ts:
|
|
4357
|
+
source: "packages/client/ui-conversation/src/client/contract/slots.ts:204"
|
|
4075
4358
|
},
|
|
4076
4359
|
{
|
|
4077
4360
|
key: "plugins.add.actions",
|
|
@@ -4102,13 +4385,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4102
4385
|
ownerProps: ["/** Add-plugin menu actions, independent of any selected bundle or Session. */\nexport interface PluginAddActionsProps {\n /** Close the add-plugin menu before starting the contributed action. */\n readonly onDismiss: () => void\n}"],
|
|
4103
4386
|
ownerPropsReferences: [],
|
|
4104
4387
|
standardProps: [
|
|
4388
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4105
4389
|
"useResource: UseResource",
|
|
4106
4390
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4107
4391
|
"usePanelInfo: UsePanelInfo",
|
|
4108
4392
|
"useSessions: UseSessions",
|
|
4109
4393
|
"useSessionStatus: UseSessionStatus",
|
|
4110
4394
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4111
|
-
"
|
|
4395
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4396
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4112
4397
|
],
|
|
4113
4398
|
keyDomain: "",
|
|
4114
4399
|
hookContext: "",
|
|
@@ -4117,7 +4402,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4117
4402
|
occupants: ["client-ui-agent-preset CreatePluginMenuItem id 'create-plugin'"],
|
|
4118
4403
|
replaceRisk: "none",
|
|
4119
4404
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.add.actions', () => ctx.slots.register(\n { name: 'plugins.add.actions', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4120
|
-
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:
|
|
4405
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:118"
|
|
4121
4406
|
},
|
|
4122
4407
|
{
|
|
4123
4408
|
key: "plugins.bundle.activation",
|
|
@@ -4134,13 +4419,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4134
4419
|
ownerProps: ["/** One user-requested bundle activation and navigation to its configuration page. */\nexport interface PluginActivationOwnerProps {\n readonly packageName: string\n /** Dismiss guidance for this activation. */\n readonly onDismiss: () => void\n /** Dismiss guidance and open this bundle's detail page. */\n readonly onOpenDetails: () => void\n}"],
|
|
4135
4420
|
ownerPropsReferences: [],
|
|
4136
4421
|
standardProps: [
|
|
4422
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4137
4423
|
"useResource: UseResource",
|
|
4138
4424
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4139
4425
|
"usePanelInfo: UsePanelInfo",
|
|
4140
4426
|
"useSessions: UseSessions",
|
|
4141
4427
|
"useSessionStatus: UseSessionStatus",
|
|
4142
4428
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4143
|
-
"
|
|
4429
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4430
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4144
4431
|
],
|
|
4145
4432
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), already taken: @deepseek-ai/dsh-experimental-voice-input-bundle",
|
|
4146
4433
|
hookContext: "",
|
|
@@ -4149,7 +4436,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4149
4436
|
occupants: ["experimental-client-ui-voice-input VoiceSetupPrompt key '@deepseek-ai/dsh-experimental-voice-input-bundle'"],
|
|
4150
4437
|
replaceRisk: "shadows-shipped-ui",
|
|
4151
4438
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.bundle.activation', () => ctx.slots.register(\n { name: 'plugins.bundle.activation', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4152
|
-
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:
|
|
4439
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:126"
|
|
4153
4440
|
},
|
|
4154
4441
|
{
|
|
4155
4442
|
key: "plugins.bundle.config",
|
|
@@ -4166,13 +4453,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4166
4453
|
ownerProps: ["/** The view the page asks a configuration entry for. */\nexport interface PluginConfigViewProps {\n /** `summary` renders the one-liner alone, as text or inline nodes; `page` renders the form with its save control. */\n readonly view: 'summary' | 'page'\n /** Host-owned configuration values and write actions for this page's entry. */\n readonly form?: ConfigPageForm | undefined\n}"],
|
|
4167
4454
|
ownerPropsReferences: ["ConfigPageForm"],
|
|
4168
4455
|
standardProps: [
|
|
4456
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4169
4457
|
"useResource: UseResource",
|
|
4170
4458
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4171
4459
|
"usePanelInfo: UsePanelInfo",
|
|
4172
4460
|
"useSessions: UseSessions",
|
|
4173
4461
|
"useSessionStatus: UseSessionStatus",
|
|
4174
4462
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4175
|
-
"
|
|
4463
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4464
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4176
4465
|
],
|
|
4177
4466
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), already taken: @deepseek-ai/dsh-experimental-cot-translation-bundle, @deepseek-ai/dsh-experimental-voice-input-bundle",
|
|
4178
4467
|
hookContext: "",
|
|
@@ -4181,7 +4470,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4181
4470
|
occupants: ["experimental-client-ui-cot-translation TranslationSettings key '@deepseek-ai/dsh-experimental-cot-translation-bundle'", "experimental-client-ui-voice-input VoicePreparation key '@deepseek-ai/dsh-experimental-voice-input-bundle'"],
|
|
4182
4471
|
replaceRisk: "shadows-shipped-ui",
|
|
4183
4472
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.bundle.config', () => ctx.slots.register(\n { name: 'plugins.bundle.config', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4184
|
-
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:
|
|
4473
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:142"
|
|
4185
4474
|
},
|
|
4186
4475
|
{
|
|
4187
4476
|
key: "plugins.detail.actions",
|
|
@@ -4212,13 +4501,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4212
4501
|
ownerProps: ["/** The owner props every detail contribution is rendered with. */\nexport interface PluginDetailProps {\n /** The subject of the open page; an entry renders null for a subject it has nothing for. */\n readonly subject: PluginsSubject\n}"],
|
|
4213
4502
|
ownerPropsReferences: ["PluginsSubject"],
|
|
4214
4503
|
standardProps: [
|
|
4504
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4215
4505
|
"useResource: UseResource",
|
|
4216
4506
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4217
4507
|
"usePanelInfo: UsePanelInfo",
|
|
4218
4508
|
"useSessions: UseSessions",
|
|
4219
4509
|
"useSessionStatus: UseSessionStatus",
|
|
4220
4510
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4221
|
-
"
|
|
4511
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4512
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4222
4513
|
],
|
|
4223
4514
|
keyDomain: "",
|
|
4224
4515
|
hookContext: "",
|
|
@@ -4227,7 +4518,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4227
4518
|
occupants: [],
|
|
4228
4519
|
replaceRisk: "none",
|
|
4229
4520
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.detail.actions', () => ctx.slots.register(\n { name: 'plugins.detail.actions', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4230
|
-
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:
|
|
4521
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:156"
|
|
4231
4522
|
},
|
|
4232
4523
|
{
|
|
4233
4524
|
key: "plugins.detail.badge",
|
|
@@ -4258,13 +4549,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4258
4549
|
ownerProps: ["/** The owner props every detail contribution is rendered with. */\nexport interface PluginDetailProps {\n /** The subject of the open page; an entry renders null for a subject it has nothing for. */\n readonly subject: PluginsSubject\n}"],
|
|
4259
4550
|
ownerPropsReferences: ["PluginsSubject"],
|
|
4260
4551
|
standardProps: [
|
|
4552
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4261
4553
|
"useResource: UseResource",
|
|
4262
4554
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4263
4555
|
"usePanelInfo: UsePanelInfo",
|
|
4264
4556
|
"useSessions: UseSessions",
|
|
4265
4557
|
"useSessionStatus: UseSessionStatus",
|
|
4266
4558
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4267
|
-
"
|
|
4559
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4560
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4268
4561
|
],
|
|
4269
4562
|
keyDomain: "",
|
|
4270
4563
|
hookContext: "",
|
|
@@ -4273,7 +4566,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4273
4566
|
occupants: [],
|
|
4274
4567
|
replaceRisk: "none",
|
|
4275
4568
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.detail.badge', () => ctx.slots.register(\n { name: 'plugins.detail.badge', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4276
|
-
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:
|
|
4569
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:161"
|
|
4277
4570
|
},
|
|
4278
4571
|
{
|
|
4279
4572
|
key: "plugins.detail.section",
|
|
@@ -4304,13 +4597,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4304
4597
|
ownerProps: ["/** The owner props every detail contribution is rendered with. */\nexport interface PluginDetailProps {\n /** The subject of the open page; an entry renders null for a subject it has nothing for. */\n readonly subject: PluginsSubject\n}"],
|
|
4305
4598
|
ownerPropsReferences: ["PluginsSubject"],
|
|
4306
4599
|
standardProps: [
|
|
4600
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4307
4601
|
"useResource: UseResource",
|
|
4308
4602
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4309
4603
|
"usePanelInfo: UsePanelInfo",
|
|
4310
4604
|
"useSessions: UseSessions",
|
|
4311
4605
|
"useSessionStatus: UseSessionStatus",
|
|
4312
4606
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4313
|
-
"
|
|
4607
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4608
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4314
4609
|
],
|
|
4315
4610
|
keyDomain: "",
|
|
4316
4611
|
hookContext: "",
|
|
@@ -4319,7 +4614,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4319
4614
|
occupants: [],
|
|
4320
4615
|
replaceRisk: "none",
|
|
4321
4616
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.detail.section', () => ctx.slots.register(\n { name: 'plugins.detail.section', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4322
|
-
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:
|
|
4617
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:168"
|
|
4323
4618
|
},
|
|
4324
4619
|
{
|
|
4325
4620
|
key: "plugins.item",
|
|
@@ -4350,13 +4645,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4350
4645
|
ownerProps: ["/** The view the page asks a configuration entry for. */\nexport interface PluginConfigViewProps {\n /** `summary` renders the one-liner alone, as text or inline nodes; `page` renders the form with its save control. */\n readonly view: 'summary' | 'page'\n /** Host-owned configuration values and write actions for this page's entry. */\n readonly form?: ConfigPageForm | undefined\n}"],
|
|
4351
4646
|
ownerPropsReferences: ["ConfigPageForm"],
|
|
4352
4647
|
standardProps: [
|
|
4648
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4353
4649
|
"useResource: UseResource",
|
|
4354
4650
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4355
4651
|
"usePanelInfo: UsePanelInfo",
|
|
4356
4652
|
"useSessions: UseSessions",
|
|
4357
4653
|
"useSessionStatus: UseSessionStatus",
|
|
4358
4654
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4359
|
-
"
|
|
4655
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4656
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4360
4657
|
],
|
|
4361
4658
|
keyDomain: "",
|
|
4362
4659
|
hookContext: "",
|
|
@@ -4370,7 +4667,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4370
4667
|
],
|
|
4371
4668
|
replaceRisk: "none",
|
|
4372
4669
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.item', () => ctx.slots.register(\n { name: 'plugins.item', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4373
|
-
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:
|
|
4670
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:136"
|
|
4374
4671
|
},
|
|
4375
4672
|
{
|
|
4376
4673
|
key: "plugins.row.config",
|
|
@@ -4387,13 +4684,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4387
4684
|
ownerProps: ["/** The view the page asks a configuration entry for. */\nexport interface PluginConfigViewProps {\n /** `summary` renders the one-liner alone, as text or inline nodes; `page` renders the form with its save control. */\n readonly view: 'summary' | 'page'\n /** Host-owned configuration values and write actions for this page's entry. */\n readonly form?: ConfigPageForm | undefined\n}"],
|
|
4388
4685
|
ownerPropsReferences: ["ConfigPageForm"],
|
|
4389
4686
|
standardProps: [
|
|
4687
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4390
4688
|
"useResource: UseResource",
|
|
4391
4689
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4392
4690
|
"usePanelInfo: UsePanelInfo",
|
|
4393
4691
|
"useSessions: UseSessions",
|
|
4394
4692
|
"useSessionStatus: UseSessionStatus",
|
|
4395
4693
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4396
|
-
"
|
|
4694
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4695
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4397
4696
|
],
|
|
4398
4697
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
4399
4698
|
hookContext: "",
|
|
@@ -4402,7 +4701,55 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4402
4701
|
occupants: [],
|
|
4403
4702
|
replaceRisk: "none",
|
|
4404
4703
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.row.config', () => ctx.slots.register(\n { name: 'plugins.row.config', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4405
|
-
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:
|
|
4704
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:150"
|
|
4705
|
+
},
|
|
4706
|
+
{
|
|
4707
|
+
key: "plugins.tab",
|
|
4708
|
+
kind: "list",
|
|
4709
|
+
scope: "root",
|
|
4710
|
+
summary: "Tabs after the page's own Installed tab, such as Discover: `label` names the tab and `order` places it.",
|
|
4711
|
+
doc: "Tabs after the page's own Installed tab, such as Discover: `label` names the tab and `order` places it. The\npage renders the selected entry under its header and tabs; the entry draws its own content and installs\nthrough the owner's `install`.",
|
|
4712
|
+
registerOptions: [
|
|
4713
|
+
{
|
|
4714
|
+
name: "id",
|
|
4715
|
+
requirement: "required",
|
|
4716
|
+
type: "string",
|
|
4717
|
+
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."
|
|
4718
|
+
},
|
|
4719
|
+
{
|
|
4720
|
+
name: "order",
|
|
4721
|
+
requirement: "optional",
|
|
4722
|
+
type: "number",
|
|
4723
|
+
doc: "Position among the entries, ascending (default 0)."
|
|
4724
|
+
},
|
|
4725
|
+
{
|
|
4726
|
+
name: "label",
|
|
4727
|
+
requirement: "optional",
|
|
4728
|
+
type: "string | (() => string)",
|
|
4729
|
+
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."
|
|
4730
|
+
}
|
|
4731
|
+
],
|
|
4732
|
+
ownerProps: ["/** Owner props of a page tab another plugin contributes, such as Discover. */\nexport interface PluginTabProps {\n /**\n * Install an exact version the person already confirmed: the page's install dialog opens at its check and progress\n * screens, without the spec form, and names the plugin and version above the spec.\n * @param target - the spec, optional registry, and display text.\n */\n readonly install: (target: PluginTabInstall) => void\n /**\n * Switch to the Installed tab and open a bundle's page.\n * @param packageName - npm package name of the bundle.\n */\n readonly openPackage: (packageName: string) => void\n}"],
|
|
4733
|
+
ownerPropsReferences: ["PluginTabInstall"],
|
|
4734
|
+
standardProps: [
|
|
4735
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4736
|
+
"useResource: UseResource",
|
|
4737
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4738
|
+
"usePanelInfo: UsePanelInfo",
|
|
4739
|
+
"useSessions: UseSessions",
|
|
4740
|
+
"useSessionStatus: UseSessionStatus",
|
|
4741
|
+
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4742
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4743
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4744
|
+
],
|
|
4745
|
+
keyDomain: "",
|
|
4746
|
+
hookContext: "",
|
|
4747
|
+
slotInject: "",
|
|
4748
|
+
declaredBy: "an entry in 'main' (client-ui-plugin-manager), so it exists while that entry is mounted",
|
|
4749
|
+
occupants: ["client-ui-plugin-market DiscoverSection id 'discover'"],
|
|
4750
|
+
replaceRisk: "none",
|
|
4751
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('plugins.tab', () => ctx.slots.register(\n { name: 'plugins.tab', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
4752
|
+
source: "packages/client/ui-plugin-manager/src/client/slot-contract.ts:124"
|
|
4406
4753
|
},
|
|
4407
4754
|
{
|
|
4408
4755
|
key: "rightbar",
|
|
@@ -4414,13 +4761,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4414
4761
|
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}"],
|
|
4415
4762
|
ownerPropsReferences: [],
|
|
4416
4763
|
standardProps: [
|
|
4764
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4417
4765
|
"useResource: UseResource",
|
|
4418
4766
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4419
4767
|
"usePanelInfo: UsePanelInfo",
|
|
4420
4768
|
"useSessions: UseSessions",
|
|
4421
4769
|
"useSessionStatus: UseSessionStatus",
|
|
4422
4770
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4423
|
-
"
|
|
4771
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4772
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4424
4773
|
],
|
|
4425
4774
|
keyDomain: "",
|
|
4426
4775
|
hookContext: "",
|
|
@@ -4441,13 +4790,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4441
4790
|
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}", "/** Identity of one open tab; distinct copies of one content share `contentId`, never `TabId`. */\nexport type TabId = Branded<'TabId'>"],
|
|
4442
4791
|
ownerPropsReferences: ["Branded"],
|
|
4443
4792
|
standardProps: [
|
|
4793
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4444
4794
|
"useResource: UseResource",
|
|
4445
4795
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4446
4796
|
"usePanelInfo: UsePanelInfo",
|
|
4447
4797
|
"useSessions: UseSessions",
|
|
4448
4798
|
"useSessionStatus: UseSessionStatus",
|
|
4449
4799
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4450
|
-
"
|
|
4800
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4801
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
4451
4802
|
"useChat: UseChat",
|
|
4452
4803
|
"useConversation: UseConversation",
|
|
4453
4804
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -4455,6 +4806,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4455
4806
|
"useSession: SessionSnapshotSelector",
|
|
4456
4807
|
"sessionId: SessionId",
|
|
4457
4808
|
"useProjection: UseProjection",
|
|
4809
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
4458
4810
|
"useTrajectory: UseTrajectory"
|
|
4459
4811
|
],
|
|
4460
4812
|
keyDomain: "",
|
|
@@ -4476,13 +4828,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4476
4828
|
ownerProps: ["/** Root owner share: the shell supplies nothing — the frame is inject-assembled. */\nexport interface RootOwnerProps { children?: never }"],
|
|
4477
4829
|
ownerPropsReferences: [],
|
|
4478
4830
|
standardProps: [
|
|
4831
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4479
4832
|
"useResource: UseResource",
|
|
4480
4833
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4481
4834
|
"usePanelInfo: UsePanelInfo",
|
|
4482
4835
|
"useSessions: UseSessions",
|
|
4483
4836
|
"useSessionStatus: UseSessionStatus",
|
|
4484
4837
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4485
|
-
"
|
|
4838
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4839
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4486
4840
|
],
|
|
4487
4841
|
keyDomain: "",
|
|
4488
4842
|
hookContext: "",
|
|
@@ -4522,13 +4876,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4522
4876
|
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}"],
|
|
4523
4877
|
ownerPropsReferences: [],
|
|
4524
4878
|
standardProps: [
|
|
4879
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4525
4880
|
"useResource: UseResource",
|
|
4526
4881
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4527
4882
|
"usePanelInfo: UsePanelInfo",
|
|
4528
4883
|
"useSessions: UseSessions",
|
|
4529
4884
|
"useSessionStatus: UseSessionStatus",
|
|
4530
4885
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4531
|
-
"
|
|
4886
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4887
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4532
4888
|
],
|
|
4533
4889
|
keyDomain: "",
|
|
4534
4890
|
hookContext: "",
|
|
@@ -4549,13 +4905,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4549
4905
|
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}"],
|
|
4550
4906
|
ownerPropsReferences: [],
|
|
4551
4907
|
standardProps: [
|
|
4908
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4552
4909
|
"useResource: UseResource",
|
|
4553
4910
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4554
4911
|
"usePanelInfo: UsePanelInfo",
|
|
4555
4912
|
"useSessions: UseSessions",
|
|
4556
4913
|
"useSessionStatus: UseSessionStatus",
|
|
4557
4914
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4558
|
-
"
|
|
4915
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4916
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4559
4917
|
],
|
|
4560
4918
|
keyDomain: "",
|
|
4561
4919
|
hookContext: "",
|
|
@@ -4595,13 +4953,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4595
4953
|
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}"],
|
|
4596
4954
|
ownerPropsReferences: [],
|
|
4597
4955
|
standardProps: [
|
|
4956
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4598
4957
|
"useResource: UseResource",
|
|
4599
4958
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4600
4959
|
"usePanelInfo: UsePanelInfo",
|
|
4601
4960
|
"useSessions: UseSessions",
|
|
4602
4961
|
"useSessionStatus: UseSessionStatus",
|
|
4603
4962
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4604
|
-
"
|
|
4963
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
4964
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4605
4965
|
],
|
|
4606
4966
|
keyDomain: "",
|
|
4607
4967
|
hookContext: "",
|
|
@@ -4635,13 +4995,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4635
4995
|
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}"],
|
|
4636
4996
|
ownerPropsReferences: [],
|
|
4637
4997
|
standardProps: [
|
|
4998
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4638
4999
|
"useResource: UseResource",
|
|
4639
5000
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4640
5001
|
"usePanelInfo: UsePanelInfo",
|
|
4641
5002
|
"useSessions: UseSessions",
|
|
4642
5003
|
"useSessionStatus: UseSessionStatus",
|
|
4643
5004
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4644
|
-
"
|
|
5005
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5006
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4645
5007
|
],
|
|
4646
5008
|
keyDomain: "",
|
|
4647
5009
|
hookContext: "",
|
|
@@ -4662,13 +5024,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4662
5024
|
ownerProps: ["/** Sidebar launcher geometry and settings navigation. */\nexport interface SettingsLauncherOwnerProps {\n /** Whether the sidebar shows labels. */\n wide: boolean\n /** Whether the settings dialog covers the sidebar; a launcher may treat a false-to-true edge as one Settings entry. */\n settingsOpen: boolean\n /** Effective Settings key labels and accessible combination; omitted when unbound. */\n settingsShortcut?: { readonly keys: readonly string[]; readonly aria?: string | undefined }\n /** Open the settings panel. */\n openSettings: () => void\n /** @param id - registered onboarding editor to open explicitly. */\n openOnboarding: (id: string) => void\n}"],
|
|
4663
5025
|
ownerPropsReferences: [],
|
|
4664
5026
|
standardProps: [
|
|
5027
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4665
5028
|
"useResource: UseResource",
|
|
4666
5029
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4667
5030
|
"usePanelInfo: UsePanelInfo",
|
|
4668
5031
|
"useSessions: UseSessions",
|
|
4669
5032
|
"useSessionStatus: UseSessionStatus",
|
|
4670
5033
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4671
|
-
"
|
|
5034
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5035
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4672
5036
|
],
|
|
4673
5037
|
keyDomain: "",
|
|
4674
5038
|
hookContext: "",
|
|
@@ -4708,13 +5072,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4708
5072
|
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}"],
|
|
4709
5073
|
ownerPropsReferences: [],
|
|
4710
5074
|
standardProps: [
|
|
5075
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4711
5076
|
"useResource: UseResource",
|
|
4712
5077
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4713
5078
|
"usePanelInfo: UsePanelInfo",
|
|
4714
5079
|
"useSessions: UseSessions",
|
|
4715
5080
|
"useSessionStatus: UseSessionStatus",
|
|
4716
5081
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4717
|
-
"
|
|
5082
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5083
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4718
5084
|
],
|
|
4719
5085
|
keyDomain: "",
|
|
4720
5086
|
hookContext: "",
|
|
@@ -4740,13 +5106,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4740
5106
|
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}"],
|
|
4741
5107
|
ownerPropsReferences: ["ProviderDirectoryEntry"],
|
|
4742
5108
|
standardProps: [
|
|
5109
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4743
5110
|
"useResource: UseResource",
|
|
4744
5111
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4745
5112
|
"usePanelInfo: UsePanelInfo",
|
|
4746
5113
|
"useSessions: UseSessions",
|
|
4747
5114
|
"useSessionStatus: UseSessionStatus",
|
|
4748
5115
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4749
|
-
"
|
|
5116
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5117
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4750
5118
|
],
|
|
4751
5119
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
4752
5120
|
hookContext: "",
|
|
@@ -4767,13 +5135,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4767
5135
|
ownerProps: [],
|
|
4768
5136
|
ownerPropsReferences: [],
|
|
4769
5137
|
standardProps: [
|
|
5138
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4770
5139
|
"useResource: UseResource",
|
|
4771
5140
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4772
5141
|
"usePanelInfo: UsePanelInfo",
|
|
4773
5142
|
"useSessions: UseSessions",
|
|
4774
5143
|
"useSessionStatus: UseSessionStatus",
|
|
4775
5144
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4776
|
-
"
|
|
5145
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5146
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4777
5147
|
],
|
|
4778
5148
|
keyDomain: "",
|
|
4779
5149
|
hookContext: "",
|
|
@@ -4813,13 +5183,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4813
5183
|
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 /** User explicitly reopened this step outside first-run onboarding. */\n explicit?: boolean\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}"],
|
|
4814
5184
|
ownerPropsReferences: [],
|
|
4815
5185
|
standardProps: [
|
|
5186
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4816
5187
|
"useResource: UseResource",
|
|
4817
5188
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4818
5189
|
"usePanelInfo: UsePanelInfo",
|
|
4819
5190
|
"useSessions: UseSessions",
|
|
4820
5191
|
"useSessionStatus: UseSessionStatus",
|
|
4821
5192
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4822
|
-
"
|
|
5193
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5194
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4823
5195
|
],
|
|
4824
5196
|
keyDomain: "",
|
|
4825
5197
|
hookContext: "",
|
|
@@ -4859,13 +5231,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4859
5231
|
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}"],
|
|
4860
5232
|
ownerPropsReferences: [],
|
|
4861
5233
|
standardProps: [
|
|
5234
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4862
5235
|
"useResource: UseResource",
|
|
4863
5236
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4864
5237
|
"usePanelInfo: UsePanelInfo",
|
|
4865
5238
|
"useSessions: UseSessions",
|
|
4866
5239
|
"useSessionStatus: UseSessionStatus",
|
|
4867
5240
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4868
|
-
"
|
|
5241
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5242
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4869
5243
|
],
|
|
4870
5244
|
keyDomain: "",
|
|
4871
5245
|
hookContext: "",
|
|
@@ -4905,13 +5279,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4905
5279
|
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}"],
|
|
4906
5280
|
ownerPropsReferences: [],
|
|
4907
5281
|
standardProps: [
|
|
5282
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4908
5283
|
"useResource: UseResource",
|
|
4909
5284
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4910
5285
|
"usePanelInfo: UsePanelInfo",
|
|
4911
5286
|
"useSessions: UseSessions",
|
|
4912
5287
|
"useSessionStatus: UseSessionStatus",
|
|
4913
5288
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4914
|
-
"
|
|
5289
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5290
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4915
5291
|
],
|
|
4916
5292
|
keyDomain: "",
|
|
4917
5293
|
hookContext: "",
|
|
@@ -4938,13 +5314,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4938
5314
|
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}"],
|
|
4939
5315
|
ownerPropsReferences: [],
|
|
4940
5316
|
standardProps: [
|
|
5317
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4941
5318
|
"useResource: UseResource",
|
|
4942
5319
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4943
5320
|
"usePanelInfo: UsePanelInfo",
|
|
4944
5321
|
"useSessions: UseSessions",
|
|
4945
5322
|
"useSessionStatus: UseSessionStatus",
|
|
4946
5323
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4947
|
-
"
|
|
5324
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5325
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4948
5326
|
],
|
|
4949
5327
|
keyDomain: "",
|
|
4950
5328
|
hookContext: "",
|
|
@@ -4965,13 +5343,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4965
5343
|
ownerProps: [],
|
|
4966
5344
|
ownerPropsReferences: [],
|
|
4967
5345
|
standardProps: [
|
|
5346
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4968
5347
|
"useResource: UseResource",
|
|
4969
5348
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4970
5349
|
"usePanelInfo: UsePanelInfo",
|
|
4971
5350
|
"useSessions: UseSessions",
|
|
4972
5351
|
"useSessionStatus: UseSessionStatus",
|
|
4973
5352
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
4974
|
-
"
|
|
5353
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5354
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
4975
5355
|
],
|
|
4976
5356
|
keyDomain: "",
|
|
4977
5357
|
hookContext: "",
|
|
@@ -4992,13 +5372,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
4992
5372
|
ownerProps: [],
|
|
4993
5373
|
ownerPropsReferences: [],
|
|
4994
5374
|
standardProps: [
|
|
5375
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
4995
5376
|
"useResource: UseResource",
|
|
4996
5377
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
4997
5378
|
"usePanelInfo: UsePanelInfo",
|
|
4998
5379
|
"useSessions: UseSessions",
|
|
4999
5380
|
"useSessionStatus: UseSessionStatus",
|
|
5000
5381
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5001
|
-
"
|
|
5382
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5383
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5002
5384
|
],
|
|
5003
5385
|
keyDomain: "",
|
|
5004
5386
|
hookContext: "",
|
|
@@ -5038,13 +5420,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5038
5420
|
ownerProps: [],
|
|
5039
5421
|
ownerPropsReferences: [],
|
|
5040
5422
|
standardProps: [
|
|
5423
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5041
5424
|
"useResource: UseResource",
|
|
5042
5425
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5043
5426
|
"usePanelInfo: UsePanelInfo",
|
|
5044
5427
|
"useSessions: UseSessions",
|
|
5045
5428
|
"useSessionStatus: UseSessionStatus",
|
|
5046
5429
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5047
|
-
"
|
|
5430
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5431
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5048
5432
|
],
|
|
5049
5433
|
keyDomain: "",
|
|
5050
5434
|
hookContext: "",
|
|
@@ -5056,6 +5440,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5056
5440
|
"client-ui-schedule ScheduleDeleteToast id 'schedule.delete-toast'",
|
|
5057
5441
|
"client-ui-settings-account DesktopOnboardingEntry id 'desktop-onboarding'",
|
|
5058
5442
|
"client-ui-settings-account AccountPlatformHost id 'account.platform-page'",
|
|
5443
|
+
"client-ui-settings-general HostReleasePrompt id 'host-release-change'",
|
|
5059
5444
|
"client-ui-settings-session-log UploadToast id 'session-log-upload-toast'",
|
|
5060
5445
|
"client-ui-shortcuts ShortcutReference id 'shortcuts'",
|
|
5061
5446
|
"client-ui-workspace SessionRenameDialog id 'workspace.session-rename'",
|
|
@@ -5081,13 +5466,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5081
5466
|
ownerProps: ["/** Owner currency of one quota notice offered to the frame-wide chain. */\nexport interface QuotaNoticeOwnerProps {\n /** Stable failure code retained in the Session log. */\n code: QuotaNoticeCode\n /** Provider-neutral notice copy in the active locale. */\n message: string\n /** Take the notice down. */\n dismiss: () => void\n /**\n * Prevent later quota failures from replacing this notice. Dismissal clears\n * all holds; releasing the last hold resumes future notices without replay.\n * Callers must release on unmount.\n * @returns idempotent release that cannot clear another hold.\n */\n keepOpen: () => () => void\n}"],
|
|
5082
5467
|
ownerPropsReferences: ["QuotaNoticeCode"],
|
|
5083
5468
|
standardProps: [
|
|
5469
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5084
5470
|
"useResource: UseResource",
|
|
5085
5471
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5086
5472
|
"usePanelInfo: UsePanelInfo",
|
|
5087
5473
|
"useSessions: UseSessions",
|
|
5088
5474
|
"useSessionStatus: UseSessionStatus",
|
|
5089
5475
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5090
|
-
"
|
|
5476
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5477
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5091
5478
|
],
|
|
5092
5479
|
keyDomain: "",
|
|
5093
5480
|
hookContext: "",
|
|
@@ -5096,7 +5483,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5096
5483
|
occupants: ["client-ui-settings-account AccountQuotaNotice"],
|
|
5097
5484
|
replaceRisk: "none",
|
|
5098
5485
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('shell.quota-notice', () => ctx.slots.register(\n { name: 'shell.quota-notice', select: owner => null },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
5099
|
-
source: "packages/client/ui-chat/src/client/contract/slots.ts:
|
|
5486
|
+
source: "packages/client/ui-chat/src/client/contract/slots.ts:449"
|
|
5100
5487
|
},
|
|
5101
5488
|
{
|
|
5102
5489
|
key: "sidebar",
|
|
@@ -5108,13 +5495,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5108
5495
|
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}"],
|
|
5109
5496
|
ownerPropsReferences: [],
|
|
5110
5497
|
standardProps: [
|
|
5498
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5111
5499
|
"useResource: UseResource",
|
|
5112
5500
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5113
5501
|
"usePanelInfo: UsePanelInfo",
|
|
5114
5502
|
"useSessions: UseSessions",
|
|
5115
5503
|
"useSessionStatus: UseSessionStatus",
|
|
5116
5504
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5117
|
-
"
|
|
5505
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5506
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5118
5507
|
],
|
|
5119
5508
|
keyDomain: "",
|
|
5120
5509
|
hookContext: "",
|
|
@@ -5135,13 +5524,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5135
5524
|
ownerProps: ["/** Geometry supplied to the sidebar brand-mark occupant. */\nexport interface SidebarBrandMarkOwnerProps {\n /** Requested square edge in pixels. */\n size: number\n}"],
|
|
5136
5525
|
ownerPropsReferences: [],
|
|
5137
5526
|
standardProps: [
|
|
5527
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5138
5528
|
"useResource: UseResource",
|
|
5139
5529
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5140
5530
|
"usePanelInfo: UsePanelInfo",
|
|
5141
5531
|
"useSessions: UseSessions",
|
|
5142
5532
|
"useSessionStatus: UseSessionStatus",
|
|
5143
5533
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5144
|
-
"
|
|
5534
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5535
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5145
5536
|
],
|
|
5146
5537
|
keyDomain: "",
|
|
5147
5538
|
hookContext: "",
|
|
@@ -5162,13 +5553,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5162
5553
|
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}"],
|
|
5163
5554
|
ownerPropsReferences: [],
|
|
5164
5555
|
standardProps: [
|
|
5556
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5165
5557
|
"useResource: UseResource",
|
|
5166
5558
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5167
5559
|
"usePanelInfo: UsePanelInfo",
|
|
5168
5560
|
"useSessions: UseSessions",
|
|
5169
5561
|
"useSessionStatus: UseSessionStatus",
|
|
5170
5562
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5171
|
-
"
|
|
5563
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5564
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5172
5565
|
],
|
|
5173
5566
|
keyDomain: "",
|
|
5174
5567
|
hookContext: "",
|
|
@@ -5189,13 +5582,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5189
5582
|
ownerProps: [],
|
|
5190
5583
|
ownerPropsReferences: [],
|
|
5191
5584
|
standardProps: [
|
|
5585
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5192
5586
|
"useResource: UseResource",
|
|
5193
5587
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5194
5588
|
"usePanelInfo: UsePanelInfo",
|
|
5195
5589
|
"useSessions: UseSessions",
|
|
5196
5590
|
"useSessionStatus: UseSessionStatus",
|
|
5197
5591
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5198
|
-
"
|
|
5592
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5593
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5199
5594
|
"useChat: UseChat",
|
|
5200
5595
|
"useConversation: UseConversation",
|
|
5201
5596
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5203,6 +5598,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5203
5598
|
"useSession: SessionSnapshotSelector",
|
|
5204
5599
|
"sessionId: SessionId",
|
|
5205
5600
|
"useProjection: UseProjection",
|
|
5601
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5206
5602
|
"useTrajectory: UseTrajectory"
|
|
5207
5603
|
],
|
|
5208
5604
|
keyDomain: "",
|
|
@@ -5243,13 +5639,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5243
5639
|
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}"],
|
|
5244
5640
|
ownerPropsReferences: [],
|
|
5245
5641
|
standardProps: [
|
|
5642
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5246
5643
|
"useResource: UseResource",
|
|
5247
5644
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5248
5645
|
"usePanelInfo: UsePanelInfo",
|
|
5249
5646
|
"useSessions: UseSessions",
|
|
5250
5647
|
"useSessionStatus: UseSessionStatus",
|
|
5251
5648
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5252
|
-
"
|
|
5649
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5650
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5253
5651
|
],
|
|
5254
5652
|
keyDomain: "",
|
|
5255
5653
|
hookContext: "",
|
|
@@ -5289,13 +5687,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5289
5687
|
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}"],
|
|
5290
5688
|
ownerPropsReferences: [],
|
|
5291
5689
|
standardProps: [
|
|
5690
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5292
5691
|
"useResource: UseResource",
|
|
5293
5692
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5294
5693
|
"usePanelInfo: UsePanelInfo",
|
|
5295
5694
|
"useSessions: UseSessions",
|
|
5296
5695
|
"useSessionStatus: UseSessionStatus",
|
|
5297
5696
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5298
|
-
"
|
|
5697
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5698
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5299
5699
|
],
|
|
5300
5700
|
keyDomain: "",
|
|
5301
5701
|
hookContext: "",
|
|
@@ -5321,13 +5721,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5321
5721
|
ownerProps: [],
|
|
5322
5722
|
ownerPropsReferences: [],
|
|
5323
5723
|
standardProps: [
|
|
5724
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5324
5725
|
"useResource: UseResource",
|
|
5325
5726
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5326
5727
|
"usePanelInfo: UsePanelInfo",
|
|
5327
5728
|
"useSessions: UseSessions",
|
|
5328
5729
|
"useSessionStatus: UseSessionStatus",
|
|
5329
5730
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5330
|
-
"
|
|
5731
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5732
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5331
5733
|
"useChat: UseChat",
|
|
5332
5734
|
"useConversation: UseConversation",
|
|
5333
5735
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5335,6 +5737,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5335
5737
|
"useSession: SessionSnapshotSelector",
|
|
5336
5738
|
"sessionId: SessionId",
|
|
5337
5739
|
"useProjection: UseProjection",
|
|
5740
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5338
5741
|
"useTrajectory: UseTrajectory"
|
|
5339
5742
|
],
|
|
5340
5743
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
@@ -5372,13 +5775,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5372
5775
|
ownerProps: [],
|
|
5373
5776
|
ownerPropsReferences: [],
|
|
5374
5777
|
standardProps: [
|
|
5778
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5375
5779
|
"useResource: UseResource",
|
|
5376
5780
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5377
5781
|
"usePanelInfo: UsePanelInfo",
|
|
5378
5782
|
"useSessions: UseSessions",
|
|
5379
5783
|
"useSessionStatus: UseSessionStatus",
|
|
5380
5784
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5381
|
-
"
|
|
5785
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5786
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5382
5787
|
"useChat: UseChat",
|
|
5383
5788
|
"useConversation: UseConversation",
|
|
5384
5789
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5386,6 +5791,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5386
5791
|
"useSession: SessionSnapshotSelector",
|
|
5387
5792
|
"sessionId: SessionId",
|
|
5388
5793
|
"useProjection: UseProjection",
|
|
5794
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5389
5795
|
"useTrajectory: UseTrajectory"
|
|
5390
5796
|
],
|
|
5391
5797
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
@@ -5420,13 +5826,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5420
5826
|
ownerProps: ["/** Content and viewing inputs shared by document bodies and nested PDF presentation. */\nexport interface DocumentBodyOwner {\n /** Observe a file read by this renderer. @param address - complete file resource address. */\n readonly addResource: (address: string) => void\n /** Replace this renderer's dependencies. @param addresses - complete file resource addresses. */\n readonly setResources: (addresses: readonly string[]) => void\n /** Original file address, also readable through the standard useResource hook. */\n readonly resourceAddress: string\n /** Ordinary file content or a renderer-owned loading request; text accumulates until eof. */\n readonly content: DocumentContent\n /** The document toolbar's current wrapping preference. */\n readonly wrap: boolean\n /** Report a renderer-owned scrollport; passing `null` restores the shared body as the owner. */\n readonly scrollportRef: RefCallback<HTMLElement>\n}"],
|
|
5421
5827
|
ownerPropsReferences: ["DocumentContent"],
|
|
5422
5828
|
standardProps: [
|
|
5829
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5423
5830
|
"useResource: UseResource",
|
|
5424
5831
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5425
5832
|
"usePanelInfo: UsePanelInfo",
|
|
5426
5833
|
"useSessions: UseSessions",
|
|
5427
5834
|
"useSessionStatus: UseSessionStatus",
|
|
5428
5835
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5429
|
-
"
|
|
5836
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5837
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5430
5838
|
"useChat: UseChat",
|
|
5431
5839
|
"useConversation: UseConversation",
|
|
5432
5840
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5434,6 +5842,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5434
5842
|
"useSession: SessionSnapshotSelector",
|
|
5435
5843
|
"sessionId: SessionId",
|
|
5436
5844
|
"useProjection: UseProjection",
|
|
5845
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5437
5846
|
"useTrajectory: UseTrajectory"
|
|
5438
5847
|
],
|
|
5439
5848
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
@@ -5469,13 +5878,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5469
5878
|
ownerProps: ["/**\n * Ordinary file contents, or a request for the selected renderer to load its content.\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> }\n | {\n readonly kind: 'renderer'\n /** Changes on reload or implementation replacement; retained contents belong to one revision. */\n readonly revision: number\n /** Report the displayed source version; stale revisions cannot update the owner. @param version - loaded source version. */\n readonly loaded: (version: string) => void\n /** End a failed load; a later file change can start another revision. */\n readonly failed: () => void\n /** Cancel the current load and start a new revision. */\n readonly reload: () => void\n }"],
|
|
5470
5879
|
ownerPropsReferences: ["DocumentTextPage"],
|
|
5471
5880
|
standardProps: [
|
|
5881
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5472
5882
|
"useResource: UseResource",
|
|
5473
5883
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5474
5884
|
"usePanelInfo: UsePanelInfo",
|
|
5475
5885
|
"useSessions: UseSessions",
|
|
5476
5886
|
"useSessionStatus: UseSessionStatus",
|
|
5477
5887
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5478
|
-
"
|
|
5888
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5889
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5479
5890
|
"useChat: UseChat",
|
|
5480
5891
|
"useConversation: UseConversation",
|
|
5481
5892
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5483,6 +5894,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5483
5894
|
"useSession: SessionSnapshotSelector",
|
|
5484
5895
|
"sessionId: SessionId",
|
|
5485
5896
|
"useProjection: UseProjection",
|
|
5897
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5486
5898
|
"useTrajectory: UseTrajectory"
|
|
5487
5899
|
],
|
|
5488
5900
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
@@ -5523,13 +5935,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5523
5935
|
ownerProps: [],
|
|
5524
5936
|
ownerPropsReferences: [],
|
|
5525
5937
|
standardProps: [
|
|
5938
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5526
5939
|
"useResource: UseResource",
|
|
5527
5940
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5528
5941
|
"usePanelInfo: UsePanelInfo",
|
|
5529
5942
|
"useSessions: UseSessions",
|
|
5530
5943
|
"useSessionStatus: UseSessionStatus",
|
|
5531
5944
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5532
|
-
"
|
|
5945
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5946
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5533
5947
|
"useChat: UseChat",
|
|
5534
5948
|
"useConversation: UseConversation",
|
|
5535
5949
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5537,6 +5951,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5537
5951
|
"useSession: SessionSnapshotSelector",
|
|
5538
5952
|
"sessionId: SessionId",
|
|
5539
5953
|
"useProjection: UseProjection",
|
|
5954
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5540
5955
|
"useTrajectory: UseTrajectory"
|
|
5541
5956
|
],
|
|
5542
5957
|
keyDomain: "",
|
|
@@ -5563,13 +5978,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5563
5978
|
ownerProps: ["/** Content and viewing inputs shared by document bodies and nested PDF presentation. */\nexport interface DocumentBodyOwner {\n /** Observe a file read by this renderer. @param address - complete file resource address. */\n readonly addResource: (address: string) => void\n /** Replace this renderer's dependencies. @param addresses - complete file resource addresses. */\n readonly setResources: (addresses: readonly string[]) => void\n /** Original file address, also readable through the standard useResource hook. */\n readonly resourceAddress: string\n /** Ordinary file content or a renderer-owned loading request; text accumulates until eof. */\n readonly content: DocumentContent\n /** The document toolbar's current wrapping preference. */\n readonly wrap: boolean\n /** Report a renderer-owned scrollport; passing `null` restores the shared body as the owner. */\n readonly scrollportRef: RefCallback<HTMLElement>\n}"],
|
|
5564
5979
|
ownerPropsReferences: ["DocumentContent"],
|
|
5565
5980
|
standardProps: [
|
|
5981
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5566
5982
|
"useResource: UseResource",
|
|
5567
5983
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5568
5984
|
"usePanelInfo: UsePanelInfo",
|
|
5569
5985
|
"useSessions: UseSessions",
|
|
5570
5986
|
"useSessionStatus: UseSessionStatus",
|
|
5571
5987
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5572
|
-
"
|
|
5988
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
5989
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5573
5990
|
"useChat: UseChat",
|
|
5574
5991
|
"useConversation: UseConversation",
|
|
5575
5992
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5577,6 +5994,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5577
5994
|
"useSession: SessionSnapshotSelector",
|
|
5578
5995
|
"sessionId: SessionId",
|
|
5579
5996
|
"useProjection: UseProjection",
|
|
5997
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5580
5998
|
"useTrajectory: UseTrajectory"
|
|
5581
5999
|
],
|
|
5582
6000
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
@@ -5617,13 +6035,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5617
6035
|
ownerProps: [],
|
|
5618
6036
|
ownerPropsReferences: [],
|
|
5619
6037
|
standardProps: [
|
|
6038
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5620
6039
|
"useResource: UseResource",
|
|
5621
6040
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5622
6041
|
"usePanelInfo: UsePanelInfo",
|
|
5623
6042
|
"useSessions: UseSessions",
|
|
5624
6043
|
"useSessionStatus: UseSessionStatus",
|
|
5625
6044
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5626
|
-
"
|
|
6045
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6046
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5627
6047
|
"useChat: UseChat",
|
|
5628
6048
|
"useConversation: UseConversation",
|
|
5629
6049
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5631,6 +6051,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5631
6051
|
"useSession: SessionSnapshotSelector",
|
|
5632
6052
|
"sessionId: SessionId",
|
|
5633
6053
|
"useProjection: UseProjection",
|
|
6054
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5634
6055
|
"useTrajectory: UseTrajectory"
|
|
5635
6056
|
],
|
|
5636
6057
|
keyDomain: "",
|
|
@@ -5671,13 +6092,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5671
6092
|
ownerProps: [],
|
|
5672
6093
|
ownerPropsReferences: [],
|
|
5673
6094
|
standardProps: [
|
|
6095
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5674
6096
|
"useResource: UseResource",
|
|
5675
6097
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5676
6098
|
"usePanelInfo: UsePanelInfo",
|
|
5677
6099
|
"useSessions: UseSessions",
|
|
5678
6100
|
"useSessionStatus: UseSessionStatus",
|
|
5679
6101
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5680
|
-
"
|
|
6102
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6103
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5681
6104
|
"useChat: UseChat",
|
|
5682
6105
|
"useConversation: UseConversation",
|
|
5683
6106
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5685,6 +6108,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5685
6108
|
"useSession: SessionSnapshotSelector",
|
|
5686
6109
|
"sessionId: SessionId",
|
|
5687
6110
|
"useProjection: UseProjection",
|
|
6111
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5688
6112
|
"useTrajectory: UseTrajectory"
|
|
5689
6113
|
],
|
|
5690
6114
|
keyDomain: "",
|
|
@@ -5711,13 +6135,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5711
6135
|
ownerProps: [],
|
|
5712
6136
|
ownerPropsReferences: [],
|
|
5713
6137
|
standardProps: [
|
|
6138
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5714
6139
|
"useResource: UseResource",
|
|
5715
6140
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5716
6141
|
"usePanelInfo: UsePanelInfo",
|
|
5717
6142
|
"useSessions: UseSessions",
|
|
5718
6143
|
"useSessionStatus: UseSessionStatus",
|
|
5719
6144
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5720
|
-
"
|
|
6145
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6146
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5721
6147
|
"useChat: UseChat",
|
|
5722
6148
|
"useConversation: UseConversation",
|
|
5723
6149
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5725,6 +6151,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5725
6151
|
"useSession: SessionSnapshotSelector",
|
|
5726
6152
|
"sessionId: SessionId",
|
|
5727
6153
|
"useProjection: UseProjection",
|
|
6154
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5728
6155
|
"useTrajectory: UseTrajectory"
|
|
5729
6156
|
],
|
|
5730
6157
|
keyDomain: "",
|
|
@@ -5751,13 +6178,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5751
6178
|
ownerProps: ["/** Resolved guide copy and entry identity supplied to a provider's card renderer. */\nexport interface SidebarRightGuideEntryOwnerProps {\n readonly entryId: string\n readonly kind: string\n readonly title: string\n readonly description?: string\n}"],
|
|
5752
6179
|
ownerPropsReferences: [],
|
|
5753
6180
|
standardProps: [
|
|
6181
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5754
6182
|
"useResource: UseResource",
|
|
5755
6183
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5756
6184
|
"usePanelInfo: UsePanelInfo",
|
|
5757
6185
|
"useSessions: UseSessions",
|
|
5758
6186
|
"useSessionStatus: UseSessionStatus",
|
|
5759
6187
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5760
|
-
"
|
|
6188
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6189
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5761
6190
|
"useChat: UseChat",
|
|
5762
6191
|
"useConversation: UseConversation",
|
|
5763
6192
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5765,6 +6194,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5765
6194
|
"useSession: SessionSnapshotSelector",
|
|
5766
6195
|
"sessionId: SessionId",
|
|
5767
6196
|
"useProjection: UseProjection",
|
|
6197
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5768
6198
|
"useTrajectory: UseTrajectory"
|
|
5769
6199
|
],
|
|
5770
6200
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
@@ -5805,13 +6235,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5805
6235
|
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}"],
|
|
5806
6236
|
ownerPropsReferences: ["TabRecord"],
|
|
5807
6237
|
standardProps: [
|
|
6238
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5808
6239
|
"useResource: UseResource",
|
|
5809
6240
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5810
6241
|
"usePanelInfo: UsePanelInfo",
|
|
5811
6242
|
"useSessions: UseSessions",
|
|
5812
6243
|
"useSessionStatus: UseSessionStatus",
|
|
5813
6244
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5814
|
-
"
|
|
6245
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6246
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
5815
6247
|
"useChat: UseChat",
|
|
5816
6248
|
"useConversation: UseConversation",
|
|
5817
6249
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -5819,6 +6251,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5819
6251
|
"useSession: SessionSnapshotSelector",
|
|
5820
6252
|
"sessionId: SessionId",
|
|
5821
6253
|
"useProjection: UseProjection",
|
|
6254
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
5822
6255
|
"useTrajectory: UseTrajectory"
|
|
5823
6256
|
],
|
|
5824
6257
|
keyDomain: "",
|
|
@@ -5859,13 +6292,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5859
6292
|
ownerProps: ["/**\n * Owner share of the two Session-row schedule seats. Both receive only the\n * row's Session identity: the occupant reads that Session's own scheduled\n * tasks, and reading them activates nothing.\n */\nexport interface SessionRowScheduleOwnerProps {\n /** Session this row shows; the occupant addresses its own data by this id. */\n readonly sessionId: SessionId\n}"],
|
|
5860
6293
|
ownerPropsReferences: ["SessionId"],
|
|
5861
6294
|
standardProps: [
|
|
6295
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5862
6296
|
"useResource: UseResource",
|
|
5863
6297
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5864
6298
|
"usePanelInfo: UsePanelInfo",
|
|
5865
6299
|
"useSessions: UseSessions",
|
|
5866
6300
|
"useSessionStatus: UseSessionStatus",
|
|
5867
6301
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5868
|
-
"
|
|
6302
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6303
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5869
6304
|
],
|
|
5870
6305
|
keyDomain: "",
|
|
5871
6306
|
hookContext: "",
|
|
@@ -5874,7 +6309,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5874
6309
|
occupants: ["client-ui-schedule SessionScheduleHover id 'schedule-tasks'"],
|
|
5875
6310
|
replaceRisk: "none",
|
|
5876
6311
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.session.row.hover', () => ctx.slots.register(\n { name: 'sidebar.session.row.hover', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
5877
|
-
source: "packages/client/ui-workspace/src/client/contract/slots.ts:
|
|
6312
|
+
source: "packages/client/ui-workspace/src/client/contract/slots.ts:136"
|
|
5878
6313
|
},
|
|
5879
6314
|
{
|
|
5880
6315
|
key: "sidebar.session.row.leading",
|
|
@@ -5905,13 +6340,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5905
6340
|
ownerProps: ["/**\n * Owner share of the two Session-row schedule seats. Both receive only the\n * row's Session identity: the occupant reads that Session's own scheduled\n * tasks, and reading them activates nothing.\n */\nexport interface SessionRowScheduleOwnerProps {\n /** Session this row shows; the occupant addresses its own data by this id. */\n readonly sessionId: SessionId\n}"],
|
|
5906
6341
|
ownerPropsReferences: ["SessionId"],
|
|
5907
6342
|
standardProps: [
|
|
6343
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5908
6344
|
"useResource: UseResource",
|
|
5909
6345
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5910
6346
|
"usePanelInfo: UsePanelInfo",
|
|
5911
6347
|
"useSessions: UseSessions",
|
|
5912
6348
|
"useSessionStatus: UseSessionStatus",
|
|
5913
6349
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5914
|
-
"
|
|
6350
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6351
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5915
6352
|
],
|
|
5916
6353
|
keyDomain: "",
|
|
5917
6354
|
hookContext: "",
|
|
@@ -5920,7 +6357,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5920
6357
|
occupants: ["client-ui-schedule SessionScheduleMark id 'schedule-mark'"],
|
|
5921
6358
|
replaceRisk: "none",
|
|
5922
6359
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.session.row.leading', () => ctx.slots.register(\n { name: 'sidebar.session.row.leading', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
5923
|
-
source: "packages/client/ui-workspace/src/client/contract/slots.ts:
|
|
6360
|
+
source: "packages/client/ui-workspace/src/client/contract/slots.ts:131"
|
|
5924
6361
|
},
|
|
5925
6362
|
{
|
|
5926
6363
|
key: "sidebar.settings",
|
|
@@ -5932,13 +6369,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5932
6369
|
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}"],
|
|
5933
6370
|
ownerPropsReferences: [],
|
|
5934
6371
|
standardProps: [
|
|
6372
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5935
6373
|
"useResource: UseResource",
|
|
5936
6374
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5937
6375
|
"usePanelInfo: UsePanelInfo",
|
|
5938
6376
|
"useSessions: UseSessions",
|
|
5939
6377
|
"useSessionStatus: UseSessionStatus",
|
|
5940
6378
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5941
|
-
"
|
|
6379
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6380
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5942
6381
|
],
|
|
5943
6382
|
keyDomain: "",
|
|
5944
6383
|
hookContext: "",
|
|
@@ -5959,13 +6398,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5959
6398
|
ownerProps: [],
|
|
5960
6399
|
ownerPropsReferences: [],
|
|
5961
6400
|
standardProps: [
|
|
6401
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5962
6402
|
"useResource: UseResource",
|
|
5963
6403
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5964
6404
|
"usePanelInfo: UsePanelInfo",
|
|
5965
6405
|
"useSessions: UseSessions",
|
|
5966
6406
|
"useSessionStatus: UseSessionStatus",
|
|
5967
6407
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5968
|
-
"
|
|
6408
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6409
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5969
6410
|
],
|
|
5970
6411
|
keyDomain: "",
|
|
5971
6412
|
hookContext: "",
|
|
@@ -5986,13 +6427,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
5986
6427
|
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}"],
|
|
5987
6428
|
ownerPropsReferences: [],
|
|
5988
6429
|
standardProps: [
|
|
6430
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
5989
6431
|
"useResource: UseResource",
|
|
5990
6432
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
5991
6433
|
"usePanelInfo: UsePanelInfo",
|
|
5992
6434
|
"useSessions: UseSessions",
|
|
5993
6435
|
"useSessionStatus: UseSessionStatus",
|
|
5994
6436
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
5995
|
-
"
|
|
6437
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6438
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
5996
6439
|
],
|
|
5997
6440
|
keyDomain: "",
|
|
5998
6441
|
hookContext: "",
|
|
@@ -6013,13 +6456,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6013
6456
|
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}"],
|
|
6014
6457
|
ownerPropsReferences: [],
|
|
6015
6458
|
standardProps: [
|
|
6459
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
6016
6460
|
"useResource: UseResource",
|
|
6017
6461
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
6018
6462
|
"usePanelInfo: UsePanelInfo",
|
|
6019
6463
|
"useSessions: UseSessions",
|
|
6020
6464
|
"useSessionStatus: UseSessionStatus",
|
|
6021
6465
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
6022
|
-
"
|
|
6466
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6467
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
6023
6468
|
],
|
|
6024
6469
|
keyDomain: "",
|
|
6025
6470
|
hookContext: "",
|
|
@@ -6028,14 +6473,14 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6028
6473
|
occupants: ["client-ui-directory-picker-browse BrowseDirectoryFlow", "client-ui-directory-picker-native NativeDirectoryFlow"],
|
|
6029
6474
|
replaceRisk: "shadows-shipped-ui",
|
|
6030
6475
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.workspaces.directoryFlow', () => ctx.slots.register(\n { name: 'sidebar.workspaces.directoryFlow' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
6031
|
-
source: "packages/client/ui-workspace/src/client/contract/slots.ts:
|
|
6476
|
+
source: "packages/client/ui-workspace/src/client/contract/slots.ts:121"
|
|
6032
6477
|
},
|
|
6033
6478
|
{
|
|
6034
6479
|
key: "sidebar.workspaces.session.menu.item",
|
|
6035
6480
|
kind: "list",
|
|
6036
6481
|
scope: "root",
|
|
6037
6482
|
summary: "The rows of one Session's \"...\" menu, in ascending `order`.",
|
|
6038
|
-
doc: "The rows of one Session's \"...\" menu, in ascending `order`. ui-workspace\nregisters the shipped rows here — `pin` (100), `rename` (200), `fork`\n(300), `archive` (400) — so a plugin row is placed
|
|
6483
|
+
doc: "The rows of one Session's \"...\" menu, in ascending `order`. ui-workspace\nregisters the shipped rows here — `pin` (100), `rename` (200), `fork`\n(300), `archive` (400), and `session-id` (450) — so a plugin row is placed\nby its own `order` among them. Use a package-namespaced `id`; reusing a shipped id at\nanother `priority` shadows that row. Each entry renders one\n`role=\"menuitem\"` `<button>` (the shipped rows use ui-primitives'\n`MenuItemButton`, which adds the host styling and `separatorBefore`),\ndecides its own visibility from its own state, and dismisses the menu\nthrough the injected `useMenuOpenState` hook after acting; the list's\nkeyboard walk and focus return read the DOM, so any such button joins\nthem. Labels come from the contributing package's locale namespace.",
|
|
6039
6484
|
registerOptions: [
|
|
6040
6485
|
{
|
|
6041
6486
|
name: "id",
|
|
@@ -6059,13 +6504,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6059
6504
|
ownerProps: ["/** Owner share of one Session row action occurrence: the row the action belongs to. */\nexport interface SessionRowOwnerProps {\n /** Session the row shows. */\n sessionId: SessionId\n /** Row display title: persisted title, or empty when the Session has none. */\n displayTitle: string\n}"],
|
|
6060
6505
|
ownerPropsReferences: ["SessionId"],
|
|
6061
6506
|
standardProps: [
|
|
6507
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
6062
6508
|
"useResource: UseResource",
|
|
6063
6509
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
6064
6510
|
"usePanelInfo: UsePanelInfo",
|
|
6065
6511
|
"useSessions: UseSessions",
|
|
6066
6512
|
"useSessionStatus: UseSessionStatus",
|
|
6067
6513
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
6068
|
-
"
|
|
6514
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6515
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
6069
6516
|
],
|
|
6070
6517
|
keyDomain: "",
|
|
6071
6518
|
hookContext: "MenuOpenState",
|
|
@@ -6075,11 +6522,12 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6075
6522
|
"client-ui-workspace PinSessionMenuItem id 'pin'",
|
|
6076
6523
|
"client-ui-workspace RenameSessionMenuItem id 'rename'",
|
|
6077
6524
|
"client-ui-workspace ForkSessionMenuItem id 'fork'",
|
|
6078
|
-
"client-ui-workspace ArchiveSessionMenuItem id 'archive'"
|
|
6525
|
+
"client-ui-workspace ArchiveSessionMenuItem id 'archive'",
|
|
6526
|
+
"client-ui-workspace SessionIdMenuItem id 'session-id'"
|
|
6079
6527
|
],
|
|
6080
6528
|
replaceRisk: "none",
|
|
6081
|
-
example: "return {\n inject: ['slots'],\n apply(ctx) {\n const copyLabel = 'Copy
|
|
6082
|
-
source: "packages/client/ui-workspace/src/client/contract/slots.ts:
|
|
6529
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n const copyLabel = 'Copy session title' // Localize in the contributing package.\n ctx.slots.inject('sidebar.workspaces.session.menu.item', () => ctx.slots.register(\n { name: 'sidebar.workspaces.session.menu.item', id: 'copy-session-title', order: 500 },\n ({ displayTitle, useMenuOpenState }) => {\n const [, setMenuOpen] = useMenuOpenState()\n return React.createElement(\n 'button',\n {\n type: 'button', role: 'menuitem',\n onClick: () => { setMenuOpen(false); void navigator.clipboard.writeText(displayTitle) },\n },\n copyLabel,\n )\n },\n ))\n },\n}",
|
|
6530
|
+
source: "packages/client/ui-workspace/src/client/contract/slots.ts:171"
|
|
6083
6531
|
},
|
|
6084
6532
|
{
|
|
6085
6533
|
key: "sidebar.workspaces.session.row.action",
|
|
@@ -6110,13 +6558,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6110
6558
|
ownerProps: ["/** Owner share of one Session row action occurrence: the row the action belongs to. */\nexport interface SessionRowOwnerProps {\n /** Session the row shows. */\n sessionId: SessionId\n /** Row display title: persisted title, or empty when the Session has none. */\n displayTitle: string\n}"],
|
|
6111
6559
|
ownerPropsReferences: ["SessionId"],
|
|
6112
6560
|
standardProps: [
|
|
6561
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
6113
6562
|
"useResource: UseResource",
|
|
6114
6563
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
6115
6564
|
"usePanelInfo: UsePanelInfo",
|
|
6116
6565
|
"useSessions: UseSessions",
|
|
6117
6566
|
"useSessionStatus: UseSessionStatus",
|
|
6118
6567
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
6119
|
-
"
|
|
6568
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6569
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
6120
6570
|
],
|
|
6121
6571
|
keyDomain: "",
|
|
6122
6572
|
hookContext: "",
|
|
@@ -6125,7 +6575,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6125
6575
|
occupants: ["client-ui-workspace ArchiveSessionRowButton id 'archive'", "client-ui-workspace PinSessionRowButton id 'pin'"],
|
|
6126
6576
|
replaceRisk: "none",
|
|
6127
6577
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('sidebar.workspaces.session.row.action', () => ctx.slots.register(\n { name: 'sidebar.workspaces.session.row.action', id: 'my-entry', order: 100, label: 'My entry' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
6128
|
-
source: "packages/client/ui-workspace/src/client/contract/slots.ts:
|
|
6578
|
+
source: "packages/client/ui-workspace/src/client/contract/slots.ts:189"
|
|
6129
6579
|
},
|
|
6130
6580
|
{
|
|
6131
6581
|
key: "tool.call.images",
|
|
@@ -6137,13 +6587,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6137
6587
|
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}"],
|
|
6138
6588
|
ownerPropsReferences: ["MessageImageLoader", "MessageImageSource"],
|
|
6139
6589
|
standardProps: [
|
|
6590
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
6140
6591
|
"useResource: UseResource",
|
|
6141
6592
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
6142
6593
|
"usePanelInfo: UsePanelInfo",
|
|
6143
6594
|
"useSessions: UseSessions",
|
|
6144
6595
|
"useSessionStatus: UseSessionStatus",
|
|
6145
6596
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
6146
|
-
"
|
|
6597
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6598
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
6147
6599
|
"useChat: UseChat",
|
|
6148
6600
|
"useConversation: UseConversation",
|
|
6149
6601
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -6151,6 +6603,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6151
6603
|
"useSession: SessionSnapshotSelector",
|
|
6152
6604
|
"sessionId: SessionId",
|
|
6153
6605
|
"useProjection: UseProjection",
|
|
6606
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
6154
6607
|
"useTrajectory: UseTrajectory"
|
|
6155
6608
|
],
|
|
6156
6609
|
keyDomain: "",
|
|
@@ -6188,13 +6641,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6188
6641
|
"UseDisclosure"
|
|
6189
6642
|
],
|
|
6190
6643
|
standardProps: [
|
|
6644
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
6191
6645
|
"useResource: UseResource",
|
|
6192
6646
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
6193
6647
|
"usePanelInfo: UsePanelInfo",
|
|
6194
6648
|
"useSessions: UseSessions",
|
|
6195
6649
|
"useSessionStatus: UseSessionStatus",
|
|
6196
6650
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
6197
|
-
"
|
|
6651
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6652
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
6198
6653
|
"useChat: UseChat",
|
|
6199
6654
|
"useConversation: UseConversation",
|
|
6200
6655
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -6202,6 +6657,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6202
6657
|
"useSession: SessionSnapshotSelector",
|
|
6203
6658
|
"sessionId: SessionId",
|
|
6204
6659
|
"useProjection: UseProjection",
|
|
6660
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
6205
6661
|
"useTrajectory: UseTrajectory"
|
|
6206
6662
|
],
|
|
6207
6663
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), already taken: ask_user_question, bash, cordis_define, cordis_inspect_list, cordis_inspect_query, cordis_inspect_self, cordis_run, cordis_stop, cordis_undefine, create_goal, edit, get_goal, glob, grep, interrupt_agent, job_kill, job_list, job_output, list_agents, list_subagent_models, lsp, present, ralph, read, read_image, schedule_create, schedule_delete, schedule_list, schedule_update, send_message, session_event_read, session_event_search, session_event_trace, session_search, session_trace, skill, spawn_teammate, subagent, team_task_create, team_task_get, team_task_list, team_task_update, terminal_close, terminal_list, terminal_open, terminal_read, terminal_signal, todo_write, update_goal, wait_agent, web_fetch, web_search, workflow, write",
|
|
@@ -6287,13 +6743,15 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6287
6743
|
"CordisDynamicPluginRunId"
|
|
6288
6744
|
],
|
|
6289
6745
|
standardProps: [
|
|
6746
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
6290
6747
|
"useResource: UseResource",
|
|
6291
6748
|
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
6292
6749
|
"usePanelInfo: UsePanelInfo",
|
|
6293
6750
|
"useSessions: UseSessions",
|
|
6294
6751
|
"useSessionStatus: UseSessionStatus",
|
|
6295
6752
|
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
6296
|
-
"
|
|
6753
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6754
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean",
|
|
6297
6755
|
"useChat: UseChat",
|
|
6298
6756
|
"useConversation: UseConversation",
|
|
6299
6757
|
"useInput: SnapshotSelectorHook<InputState>",
|
|
@@ -6301,6 +6759,7 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6301
6759
|
"useSession: SessionSnapshotSelector",
|
|
6302
6760
|
"sessionId: SessionId",
|
|
6303
6761
|
"useProjection: UseProjection",
|
|
6762
|
+
"useAccess: (action: RemoteEndpoint) => boolean",
|
|
6304
6763
|
"useTrajectory: UseTrajectory"
|
|
6305
6764
|
],
|
|
6306
6765
|
keyDomain: "open: any string the owner dispatches (no compile-time key set), none are taken yet",
|
|
@@ -6311,6 +6770,52 @@ call: (method, args = null) => env.invoke(method, args) }, harnessTrap(), ...Obj
|
|
|
6311
6770
|
replaceRisk: "none",
|
|
6312
6771
|
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('tool.view.cordis', () => ctx.slots.register(\n { name: 'tool.view.cordis', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
6313
6772
|
source: "packages/extensions/ui-cordis/src/client/slots.ts:31"
|
|
6773
|
+
},
|
|
6774
|
+
{
|
|
6775
|
+
key: "workspace.toast",
|
|
6776
|
+
kind: "keyed",
|
|
6777
|
+
scope: "root",
|
|
6778
|
+
summary: "Workspace notices selected by their existing business discriminator.",
|
|
6779
|
+
doc: "Workspace notices selected by their existing business discriminator.",
|
|
6780
|
+
registerOptions: [{
|
|
6781
|
+
name: "key",
|
|
6782
|
+
requirement: "required",
|
|
6783
|
+
type: "string",
|
|
6784
|
+
doc: "Your cell key: the entry renders where the owner dispatches this exact key. Registering an already-occupied key replaces that occupant."
|
|
6785
|
+
}],
|
|
6786
|
+
ownerProps: ["/** Owner operations available to every keyed Workspace notice. */\nexport interface WorkspaceToastOwnerProps {\n /** Dismiss the displayed notice. */\n dismissToast: () => void\n}"],
|
|
6787
|
+
ownerPropsReferences: ["Workspace"],
|
|
6788
|
+
standardProps: [
|
|
6789
|
+
"useRemoteAccess: (action: RemoteEndpoint) => boolean",
|
|
6790
|
+
"useResource: UseResource",
|
|
6791
|
+
"useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>",
|
|
6792
|
+
"usePanelInfo: UsePanelInfo",
|
|
6793
|
+
"useSessions: UseSessions",
|
|
6794
|
+
"useSessionStatus: UseSessionStatus",
|
|
6795
|
+
"useSessionRetainInfo: UseSessionRetainInfo",
|
|
6796
|
+
"useSessionAccess: (sessionId: SessionId, action: RemoteEndpoint) => boolean",
|
|
6797
|
+
"useWorkspaceAccess: (workspaceId: WorkspaceId, action: RemoteEndpoint) => boolean"
|
|
6798
|
+
],
|
|
6799
|
+
keyDomain: "fixed by the owner's key table { [K in ToastKind]: ToastNotice<K> }, already taken: archived, archivedNotOpenable, createFailed, defaultWorkspaceFailed, forkRequiresOpen, pinFailed, sessionIdCopied, sessionIdCopyFailed, shortcutForkFailed, stoppedAndArchived, unpinFailed",
|
|
6800
|
+
hookContext: "",
|
|
6801
|
+
slotInject: "",
|
|
6802
|
+
declaredBy: "an entry in 'shell.overlay' (client-ui-workspace), so it exists while that entry is mounted",
|
|
6803
|
+
occupants: [
|
|
6804
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'sessionIdCopi… key 'sessionIdCopied'",
|
|
6805
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'sessionIdCopy… key 'sessionIdCopyFailed'",
|
|
6806
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'pinFailed'>> key 'pinFailed'",
|
|
6807
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'unpinFailed'>> key 'unpinFailed'",
|
|
6808
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'archivedNotOp… key 'archivedNotOpenable'",
|
|
6809
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'defaultWorksp… key 'defaultWorkspaceFailed'",
|
|
6810
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'shortcutForkF… key 'shortcutForkFailed'",
|
|
6811
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'createFailed'>> key 'createFailed'",
|
|
6812
|
+
"client-ui-workspace ToastEntry<PropsRuntime<'workspace.toast', 'forkRequiresO… key 'forkRequiresOpen'",
|
|
6813
|
+
"client-ui-workspace ArchiveToastEntry key 'archived'",
|
|
6814
|
+
"client-ui-workspace ArchiveToastEntry key 'stoppedAndArchived'"
|
|
6815
|
+
],
|
|
6816
|
+
replaceRisk: "shadows-shipped-ui",
|
|
6817
|
+
example: "return {\n inject: ['slots'],\n apply(ctx) {\n ctx.slots.inject('workspace.toast', () => ctx.slots.register(\n { name: 'workspace.toast', key: '<one key the owner dispatches>' },\n () => React.createElement('div', null, 'hello'),\n ))\n },\n}",
|
|
6818
|
+
source: "packages/client/ui-workspace/src/client/contract/toast.ts:53"
|
|
6314
6819
|
}
|
|
6315
6820
|
];
|
|
6316
6821
|
//#endregion
|