// TODO: This file was created by bulk-decaffeinate. // Sanity-check the conversion and remove this comment. /* * decaffeinate suggestions: * DS002: Fix invalid constructor * DS101: Remove unnecessary use of Array.from * DS206: Consider reworking classes to avoid initClass * Full docs: https://github.com/decaffeinate/decaffeinate/blob/main/docs/suggestions.md */ const Cls = (app.views.Path = class Path extends app.View { constructor(...args) { this.onClick = this.onClick.bind(this); this.afterRoute = this.afterRoute.bind(this); super(...args); } static initClass() { this.className = '_path'; this.attributes = {role: 'complementary'}; this.events = {click: 'onClick'}; this.routes = {after: 'afterRoute'}; } render(...args) { this.html(this.tmpl('path', ...Array.from(args))); this.show(); } show() { if (!this.el.parentNode) { this.prependTo(app.el); } } hide() { if (this.el.parentNode) { $.remove(this.el); } } onClick(event) { let link; if (link = $.closestLink(event.target, this.el)) { this.clicked = true; } } afterRoute(route, context) { if (context.type) { this.render(context.doc, context.type); } else if (context.entry) { if (context.entry.isIndex()) { this.render(context.doc); } else { this.render(context.doc, context.entry.getType(), context.entry); } } else { this.hide(); } if (this.clicked) { this.clicked = null; app.document.sidebar.reset(); } } }); Cls.initClass();