Files
openchamber/packages/ui/src/apps/mobileAppContext.tsx
T
00821700de chore: remove dead code (59 unused files + ~125 unused exports) (#1835)
* chore: remove dead/unreferenced files across ui, vscode

Remove 59 unused source files (components, hooks, lib utils, stores,
barrels, and orphaned vscode github modules) that are not imported by
any entry-reachable code. Also drop a stale test mock for the removed
execCommands module.

Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>

* refactor: remove unused exported symbols (types, functions, consts, hooks)

Remove exported symbols whose identifier is referenced nowhere in the
repository (verified via repo-wide search), across ui types/contracts,
lib utilities, sync layer, stores, and components. Also drop the few
imports/private helpers orphaned by these removals.

Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>

* refactor: remove more unused exports (desktop, shortcuts, worktree, vscode)

Continue removing repo-wide unreferenced exported functions, consts and
types across lib/desktop, shortcuts, worktreeSessionCreator, sync, and
vscode gitService, with cascading orphaned helpers/imports cleaned up.

Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>

* chore: add dead-code cleanup tooling

* refactor: checkpoint dead-code cleanup

* refactor: remove dead-code suppressions

---------

Co-authored-by: Serhii Dziupin <makeittech@users.noreply.github.com>
Co-authored-by: Bohdan Triapitsyn <artmore@protonmail.com>
2026-06-26 19:27:53 +03:00

30 lines
1.2 KiB
TypeScript

/* eslint-disable react-refresh/only-export-components */
import React from 'react';
export type MobileAppActions = {
/** Open the Changes surface as a modal and (optionally) navigate it to a specific diff. */
openChanges: (options?: { diffPath?: string | null; staged?: boolean }) => void;
/** Open the Files surface as a modal. */
openFiles: () => void;
/** Open the Settings surface as a modal. */
openSettings: () => void;
};
const DedicatedMobileAppContext = React.createContext<MobileAppActions | null>(null);
export const DedicatedMobileAppProvider: React.FC<{
actions: MobileAppActions;
children: React.ReactNode;
}> = ({ actions, children }) => (
<DedicatedMobileAppContext.Provider value={actions}>{children}</DedicatedMobileAppContext.Provider>
);
/**
* Returns the dedicated mobile app's surface-opening actions, or null when
* not inside the dedicated mobile root. Components living in shared chat /
* input code can use this to route navigation to mobile-native surfaces
* (e.g. open the Changes diff for a file from PendingChangesBar) instead of
* desktop sidebars.
*/
export const useMobileAppActions = (): MobileAppActions | null => React.useContext(DedicatedMobileAppContext);