diff --git a/app/renderer/js/components/functional-tab.js b/app/renderer/js/components/functional-tab.ts similarity index 71% rename from app/renderer/js/components/functional-tab.js rename to app/renderer/js/components/functional-tab.ts index 71d53230..ba7aa19d 100644 --- a/app/renderer/js/components/functional-tab.js +++ b/app/renderer/js/components/functional-tab.ts @@ -1,9 +1,10 @@ 'use strict'; -const Tab = require(__dirname + '/../components/tab.js'); +import Tab = require('./tab'); class FunctionalTab extends Tab { - template() { + $closeButton: Element; + template(): string { return `
close @@ -14,16 +15,16 @@ class FunctionalTab extends Tab {
`; } - init() { + init(): void { this.$el = this.generateNodeFromTemplate(this.template()); if (this.props.name !== 'Settings') { - this.props.$root.appendChild(this.$el); - this.$closeButton = this.$el.getElementsByClassName('server-tab-badge')[0]; + this.props.$root.append(this.$el); + this.$closeButton = this.$el.querySelectorAll('.server-tab-badge')[0]; this.registerListeners(); } } - registerListeners() { + registerListeners(): void { super.registerListeners(); this.$el.addEventListener('mouseover', () => { @@ -34,11 +35,11 @@ class FunctionalTab extends Tab { this.$closeButton.classList.remove('active'); }); - this.$closeButton.addEventListener('click', e => { + this.$closeButton.addEventListener('click', (e: Event) => { this.props.onDestroy(); e.stopPropagation(); }); } } -module.exports = FunctionalTab; +export = FunctionalTab;