| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- // TODO: This file was created by bulk-decaffeinate.
- // Sanity-check the conversion and remove this comment.
- /*
- * decaffeinate suggestions:
- * DS002: Fix invalid constructor
- * DS206: Consider reworking classes to avoid initClass
- * Full docs: https://github.com/decaffeinate/decaffeinate/blob/main/docs/suggestions.md
- */
- const Cls = (app.views.Menu = class Menu extends app.View {
- constructor(...args) {
- this.onGlobalClick = this.onGlobalClick.bind(this);
- super(...args);
- }
- static initClass() {
- this.el = '._menu';
- this.activeClass = 'active';
-
- this.events =
- {click: 'onClick'};
- }
- init() {
- $.on(document.body, 'click', this.onGlobalClick);
- }
- onClick(event) {
- const target = $.eventTarget(event);
- if (target.tagName === 'A') { target.blur(); }
- }
- onGlobalClick(event) {
- if (event.which !== 1) { return; }
- if (typeof event.target.hasAttribute === 'function' ? event.target.hasAttribute('data-toggle-menu') : undefined) {
- this.toggleClass(this.constructor.activeClass);
- } else if (this.hasClass(this.constructor.activeClass)) {
- this.removeClass(this.constructor.activeClass);
- }
- }
- });
- Cls.initClass();
|