Spaces:
Paused
Paused
export const createIframeContent = (css: string, html: string) => { | |
return ` | |
<html lang="en"> | |
<head> | |
<title>Codetree </title> | |
<style> | |
${css} | |
</style> | |
</head> | |
<body> | |
<div id="root"> | |
${html} | |
</div> | |
<script> | |
//====== send massage to iframe | |
window.onerror = function (err) { | |
window.parent.postMessage( | |
{ source: "iframe", type: "iframe_error", message: err }, | |
"*" | |
); | |
}; | |
window.onunhandledrejection = function (err) { | |
window.parent.postMessage( | |
{ source: "iframe", type: "iframe_error", message: err.reason }, | |
"*" | |
); | |
}; | |
//====== listen to income message of parent | |
window.onmessage = function (event) { | |
try { | |
eval(event.data); | |
} catch (error) { | |
throw error; | |
} | |
}; | |
</script> | |
</body> | |
</html> | |
`; | |
}; | |