class LoginPrompt { constructor() { this.element = null; } mountOn(target) { if (this.element) return; // Already mounted this.element = document.createRange().createContextualFragment(`

Login

`).children[0]; this.element.querySelector("#continue-button").addEventListener("click", () => { if (this.onPasswordSubmitted) this.onPasswordSubmitted(this.element.querySelector("#code-input").value); }); target.appendChild(this.element); } unmount() { if (!this.element) return; // Already unmounted this.element.parentElement.removeChild(this.element); this.element = null; } } export default LoginPrompt;