feat(brainstorm): rouvrir la note créée depuis une idée convertie
Some checks failed
CI / Lint, Unit Tests & Build (push) Successful in 6m17s
CI / Deploy production (on server) (push) Failing after 1s

Quand une idée est déjà convertie en note:
- Badge 'Note Created →' cliquable dans le header de l'idée (ouvre le peek)
- Bouton 'Open Note →' remplace 'Create Note' (bordure emerald, fond vert)
- peek.open(convertedToNoteId) ouvre le drawer latéral avec la note
- L'utilisateur peut relire la note sans quitter le brainstorm
This commit is contained in:
Antigravity
2026-07-11 16:47:13 +00:00
parent 4d029d3ebe
commit f97c5e8ec4
2 changed files with 31 additions and 15 deletions

View File

@@ -1,8 +1,8 @@
{
"version": 1,
"lastRunAtMs": 1783196565768,
"turnsSinceLastRun": 6,
"turnsSinceLastRun": 7,
"lastTranscriptMtimeMs": 1783196565691.0437,
"lastProcessedGenerationId": "6ccc52d1-8073-4386-b4d0-84c60a305da2",
"lastProcessedGenerationId": "71df05a3-2a54-46fa-aa10-c8b8357c33fd",
"trialStartedAtMs": null
}

View File

@@ -754,9 +754,13 @@ export function BrainstormPage() {
</div>
<div className="flex items-center gap-2">
{selectedIdea.status === 'converted' && (
<span className="text-[10px] font-bold text-emerald-500 uppercase tracking-widest bg-emerald-500/10 px-2 py-1 rounded-full">
{t('brainstorm.noteCreated') || 'Note Created'}
</span>
<button
onClick={() => selectedIdea.convertedToNoteId && peek.open(selectedIdea.convertedToNoteId)}
className="flex items-center gap-1.5 text-[10px] font-bold text-emerald-600 dark:text-emerald-400 uppercase tracking-widest bg-emerald-500/10 hover:bg-emerald-500/20 px-3 py-1.5 rounded-full transition-colors cursor-pointer"
>
<FileText size={11} />
{t('brainstorm.noteCreated') || 'Note Created'}
</button>
)}
{canEdit && (
<button
@@ -897,16 +901,28 @@ export function BrainstormPage() {
{expandIdea.isPending ? (t('brainstorm.deepening') || 'Generating...') : (t('brainstorm.deepen') || 'Deepen')}
</span>
</button>
<button
onClick={() => setConvertConfirm(selectedIdea)}
disabled={selectedIdea.status === 'converted' || convertIdea.isPending}
className="flex flex-col items-center justify-center p-6 border-2 border-dashed border-border rounded-2xl hover:border-emerald-400/40 hover:bg-emerald-500/5 transition-all group disabled:opacity-50"
>
<FileText size={24} className="text-muted-foreground group-hover:text-emerald-500 mb-2" />
<span className="text-[11px] font-bold uppercase tracking-widest text-muted-foreground group-hover:text-foreground">
{convertIdea.isPending ? (t('brainstorm.converting') || 'Converting...') : (t('brainstorm.extract') || 'Create Note')}
</span>
</button>
{selectedIdea.status === 'converted' && selectedIdea.convertedToNoteId ? (
<button
onClick={() => selectedIdea.convertedToNoteId && peek.open(selectedIdea.convertedToNoteId)}
className="flex flex-col items-center justify-center p-6 border-2 border-emerald-400/40 bg-emerald-500/5 rounded-2xl hover:bg-emerald-500/10 transition-all group"
>
<FileText size={24} className="text-emerald-500 mb-2" />
<span className="text-[11px] font-bold uppercase tracking-widest text-emerald-600 dark:text-emerald-400">
{t('brainstorm.openNote') || 'Open Note'}
</span>
</button>
) : (
<button
onClick={() => setConvertConfirm(selectedIdea)}
disabled={convertIdea.isPending}
className="flex flex-col items-center justify-center p-6 border-2 border-dashed border-border rounded-2xl hover:border-emerald-400/40 hover:bg-emerald-500/5 transition-all group disabled:opacity-50"
>
<FileText size={24} className="text-muted-foreground group-hover:text-emerald-500 mb-2" />
<span className="text-[11px] font-bold uppercase tracking-widest text-muted-foreground group-hover:text-foreground">
{convertIdea.isPending ? (t('brainstorm.converting') || 'Converting...') : (t('brainstorm.extract') || 'Create Note')}
</span>
</button>
)}
</div>
<button