{"ScriptPreparationCode":"/*your preparation JavaScript code goes here\r\nTo execute async code during the script preparation, wrap it as function globalMeasureThatScriptPrepareFunction, example:*/\r\nasync function globalMeasureThatScriptPrepareFunction() {\r\n // This function is optional, feel free to remove it.\r\n // await someThing();\r\n}","TestCases":[{"Name":"Dirty","Code":"printHtmlContent = (htmlContent) =\u003E {\r\n const iframe = document.createElement(\u0022iframe\u0022);\r\n iframe.style.display = \u0022none\u0022;\r\n document.body.appendChild(iframe);\r\n iframe.contentWindow.addEventListener(\u0022afterprint\u0022, () =\u003E {\r\n document.body.removeChild(iframe);\r\n });\r\n\r\n // Add CSS to remove headers and footers\r\n const cssToRemoveHeadersAndFooters = \u0060\u003Cstyle\u003E\r\n @page {\r\n margin: 0;\r\n size: auto;\r\n } @media print {\r\n body {\r\n margin: 0;\r\n padding: 0;\r\n }\r\n }\r\n \u003C/style\u003E \u0060;\r\n\r\n iframe.contentWindow.document.open();\r\n iframe.contentWindow.document.write(cssToRemoveHeadersAndFooters \u002B htmlContent);\r\n iframe.contentWindow.document.close();\r\n iframe.contentWindow.focus();\r\n };\r\n\r\n printHtmlContent(\u0027\u003Cdiv\u003EHello, World\u003C/div\u003E\u0027);","IsDeferred":false},{"Name":"Clean","Code":"printHtmlContent = (htmlContent) =\u003E {\r\n const createTemporaryIframe = () =\u003E {\r\n const iframe = document.createElement(\u0022iframe\u0022);\r\n iframe.style.display = \u0022none\u0022;\r\n document.body.appendChild(iframe);\r\n return iframe;\r\n };\r\n \r\n const writeToIframe = (iframe, content) =\u003E {\r\n iframe.contentWindow.document.open();\r\n iframe.contentWindow.document.write(content);\r\n iframe.contentWindow.document.close();\r\n };\r\n \r\n const addPrintEventListeners = (iframe) =\u003E {\r\n iframe.contentWindow.addEventListener(\u0022afterprint\u0022, () =\u003E {\r\n document.body.removeChild(iframe);\r\n });\r\n };\r\n \r\n const printIframe = (iframe) =\u003E {\r\n iframe.contentWindow.focus();\r\n };\r\n \r\n // Add CSS to remove headers and footers\r\n const cssToRemoveHeadersAndFooters = \u0060 \u003Cstyle\u003E @page { margin: 0; size: auto; } @media print { body { margin: 0; padding: 0; } } \u003C/style\u003E \u0060;\r\n \r\n const iframe = createTemporaryIframe();\r\n writeToIframe(iframe, cssToRemoveHeadersAndFooters \u002B htmlContent);\r\n addPrintEventListeners(iframe); printIframe(iframe);\r\n};\r\n\r\nprintHtmlContent(\u0027\u003Cdiv\u003EHello, World\u003C/div\u003E\u0027);","IsDeferred":false}]}