1 | import { MdNavigationDrawer } from "./MdNavigationDrawer.js" |
2 | |
3 | export class MdMenuButton extends HTMLButtonElement { |
4 | |
5 | constructor() { |
6 | super() |
7 | this.abreDrawer = this.abreDrawer.bind(this) |
8 | } |
9 | |
10 | connectedCallback() { |
11 | this.type = "button" |
12 | this.classList.add("md-standard-icon-button") |
13 | this.innerHTML = |
14 | `<span class="material-symbols-outlined">menu</span>` |
15 | this.addEventListener("click", this.abreDrawer) |
16 | } |
17 | |
18 | disconnectedCallback() { |
19 | this.removeEventListener("click", this.abreDrawer) |
20 | } |
21 | |
22 | abreDrawer() { |
23 | const drawer = document.querySelector(".drawer") |
24 | if (drawer instanceof MdNavigationDrawer) { |
25 | drawer.abre() |
26 | } |
27 | } |
28 | } |
29 | |
30 | customElements.define("md-menu-button", MdMenuButton, { extends: "button" }) |