MCPcopy
hub / github.com/coder/mux / AppInner

Function AppInner

src/browser/App.tsx:136–1260  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

134}
135
136function AppInner() {
137 // Get workspace state from context
138 const {
139 workspaceMetadata,
140 loading,
141 setWorkspaceMetadata,
142 removeWorkspace,
143 updateWorkspaceTitle,
144 selectedWorkspace,
145 setSelectedWorkspace,
146 pendingNewWorkspaceProject,
147 pendingNewWorkspaceSubProjectPath,
148 pendingNewWorkspaceDraftId,
149 beginWorkspaceCreation,
150 } = useWorkspaceContext();
151 const {
152 currentWorkspaceId,
153 currentSettingsSection,
154 isAnalyticsOpen,
155 navigateToAnalytics,
156 navigateFromAnalytics,
157 } = useRouter();
158 const { themePreference, setTheme, toggleTheme } = useTheme();
159 const { open: openSettings, isOpen: isSettingsOpen } = useSettings();
160 const { confirm: confirmDialog } = useConfirmDialog();
161 const setThemePreference = useCallback(
162 (nextTheme: ThemePreference) => {
163 setTheme(nextTheme);
164 },
165 [setTheme]
166 );
167 const { layoutPresets, applySlotToWorkspace, saveCurrentWorkspaceToSlot } = useUILayouts();
168 const { getMinOverride: getMinThinkingOverride } = useMinThinkingLevels();
169 const { api, status, error, authenticate, retry } = useAPI();
170
171 const {
172 userProjects,
173 refreshProjects,
174 removeProject,
175 openProjectCreateModal,
176 projectCreateInitialPath,
177 isProjectCreateModalOpen,
178 closeProjectCreateModal,
179 addProject,
180 } = useProjectContext();
181
182 // Auto-collapse sidebar on mobile by default
183 const isMobile = typeof window !== "undefined" && window.innerWidth <= 768;
184 const [sidebarCollapsed, setSidebarCollapsed] = usePersistedState(
185 LEFT_SIDEBAR_COLLAPSED_KEY,
186 isMobile,
187 {
188 listener: true,
189 }
190 );
191
192 const [isMultiProjectWorkspaceModalOpen, setMultiProjectWorkspaceModalOpen] = useState(false);
193 const multiProjectWorkspacesEnabled = useExperimentValue(EXPERIMENT_IDS.MULTI_PROJECT_WORKSPACES);

Callers

nothing calls this directly

Calls 15

useWorkspaceContextFunction · 0.90
useRouterFunction · 0.90
useThemeFunction · 0.90
useSettingsFunction · 0.90
useConfirmDialogFunction · 0.90
useUILayoutsFunction · 0.90
useMinThinkingLevelsFunction · 0.90
useAPIFunction · 0.90
useProjectContextFunction · 0.90
usePersistedStateFunction · 0.90
useResizableSidebarFunction · 0.90

Tested by

no test coverage detected