feat(ui): add desktop git sidebar + terminal dock and improve in-app PR workflow (#362)

* feat: add unified dropdown with services content in header

* feat: add right Git sidebar with resizable panel

* feat: implement responsive panel auto-toggle and terminal rehydration

- Auto-close the right sidebar when width is below a threshold and auto-open it when space permits
- Auto-close the bottom terminal when height is below a threshold and auto-open it when enough space
- Apply a dedicated rehydrated streaming configuration for terminal sessions to optimize reconnect behavior

* feat: enhance PR view with status caching and annotations

* feat(ui): enable chat dispatch in PullRequestSection

* feat(TerminalView): adjust layout

* feat: refine chat input layout and text selection menu

* fix(ui): show empty state in GitView when no changes

* feat(git): update PR actions styling and create PR button
This commit is contained in:
Bohdan Triapitsyn
2026-02-09 03:13:34 +02:00
committed by GitHub
parent 3f29b2c6a2
commit 5b0a97d170
30 changed files with 3216 additions and 1443 deletions
+26 -1
View File
@@ -594,13 +594,30 @@ export type GitHubCheckRun = {
url?: string;
name?: string;
conclusion?: string | null;
steps?: Array<{ name: string; status?: string; conclusion?: string | null; number?: number }>;
steps?: Array<{
name: string;
status?: string;
conclusion?: string | null;
number?: number;
startedAt?: string;
completedAt?: string;
}>;
};
annotations?: Array<{
path?: string;
startLine?: number;
endLine?: number;
level?: string;
message: string;
title?: string;
rawDetails?: string;
}>;
};
export type GitHubPullRequest = {
number: number;
title: string;
body?: string;
url: string;
state: 'open' | 'closed' | 'merged';
draft: boolean;
@@ -686,6 +703,13 @@ export type GitHubPullRequestCreateInput = {
draft?: boolean;
};
export type GitHubPullRequestUpdateInput = {
directory: string;
number: number;
title: string;
body?: string;
};
export type GitHubPullRequestMergeInput = {
directory: string;
number: number;
@@ -794,6 +818,7 @@ export interface GitHubAPI {
prStatus(directory: string, branch: string): Promise<GitHubPullRequestStatus>;
prCreate(payload: GitHubPullRequestCreateInput): Promise<GitHubPullRequest>;
prUpdate(payload: GitHubPullRequestUpdateInput): Promise<GitHubPullRequest>;
prMerge(payload: GitHubPullRequestMergeInput): Promise<GitHubPullRequestMergeResult>;
prReady(payload: GitHubPullRequestReadyInput): Promise<GitHubPullRequestReadyResult>;