From f2231d7dada3f253de526fbe1459a6e9da733ab2 Mon Sep 17 00:00:00 2001 From: Mike Date: Sun, 3 May 2026 14:42:23 +0500 Subject: [PATCH] fix(perf): fix remaining lazy-loading and dead toggle issues from PR review - Gate TeamListView dialogs with showCreateDialog/launchDialogOpen - Gate SchedulesView and ScheduleSection lazy dialogs with dialogOpen - Fix import order in SchedulesView (import type before lazy constant) - Add Show raw toggle button to MarkdownViewer rendered view --- .../chat/viewers/MarkdownViewer.tsx | 36 +++++++++++++++---- .../components/schedules/SchedulesView.tsx | 30 +++++++++------- src/renderer/components/team/TeamListView.tsx | 4 +-- .../team/schedule/ScheduleSection.tsx | 20 ++++++----- 4 files changed, 60 insertions(+), 30 deletions(-) diff --git a/src/renderer/components/chat/viewers/MarkdownViewer.tsx b/src/renderer/components/chat/viewers/MarkdownViewer.tsx index d5412610..6adeacfb 100644 --- a/src/renderer/components/chat/viewers/MarkdownViewer.tsx +++ b/src/renderer/components/chat/viewers/MarkdownViewer.tsx @@ -1169,12 +1169,36 @@ export const MarkdownViewer: React.FC = React.memo(function {label} - {copyable && ( - <> - - - - )} + + + {copyable && } + + )} + + {/* Show raw toggle for no-label path */} + {!label && ( +
+ +
)} diff --git a/src/renderer/components/schedules/SchedulesView.tsx b/src/renderer/components/schedules/SchedulesView.tsx index 96d72051..c8a2b2f0 100644 --- a/src/renderer/components/schedules/SchedulesView.tsx +++ b/src/renderer/components/schedules/SchedulesView.tsx @@ -28,12 +28,14 @@ import { ScheduleRunLogDialog } from '../team/schedule/ScheduleRunLogDialog'; import { ScheduleRunRow } from '../team/schedule/ScheduleRunRow'; import { ScheduleStatusBadge } from '../team/schedule/ScheduleStatusBadge'; -const LaunchTeamDialog = lazy(() => - import('../team/dialogs/LaunchTeamDialog').then((m) => ({ default: m.LaunchTeamDialog })) -); - import type { Schedule, ScheduleRun, ScheduleStatus } from '@shared/types'; +const LaunchTeamDialog = lazy(() => + import('@renderer/components/team/dialogs/LaunchTeamDialog').then((m) => ({ + default: m.LaunchTeamDialog, + })) +); + // ============================================================================= // Constants // ============================================================================= @@ -565,15 +567,17 @@ export const SchedulesView = (): React.JSX.Element => { {/* Create/Edit Dialog */} - - - + {dialogOpen && ( + + + + )} ); }; diff --git a/src/renderer/components/team/TeamListView.tsx b/src/renderer/components/team/TeamListView.tsx index 5e597278..b3ab27f7 100644 --- a/src/renderer/components/team/TeamListView.tsx +++ b/src/renderer/components/team/TeamListView.tsx @@ -736,7 +736,7 @@ export const TeamListView = memo(function TeamListView(): React.JSX.Element { ); } - const createDialogElement = ( + const createDialogElement = showCreateDialog && ( ); - const launchDialogElement = ( + const launchDialogElement = launchDialogOpen && ( - - + {dialogOpen && ( + + + + )} ); };