exportRecording function exported
Last updated: 2026-03-05T23:42:26.235Z
Metrics
LOC: 66
Complexity: 9
Params: 1
Signature
exportRecording(framework: string): : Promise<void>
Source Code
export async function exportRecording(framework: string): Promise<void> {
if (panelState.isOptimizing) return;
try {
const result = (await sendToPage({
type: "EXPORT_RECORDING",
payload: {
framework,
options: {
includeAssertions: true,
smartSelectors: true,
smartWaits: true,
},
},
})) as { script?: string; error?: string };
if (!result?.script) {
addLog(result?.error ?? t("logRecordExportError"), "error");
return;
}
let finalScript = result.script;
let wasOptimized = false;
if (panelState.optimizeWithAI) {
panelState.isOptimizing = true;
renderRecordTab();
addLog(t("logRecordOptimizing"), "info");
try {
const [pageUrl, pageTitle] = await getInspectedPageInfo();
const optimized = (await sendToBackground({
type: "AI_OPTIMIZE_SCRIPT",
payload: {
script: result.script,
framework,
pageUrl,
pageTitle,
pageContext: undefined,
},
})) as string | null;
if (optimized) {
finalScript = optimized;
wasOptimized = true;
addLog(`${t("logRecordOptimized")} (${framework})`, "success");
} else {
addLog(t("logRecordOptimizeFailed"), "warn");
}
} finally {
panelState.isOptimizing = false;
}
}
panelState.readyScript = {
script: finalScript,
framework: `${framework}${wasOptimized ? " ✨" : ""}`,
};
renderRecordTab();
} catch (err) {
panelState.isOptimizing = false;
renderRecordTab();
addLog(`${t("logRecordExportError")}: ${err}`, "error");
}
}
Dependencies (Outgoing)
| Target | Type |
|---|---|
| renderRecordTab | calls |
Impact (Incoming)
| Source | Type |
|---|---|
| renderRecordTab | calls |