'use strict';
const Tab = require(__dirname + '/../components/tab.js');
class FunctionalTab extends Tab {
	template() {
		return `
					
						close
					
					
						${this.props.materialIcon}
					
				 `;
	}
	init() {
		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.registerListeners();
		}
	}
	registerListeners() {
		super.registerListeners();
		this.$el.addEventListener('mouseover', () => {
			this.$closeButton.classList.add('active');
		});
		this.$el.addEventListener('mouseout', () => {
			this.$closeButton.classList.remove('active');
		});
		this.$closeButton.addEventListener('click', e => {
			this.props.onDestroy();
			e.stopPropagation();
		});
	}
}
module.exports = FunctionalTab;