MCPcopy Create free account
hub / github.com/IgorWarzocha/howcode / useAppShellEffects

Function useAppShellEffects

src/app/app-shell/useAppShellEffects.ts:33–131  ·  view source on GitHub ↗
({
  projects,
  collapsedProjectIds,
  workspaceState,
  selectedInboxThread,
  composerProjectId,
  shellComposerState,
  shellAppSettings,
  loadProjectThreads,
  loadArchivedThreads,
  loadComposerState,
  loadProjectGitState,
  scheduleShellStateRefresh,
  refreshChatSidebarState,
  queryClient,
  dispatch,
  setArchivedThreads,
  setComposerState,
  setChatSidebarState,
  setLiveThreadData,
  setProjectGitState,
  setProjectGitLoading,
  setThreadHistoryCompactions,
}: {
  projects: Project[]
  collapsedProjectIds: Record<string, boolean>
  workspaceState: WorkspaceState
  selectedInboxThread: InboxThread | null
  composerProjectId: string
  shellComposerState: ComposerState | null | undefined
  shellAppSettings: AppSettings | null | undefined
  loadProjectThreads: (
    projectId: string,
    options?: { chat?: boolean | undefined },
  ) => Promise<unknown>
  loadArchivedThreads: () => Promise<ArchivedThread[]>
  loadComposerState: (request?: {
    projectId?: string | null
    sessionPath?: string | null
    composerMode?: 'chat' | 'code' | null
  }) => Promise<ComposerState | null>
  loadProjectGitState: (projectId: string) => Promise<ProjectGitState | null>
  scheduleShellStateRefresh: () => void
  refreshChatSidebarState: () => Promise<unknown>
  queryClient: QueryClientLike
  dispatch: Dispatch<WorkspaceAction>
  setArchivedThreads: Dispatch<SetStateAction<ArchivedThread[]>>
  setComposerState: Dispatch<SetStateAction<ComposerState | null>>
  setChatSidebarState: Dispatch<SetStateAction<ChatSidebarState | null>>
  setLiveThreadData: Dispatch<SetStateAction<ThreadData | null>>
  setProjectGitState: Dispatch<SetStateAction<ProjectGitState | null>>
  setProjectGitLoading: Dispatch<SetStateAction<boolean>>
  setThreadHistoryCompactions: Dispatch<SetStateAction<number>>
})

Source from the content-addressed store, hash-verified

31}
32
33export function useAppShellEffects({
34 projects,
35 collapsedProjectIds,
36 workspaceState,
37 selectedInboxThread,
38 composerProjectId,
39 shellComposerState,
40 shellAppSettings,
41 loadProjectThreads,
42 loadArchivedThreads,
43 loadComposerState,
44 loadProjectGitState,
45 scheduleShellStateRefresh,
46 refreshChatSidebarState,
47 queryClient,
48 dispatch,
49 setArchivedThreads,
50 setComposerState,
51 setChatSidebarState,
52 setLiveThreadData,
53 setProjectGitState,
54 setProjectGitLoading,
55 setThreadHistoryCompactions,
56}: {
57 projects: Project[]
58 collapsedProjectIds: Record<string, boolean>
59 workspaceState: WorkspaceState
60 selectedInboxThread: InboxThread | null
61 composerProjectId: string
62 shellComposerState: ComposerState | null | undefined
63 shellAppSettings: AppSettings | null | undefined
64 loadProjectThreads: (
65 projectId: string,
66 options?: { chat?: boolean | undefined },
67 ) => Promise<unknown>
68 loadArchivedThreads: () => Promise<ArchivedThread[]>
69 loadComposerState: (request?: {
70 projectId?: string | null
71 sessionPath?: string | null
72 composerMode?: 'chat' | 'code' | null
73 }) => Promise<ComposerState | null>
74 loadProjectGitState: (projectId: string) => Promise<ProjectGitState | null>
75 scheduleShellStateRefresh: () => void
76 refreshChatSidebarState: () => Promise<unknown>
77 queryClient: QueryClientLike
78 dispatch: Dispatch<WorkspaceAction>
79 setArchivedThreads: Dispatch<SetStateAction<ArchivedThread[]>>
80 setComposerState: Dispatch<SetStateAction<ComposerState | null>>
81 setChatSidebarState: Dispatch<SetStateAction<ChatSidebarState | null>>
82 setLiveThreadData: Dispatch<SetStateAction<ThreadData | null>>
83 setProjectGitState: Dispatch<SetStateAction<ProjectGitState | null>>
84 setProjectGitLoading: Dispatch<SetStateAction<boolean>>
85 setThreadHistoryCompactions: Dispatch<SetStateAction<number>>
86}) {
87 useProjectShellSync({
88 projects,
89 collapsedProjectIds,
90 activeView: workspaceState.activeView,

Callers 1

useAppShellControllerFunction · 0.90

Calls 7

useProjectShellSyncFunction · 0.90
useComposerGitStateSyncFunction · 0.90
useWatchedSessionSyncFunction · 0.90
useUtilityViewEscapeFunction · 0.90
useTerminalGitStateSyncFunction · 0.90
useDesktopEventSyncFunction · 0.90

Tested by

no test coverage detected