refactor: adopt shared page and workspace layouts

This commit is contained in:
2026-08-18 02:17:16 +02:00
parent c2efd6b7bd
commit 68459fde15
20 changed files with 314 additions and 287 deletions
@@ -1,6 +1,7 @@
import { lazy } from "react";
import {
ModuleSubnav,
WorkspaceLayout,
hasAnyScope,
useGuardedNavigate,
type ApiSettings,
@@ -64,15 +65,19 @@ export default function CampaignModulePage({
}
return (
<div className="workspace campaign-module-workspace">
<ModuleSubnav active={active} groups={groups} onSelect={select} />
<section className="workspace-content">
<WorkspaceLayout
className="campaign-module-workspace"
primary={<ModuleSubnav active={active} groups={groups} onSelect={select} />}
primaryLabel="Campaign module sections"
contentLabel="Campaign module content"
interfaceId="campaign.module-workspace"
helpModuleId="campaign"
>
{active === "queue"
? <OperatorQueuePage settings={settings} auth={auth} />
: active === "reports"
? <AggregateReportsPage settings={settings} />
: <CampaignListPage settings={settings} />}
</section>
</div>
</WorkspaceLayout>
);
}