@hachej/boring-workspace 0.1.63 → 0.1.64

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.
@@ -167,6 +167,8 @@ declare interface ChatLayoutProps {
167
167
  center?: string;
168
168
  centerParams?: Record<string, unknown>;
169
169
  chatPanes?: ChatPaneDescriptor[];
170
+ /** Optional host actions rendered in the active chat pane header. */
171
+ chatTopActions?: ReactNode;
170
172
  activeChatPaneId?: string | null;
171
173
  onActiveChatPaneChange?: (id: string) => void;
172
174
  onCloseChatPane?: (id: string) => void;
@@ -246,6 +248,10 @@ export declare const FULL_PAGE_PANEL_RENDER_FAILED = "FULL_PAGE_PANEL_RENDER_FAI
246
248
 
247
249
  export declare const FULL_PAGE_PANEL_UNKNOWN_COMPONENT = "FULL_PAGE_PANEL_UNKNOWN_COMPONENT";
248
250
 
251
+ declare type OpenArtifactHandler = (path: string, options?: {
252
+ filesystem?: FilesystemId;
253
+ }) => void;
254
+
249
255
  declare interface OpenPanelConfig {
250
256
  /** Panel instance id. If a panel with this id is already open, it's re-activated instead of duplicated. */
251
257
  id: string;
@@ -466,6 +472,22 @@ declare type WorkspaceAgentAppLeftHeaderMode = "full" | "workspace" | "hidden";
466
472
 
467
473
  declare type WorkspaceAgentAppLeftLayoutMode = "single-project" | "multi-project";
468
474
 
475
+ declare interface WorkspaceAgentAppLeftOverlayAction {
476
+ id: string;
477
+ label: string;
478
+ icon: ReactNode;
479
+ trailing?: ReactNode;
480
+ emphasis?: boolean;
481
+ render: (props: WorkspaceAgentAppLeftOverlayRenderProps) => ReactNode;
482
+ }
483
+
484
+ declare interface WorkspaceAgentAppLeftOverlayRenderProps {
485
+ onClose: () => void;
486
+ headerInsetStart: boolean;
487
+ headerInsetEnd: boolean;
488
+ workspaceId: string;
489
+ }
490
+
469
491
  declare interface WorkspaceAgentAppLeftProject {
470
492
  id: string;
471
493
  name: string;
@@ -483,9 +505,9 @@ declare interface WorkspaceAgentAppLeftProjectSession {
483
505
  updatedAt?: string | number;
484
506
  }
485
507
 
486
- export declare function WorkspaceAgentFront<TSession extends WorkspaceAgentSession = WorkspaceAgentSession>({ workspaceId, chatPanel: chatPanelProp, useSessions: useSessionsProp, requestHeaders, sessionStorageKey, providerStorageKey, surfaceStorageKey, beforeShell, afterShell, panels, commands, catalogs, plugins, excludeDefaults, capabilities, apiBaseUrl, authHeaders, apiTimeout, defaultTheme, onThemeChange, persistenceEnabled, debug, bridgeEndpoint, fullPageBasePath, onAuthError, sessions, activeSessionId, onSwitchSession, onCreateSession, onDeleteSession, onActiveSessionIdChange, appTitle, workspaceLabel, workspaceSectionTitle, appLeftLayoutMode, appLeftHeaderMode, appLeftProjects, appLeftActiveProjectId, onSwitchAppLeftProject, onOpenAppLeftProjectSession, onShowMoreAppLeftProjectSessions, onCreateAppLeftProject, onOpenAppLeftProjectSettings, onOpenAppLeftProjectInNewTab, defaultSessionTitle, workspaceLayout, navEnabled, defaultNavOpen, defaultSurfaceOpen, defaultWorkbenchLeftTab, defaultWorkbenchLeftOpen, surfaceInitialPanels, topBarLeft, topBarRight, showThemeToggle, showSkills, showPlugins, appLeftActions, chatParams, externalPlugins, hotReloadEnabled, frontPluginHotReload, extraPanels, extraCommands, provisionWorkspace, bootPreloadPaths, onWorkspaceWarmupStatusChange, onOpenNav, onOpenSurface, surfaceButtonBottomOffset, className, }: WorkspaceAgentFrontProps<TSession>): JSX.Element;
508
+ export declare function WorkspaceAgentFront<TSession extends WorkspaceAgentSession = WorkspaceAgentSession>({ workspaceId, chatPanel: chatPanelProp, useSessions: useSessionsProp, requestHeaders, sessionStorageKey, providerStorageKey, surfaceStorageKey, beforeShell, afterShell, panels, commands, catalogs, plugins, excludeDefaults, capabilities, apiBaseUrl, authHeaders, apiTimeout, defaultTheme, onThemeChange, persistenceEnabled, debug, bridgeEndpoint, fullPageBasePath, onAuthError, sessions, activeSessionId, onSwitchSession, onCreateSession, onDeleteSession, onActiveSessionIdChange, appTitle, workspaceLabel, workspaceSectionTitle, appLeftLayoutMode, appLeftHeaderMode, appLeftProjects, appLeftActiveProjectId, onSwitchAppLeftProject, onOpenAppLeftProjectSession, onShowMoreAppLeftProjectSessions, onCreateAppLeftProject, onOpenAppLeftProjectSettings, onOpenAppLeftProjectInNewTab, defaultSessionTitle, workspaceLayout, navEnabled, defaultNavOpen, defaultSurfaceOpen, defaultWorkbenchLeftTab, defaultWorkbenchLeftOpen, surfaceInitialPanels, topBarLeft, topBarRight, showThemeToggle, showSkills, showPlugins, appLeftActions, appLeftOverlayActions, chatParams, externalPlugins, hotReloadEnabled, frontPluginHotReload, extraPanels, extraCommands, provisionWorkspace, bootPreloadPaths, onWorkspaceWarmupStatusChange, onOpenNav, onOpenSurface, surfaceButtonBottomOffset, className, }: WorkspaceAgentFrontProps<TSession>): JSX.Element;
487
509
 
488
- export declare interface WorkspaceAgentFrontProps<TSession extends WorkspaceAgentSession = WorkspaceAgentSession> extends Omit<WorkspaceProviderProps, "children" | "workspaceId" | "storageKey" | "chatPanel" | "commandPaletteSessionSearch">, Omit<ChatLayoutProps, "nav" | "navParams" | "center" | "centerParams" | "chatPanes" | "activeChatPaneId" | "onActiveChatPaneChange" | "onCloseChatPane" | "onCreateChatPaneAfter" | "onDropChatSession" | "flashChatPaneId" | "surface" | "surfaceParams" | "sidebar" | "sidebarParams" | "storageKey"> {
510
+ export declare interface WorkspaceAgentFrontProps<TSession extends WorkspaceAgentSession = WorkspaceAgentSession> extends Omit<WorkspaceProviderProps, "children" | "workspaceId" | "storageKey" | "chatPanel" | "commandPaletteSessionSearch">, Omit<ChatLayoutProps, "nav" | "navParams" | "center" | "centerParams" | "chatPanes" | "chatTopActions" | "activeChatPaneId" | "onActiveChatPaneChange" | "onCloseChatPane" | "onCreateChatPaneAfter" | "onDropChatSession" | "flashChatPaneId" | "surface" | "surfaceParams" | "sidebar" | "sidebarParams" | "storageKey"> {
489
511
  workspaceId: string;
490
512
  chatPanel?: ComponentType<WorkspaceChatPanelProps>;
491
513
  useSessions?: UseWorkspaceAgentSessions<TSession>;
@@ -541,6 +563,8 @@ export declare interface WorkspaceAgentFrontProps<TSession extends WorkspaceAgen
541
563
  showPlugins?: boolean;
542
564
  /** Extra actions inserted into the app-left primary action list before built-in management actions. */
543
565
  appLeftActions?: readonly WorkspaceAgentAppLeftAction[];
566
+ /** Extra chat-hosted management overlays opened from the app-left primary action list. */
567
+ appLeftOverlayActions?: readonly WorkspaceAgentAppLeftOverlayAction[];
544
568
  sessions?: Array<{
545
569
  id: string;
546
570
  title?: string | null;
@@ -657,8 +681,9 @@ export declare interface WorkspaceBootGateProps {
657
681
 
658
682
  declare type WorkspaceChatPanelComponent = ComponentType<any>;
659
683
 
660
- declare interface WorkspaceChatPanelProps extends PiChatPanelProps<WorkspaceAttentionBlocker> {
684
+ declare interface WorkspaceChatPanelProps extends Omit<PiChatPanelProps<WorkspaceAttentionBlocker>, "onOpenArtifact"> {
661
685
  sessionId: string;
686
+ onOpenArtifact?: OpenArtifactHandler;
662
687
  /** Endpoint base for agent → visible-workbench UI commands. */
663
688
  bridgeEndpoint?: string | null;
664
689
  /** Imperative handle getter for the visible workbench surface. */