33800 Docs

← Retour

Proposition: Ajout méthodes StorageService manquantes

Date: 30/12/2025 Projet: QwikPress v2 Statut: En attente de validation

Problème

Le build TypeScript échoue car le code appelle des méthodes sur StorageService qui n'existent pas dans l'interface ni dans FileStorageService.

Méthodes à ajouter

1. Gestion des pages (création)

createPage(id: string, meta: PageMeta, content: PageContent): Promise<StorageResult<Page>>;
updatePageMeta(pageId: string, meta: Partial<PageMeta>): Promise<StorageResult<void>>;
updatePageSEO(pageId: string, seo: SEOData): Promise<StorageResult<void>>;
getPageMeta(pageId: string): Promise<PageMeta | null>;
duplicatePage(pageId: string): Promise<StorageResult<{ pageId: string }>>;
movePage(pageId: string, newParentId: string | null): Promise<StorageResult<void>>;
getPageTree(): Promise<PageTreeNode[]>;

2. Gestion des modules de page

addPageModule(pageId: string, module: ModuleInstance): Promise<StorageResult<void>>;
deletePageModule(pageId: string, moduleId: string): Promise<StorageResult<void>>;
reorderPageModules(pageId: string, moduleIds: string[]): Promise<StorageResult<void>>;

3. Duplication/Move modules

duplicateModuleToPage(sourcePageId: string, moduleId: string, targetPageId: string): Promise<{ moduleId: string }>;
duplicateModuleToCommon(pageId: string, moduleId: string, name: string, description?: string): Promise<{ commonModuleId: string }>;
moveModuleBetweenPages(sourcePageId: string, moduleId: string, targetPageId: string): Promise<{ moduleId: string }>;
moveModuleToCommon(pageId: string, moduleId: string, name: string, description?: string): Promise<{ commonModuleId: string }>;
moveCommonModuleToPage(commonModuleId: string, targetPageId: string): Promise<{ moduleId: string }>;

4. Suppression layouts/catchers/hotModules

deleteLayout(id: string): Promise<StorageResult<void>>;
deleteCatcher(id: string): Promise<StorageResult<void>>;
deleteHotModule(id: string): Promise<StorageResult<void>>;

Fichiers à modifier

  1. src/types/storage.ts - Ajouter les méthodes à l'interface
  2. src/services/storage/file-storage.service.ts - Implémenter les méthodes
  3. src/services/storage/supabase-storage.service.ts - Implémenter (stub ou réel)

Estimation

~200 lignes de code à ajouter.

Validation