import type { ApiSettings } from "../../types"; import Card from "../../components/Card"; import Button from "../../components/Button"; import PageTitle from "../../components/PageTitle"; import LoadingFrame from "../../components/LoadingFrame"; import { useCampaignWorkspaceData } from "./hooks/useCampaignWorkspaceData"; import { asRecord, formatDateTime, getCampaignJson } from "./utils/campaignView"; import { downloadJson, safeFileStem } from "./utils/draftEditor"; export default function CampaignJsonView({ settings, campaignId }: { settings: ApiSettings; campaignId: string }) { const { data, loading, error, reload } = useCampaignWorkspaceData(settings, campaignId); const version = data.currentVersion; const campaignJson = getCampaignJson(version); const campaign = asRecord(campaignJson.campaign); const filename = `${safeFileStem(String(campaign.id || data.campaign?.external_id || campaignId))}.json`; return (
Version {version ? `#${version.version_number}` : "—"} · Loaded {formatDateTime(version?.updated_at)}
{JSON.stringify(campaignJson, null, 2)} : {"{}"}}