|
|
@@ -387,7 +387,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'none',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:158',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:170',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.composer.bar',
|
|
|
@@ -425,7 +425,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'shadows-shipped-ui',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:176',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:188',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.composer.dock',
|
|
|
@@ -480,7 +480,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'none',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:170',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:182',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.hero.agentPreset',
|
|
|
@@ -510,7 +510,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'shadows-shipped-ui',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:164',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:176',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.hero.brand.mark',
|
|
|
@@ -538,7 +538,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
occupants: [],
|
|
|
replaceRisk: 'none',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:162',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:174',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.hero.workspace',
|
|
|
@@ -570,7 +570,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'shadows-shipped-ui',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:160',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:172',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.hero.workspace.directoryFlow',
|
|
|
@@ -641,7 +641,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'shadows-shipped-ui',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:178',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:190',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.input.dock',
|
|
|
@@ -703,7 +703,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'none',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:166',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:178',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.input.left',
|
|
|
@@ -756,7 +756,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
occupants: [],
|
|
|
replaceRisk: 'none',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:172',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:184',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.input.model',
|
|
|
@@ -794,7 +794,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'shadows-shipped-ui',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:188',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:200',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.input.overlay',
|
|
|
@@ -851,7 +851,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'none',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:168',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:180',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.input.permission',
|
|
|
@@ -889,7 +889,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'shadows-shipped-ui',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:186',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:198',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.input.plan',
|
|
|
@@ -927,7 +927,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'shadows-shipped-ui',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:184',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:196',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.input.right',
|
|
|
@@ -980,7 +980,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
occupants: [],
|
|
|
replaceRisk: 'none',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:174',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:186',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.message.images',
|
|
|
@@ -1192,7 +1192,45 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'shadows-shipped-ui',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:150',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:162',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ key: 'conversation.session.header.leading',
|
|
|
+ kind: 'single',
|
|
|
+ scope: 'session',
|
|
|
+ summary: 'Leading seat before the Session breadcrumbs, for window-chrome-adjacent controls (macOS desktop sidebar reopen and New Session while the sidebar is hidden).',
|
|
|
+ doc: 'Leading seat before the Session breadcrumbs, for window-chrome-adjacent\ncontrols (macOS desktop sidebar reopen and New Session while the sidebar\nis hidden). The seat is laid out only while its occupant renders\nsomething, and it stays mounted through the blank-session state so a\nhidden sidebar always keeps a reopen control on screen.',
|
|
|
+ registerOptions: [],
|
|
|
+ ownerProps: [
|
|
|
+ '/** The leading seat\'s occupant derives its state from standard Session props. */\nexport interface ConversationHeaderLeadingOwnerProps {\n /** Marker field: the occupant receives no owner-specific values. */\n children?: never\n}',
|
|
|
+ ],
|
|
|
+ ownerPropsReferences: [],
|
|
|
+ standardProps: [
|
|
|
+ 'useResource: UseResource',
|
|
|
+ 'useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>',
|
|
|
+ 'usePanelInfo: UsePanelInfo',
|
|
|
+ 'useSessions: UseSessions',
|
|
|
+ 'useSessionPendingInteraction: UseSessionPendingInteraction',
|
|
|
+ 'useWorkspaces: SnapshotSelectorHook<WorkspaceSnapshot>',
|
|
|
+ 'useChat: UseChat',
|
|
|
+ 'useConversation: UseConversation',
|
|
|
+ 'useInput: SnapshotSelectorHook<InputState>',
|
|
|
+ 'inputActions: InputActions',
|
|
|
+ 'useSession: SessionSnapshotSelector',
|
|
|
+ 'sessionId: SessionId',
|
|
|
+ 'useProjection: UseProjection',
|
|
|
+ 'useTrajectory: UseTrajectory',
|
|
|
+ ],
|
|
|
+ keyDomain: '',
|
|
|
+ hookContext: '',
|
|
|
+ slotInject: '',
|
|
|
+ declaredBy: 'an entry in \'conversation.session.header\' (client-ui-conversation), so it exists while that entry is mounted',
|
|
|
+ occupants: [
|
|
|
+ 'client-ui-sidebar HeaderLeadingControls',
|
|
|
+ ],
|
|
|
+ replaceRisk: 'shadows-shipped-ui',
|
|
|
+ example: 'return {\n inject: [\'slots\'],\n apply(ctx) {\n ctx.slots.inject(\'conversation.session.header.leading\', () => ctx.slots.register(\n { name: \'conversation.session.header.leading\' },\n () => React.createElement(\'div\', null, \'hello\'),\n ))\n },\n}',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:151',
|
|
|
},
|
|
|
{
|
|
|
key: 'conversation.session.header.lineage',
|
|
|
@@ -1392,7 +1430,7 @@ export const CLIENT_SLOT_API: readonly ClientSlotEntry[] = [
|
|
|
],
|
|
|
replaceRisk: 'none',
|
|
|
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}',
|
|
|
- source: 'packages/client/ui-conversation/src/client/contract/slots.ts:156',
|
|
|
+ source: 'packages/client/ui-conversation/src/client/contract/slots.ts:168',
|
|
|
},
|
|
|
{
|
|
|
key: 'main',
|