Add a keyboard-driven project setup flow (#2097)

* feat(projects): add keyboard-driven project setup

* test(app): update add project loading assertion

* fix(projects): harden GitHub project setup
This commit is contained in:
Mohamed Boudra
2026-07-15 21:16:10 +02:00
committed by GitHub
parent 90e0a0e353
commit dfe3330ef8
52 changed files with 3851 additions and 1023 deletions
@@ -0,0 +1,27 @@
import { create } from "zustand";
export interface AddProjectFlowRequest {
id: number;
preferredHostId?: string;
}
interface AddProjectFlowStoreState {
request: AddProjectFlowRequest | null;
open: (preferredHostId?: string) => void;
close: () => void;
}
let nextRequestId = 1;
export const useAddProjectFlowStore = create<AddProjectFlowStoreState>((set) => ({
request: null,
open: (preferredHostId) => {
set({
request: {
id: nextRequestId++,
...(preferredHostId ? { preferredHostId } : {}),
},
});
},
close: () => set({ request: null }),
}));
@@ -1,17 +0,0 @@
import { create } from "zustand";
interface ProjectPickerRequest {
serverId: string;
}
interface ProjectPickerStoreState {
request: ProjectPickerRequest | null;
open: (serverId: string) => void;
close: () => void;
}
export const useProjectPickerStore = create<ProjectPickerStoreState>((set) => ({
request: null,
open: (serverId) => set({ request: { serverId } }),
close: () => set({ request: null }),
}));