Antigravity
261eee2953
CI / Lint, Unit Tests & Build (push) Successful in 6m6s
CI / Deploy production (on server) (push) Successful in 26s
refactor: factorisation peek panel — NotePeekPanel réutilisable
Architecture:
- components/note-peek/use-note-peek.ts: hook (fetch + state + events)
- components/note-peek/note-peek-content.tsx: rendu markdown/richtext/KaTeX
- components/note-peek/note-peek-panel.tsx: panel (overlay + inline modes)
- components/note-peek/index.ts: exports
- lib/use-scroll-to-block.ts: utilitaire scroll vers data-id
insights/page.tsx:
- ~95 lignes (state + fetch + KaTeX useEffect + AnimatePresence) → 10 lignes
- peek.open(noteId) remplace handleNoteClick complexe
- <NotePeekPanel mode=overlay /> remplace tout le JSX du panel
NotePeekPanel gère:
- markdown (MarkdownContent) + richtext (DOMPurify + KaTeX lazy)
- RTL (slide gauche pour fa/ar)
- prefers-reduced-motion
- role=dialog + aria-modal (overlay mode)
- loading spinner
- bouton Maximize2 + X
- renderContent prop pour custom (éditeur read-only)
2026-07-04 23:37:37 +00:00
..
2026-04-26 12:12:09 +02:00
2026-06-28 07:32:57 +00:00
2026-05-16 21:10:26 +00:00
2026-06-20 15:48:18 +00:00
2026-05-27 19:45:15 +00:00
2026-06-28 07:32:57 +00:00
2026-06-14 14:06:05 +00:00
2026-05-24 14:27:29 +00:00
2026-05-07 22:29:02 +00:00
2026-05-24 18:57:33 +00:00
2026-06-14 14:06:05 +00:00
2026-06-28 07:32:57 +00:00
2026-05-24 23:03:16 +00:00
2026-05-24 14:27:29 +00:00
2026-05-24 14:27:29 +00:00
2026-05-24 14:27:29 +00:00
2026-06-28 07:32:57 +00:00
2026-06-19 20:29:33 +00:00
2026-06-14 20:13:25 +00:00
2026-05-22 17:18:48 +00:00
2026-05-14 17:43:21 +00:00
2026-05-16 20:34:58 +00:00
2026-05-16 20:34:58 +00:00
2026-06-20 15:48:18 +00:00
2026-06-28 07:32:57 +00:00
2026-05-22 17:18:48 +00:00
2026-05-17 17:29:51 +00:00
2026-05-16 12:59:30 +00:00
2026-05-16 12:59:30 +00:00
2026-06-14 14:06:05 +00:00
2026-06-20 15:48:18 +00:00
2026-04-20 22:48:06 +02:00
2026-06-14 14:06:05 +00:00
2026-04-20 22:48:06 +02:00
2026-05-24 18:57:33 +00:00
2026-06-28 07:32:57 +00:00
2026-04-27 22:56:22 +02:00
2026-05-19 18:45:50 +00:00
2026-05-09 12:58:16 +00:00
2026-06-20 17:01:04 +00:00
2026-06-14 14:06:05 +00:00
2026-05-02 16:51:12 +02:00
2026-05-27 19:45:15 +00:00
2026-05-27 19:45:15 +00:00
2026-05-22 17:18:48 +00:00
2026-04-20 22:48:06 +02:00
2026-05-27 19:45:15 +00:00
2026-06-28 07:32:57 +00:00
2026-05-28 21:20:48 +00:00
2026-05-16 20:34:58 +00:00
2026-05-14 17:43:21 +00:00
2026-06-28 07:32:57 +00:00
2026-05-03 18:41:38 +00:00
2026-05-19 22:00:19 +00:00
2026-06-28 07:32:57 +00:00
2026-05-14 17:43:21 +00:00
2026-06-20 16:53:19 +00:00
2026-05-16 20:50:29 +00:00
2026-05-23 09:19:52 +00:00
2026-06-28 07:32:57 +00:00
2026-06-20 16:53:19 +00:00
2026-05-16 12:59:30 +00:00
2026-05-27 19:45:15 +00:00
2026-05-08 14:31:08 +00:00
2026-07-04 23:37:37 +00:00
2026-06-14 14:06:05 +00:00
2026-05-22 17:18:48 +00:00