33800 Docs

← Retour

Proposition : Cohérence Admin QwikPress

Date : 30/12/2025 Status : EN ATTENTE VALIDATION Priorité : Haute


Résumé

Audit complet de l'admin QwikPress. Trois catégories de problèmes identifiées :

  1. Try/catch à supprimer (25+ occurrences)
  2. Classes CSS incohérentes (3 conventions mélangées)
  3. Structure de pages hétérogène (certaines pages n'utilisent pas les composants UI)

1. TRY/CATCH À SUPPRIMER

Règle Qwik : Pas de try/catch dans routeLoader$, server$, routeAction$. Qwik gère les erreurs.

Fichiers concernés (25 occurrences)

Fichier Ligne Action
(pages)/pages/index.tsx 154, 192 Supprimer try/catch dans handlers
(pages)/page/[pageId]/modules/add/index.tsx 18 Supprimer
(pages)/page/[pageId]/settings/index.tsx 174 Supprimer
(pages)/page/[pageId]/seo/index.tsx 17 Supprimer
modules/[moduleType]/development/index.tsx 40 Supprimer
modules/[moduleType]/layout.tsx 29 Supprimer
modules/new/index.tsx 12 Supprimer
modules/usage/index.tsx 20 Supprimer
modules/common/new/index.tsx 16 Supprimer
modules/common/[moduleId]/edit/fields/.../add/index.tsx 21 Supprimer
modules/common/[moduleId]/edit/fields/.../edit/index.tsx 21, 241 Supprimer
modules/common/[moduleId]/edit/index.tsx 20 Supprimer
modules/common/index.tsx 13 Supprimer
modules/registry/index.tsx 11 Supprimer
modules/index.tsx 25 Supprimer
config/footer/link-groups/[groupId]/index.tsx 137 Supprimer
config/navigation/[navigationItemId]/edit/index.tsx 109 Supprimer
config/navigation/index.tsx 97 Supprimer
config/connectors/new/index.tsx 68 Supprimer
config/redirections/new/index.tsx 79 Supprimer
config/redirections/[id]/edit/index.tsx 95 Supprimer
config/redirections/logs/index.tsx 21 Supprimer

2. CLASSES CSS INCOHÉRENTES

Problème

3 conventions mélangées :

Solution

Tout harmoniser sur admin-btn (convention composants UI).

Ancien Nouveau
admin-button admin-btn
admin-button--primary admin-btn--primary
admin-button--secondary admin-btn--secondary
admin-button--outline admin-btn--ghost
admin-button--small admin-btn--sm
button--danger admin-btn--danger
button--secondary admin-btn--secondary

Fichiers concernés

Fichier Classes à remplacer
(pages)/page/[pageId]/layout.tsx admin-button, button
(pages)/page/[pageId]/settings/index.tsx admin-button, button--danger
(pages)/page/[pageId]/seo/index.tsx admin-button
Autres fichiers config admin-button, button

3. COULEURS HARDCODÉES

Problème

Styles inline avec couleurs en dur au lieu des variables CSS.

Mapping

Couleur hardcodée Variable CSS
#dc2626 var(--accent-danger)
#6b7280 var(--text-tertiary)
#374151 var(--text-secondary)
#e5e7eb var(--surface-border)
#6366f1 var(--accent-primary)

Fichiers concernés


4. STRUCTURE DE PAGES INCOHÉRENTE

Pages conformes (utilisent AdminPageHeader)

Pages non conformes

Page Problème Correction
page/[pageId]/settings/index.tsx <h2> direct Pas de header ici (layout parent)
page/[pageId]/seo/index.tsx <h2> direct Pas de header ici (layout parent)
page/[pageId]/content/index.tsx class="" vide Ajouter classe cohérente

Note importante

Les pages sous page/[pageId]/ ont un layout parent avec le header. Elles doivent seulement avoir un titre de section <h3> ou rien.


5. PLAN D'EXÉCUTION

Phase 1 : Try/catch (fichier par fichier)

  1. Lire le fichier
  2. Supprimer le try/catch
  3. Laisser l'erreur remonter naturellement
  4. Tester que ça compile

Phase 2 : Classes CSS (fichier par fichier)

  1. Remplacer admin-buttonadmin-btn
  2. Remplacer button--admin-btn--
  3. Harmoniser les variantes

Phase 3 : Variables CSS (fichier par fichier)

  1. Remplacer les couleurs hardcodées
  2. Nettoyer les styles inline excessifs

Phase 4 : Structure pages (fichier par fichier)

  1. Supprimer les <h2> redondants dans pages enfants
  2. Ajouter classes cohérentes

ORDRE DE CORRECTION

Je propose de traiter fichier par fichier dans cet ordre :

  1. (pages)/page/[pageId]/layout.tsx - Layout critique
  2. (pages)/page/[pageId]/settings/index.tsx - Page settings
  3. (pages)/page/[pageId]/seo/index.tsx - Page SEO
  4. (pages)/page/[pageId]/content/index.tsx - Page content
  5. (pages)/pages/index.tsx - Liste pages
  6. Puis les autres fichiers par ordre de priorité

Validation


Pour valider : "OK on y va" ou "modifie [point]"