{"ScriptPreparationCode":"const fillTitle = shadow =\u003E {\r\n shadow.getElementById(\u0027title\u0027).textContent = \u0027Lorem ipsum dolor sit amet\u0027;\r\n};\r\n\r\nconst attachEvents = shadow =\u003E {\r\n const button = shadow.getElementById(\u0027button\u0027);\r\n button.addEventListener(\u0027mousedown\u0027, () =\u003E {});\r\n button.addEventListener(\u0027mouseup\u0027, () =\u003E {});\r\n button.addEventListener(\u0027click\u0027, () =\u003E {});\r\n button.addEventListener(\u0027dragstart\u0027, () =\u003E {});\r\n button.addEventListener(\u0027dragend\u0027, () =\u003E {});\r\n button.addEventListener(\u0027dragcancel\u0027, () =\u003E {});\r\n button.addEventListener(\u0027dragmove\u0027, () =\u003E {});\r\n button.addEventListener(\u0027custom\u0027, () =\u003E {});\r\n};\r\n\r\nconst renderWithHTML = shadow =\u003E {\r\n shadow.innerHTML = document.getElementById(\u0027component\u0027).innerHTML;\r\n};\r\nconst renderWithClone = shadow =\u003E {\r\n shadow.appendChild(document.getElementById(\u0027component\u0027).content.cloneNode(true));\r\n};\r\n\r\nconst wrapper = document.getElementById(\u0027wrapper\u0027);\r\nconst content = document.getElementById(\u0027content\u0027).innerHTML;\r\n\r\nconst examplesHTML = \u0060\u003Cmy-component-a\u003E${ content }\u003C/my-component-a\u003E\u0060.repeat(5000);\r\nconst examplesClone = \u0060\u003Cmy-component-b\u003E${ content }\u003C/my-component-b\u003E\u0060.repeat(5000);\r\n\r\nclass MyComponent extends HTMLElement {\r\n render() {};\r\n\r\n constructor() {\r\n super();\r\n const shadow = this.attachShadow({\r\n mode: \u0027open\u0027\r\n });\r\n this.render(shadow);\r\n\r\n fillTitle(shadow);\r\n attachEvents(shadow);\r\n }\r\n}\r\n\r\nclass MyComponentA extends MyComponent {\r\n render(shadow) {\r\n return renderWithHTML(shadow);\r\n };\r\n}\r\nclass MyComponentB extends MyComponent {\r\n render(shadow) {\r\n return renderWithClone(shadow);\r\n };\r\n}\r\n\r\nwindow.customElements.get(\u0027my-component-a\u0027) || customElements.define(\u0027my-component-a\u0027, MyComponentA);\r\nwindow.customElements.get(\u0027my-component-b\u0027) || customElements.define(\u0027my-component-b\u0027, MyComponentB);\r\n\r\nwindow.renderTestHTMLString = () =\u003E wrapper.innerHTML = examplesHTML;\r\nwindow.renderTestCloneNode = () =\u003E wrapper.innerHTML = examplesClone;","TestCases":[{"Name":"HTML string","Code":"renderTestHTMLString();","IsDeferred":false},{"Name":"Clone node","Code":"renderTestCloneNode();","IsDeferred":false}],"UseTinyBench":false}