feat: first cut at menu editor

This commit is contained in:
2026-02-21 19:51:34 +01:00
parent f371dbd2b2
commit 76c3a8368e
37 changed files with 2148 additions and 4 deletions

View File

@@ -422,6 +422,21 @@ export interface SiteValidationApplyResult {
removedEmptyDirCount: number;
}
export type MenuItemKind = 'page' | 'submenu';
export interface MenuItemData {
id: string;
title: string;
kind: MenuItemKind;
pageId?: string;
pageSlug?: string;
children: MenuItemData[];
}
export interface MenuDocument {
items: MenuItemData[];
}
export interface ElectronAPI {
git: {
checkAvailability: () => Promise<GitAvailability>;
@@ -629,6 +644,10 @@ export interface ElectronAPI {
validateSite: () => Promise<SiteValidationReport>;
applyValidation: (report: SiteValidationReport) => Promise<SiteValidationApplyResult>;
};
menu: {
get: () => Promise<MenuDocument>;
save: (menu: MenuDocument) => Promise<MenuDocument>;
};
chat: {
// API Key Management
checkReady: () => Promise<ChatReadyStatus>;