import { action } from "@ember/object"; import Controller from "@ember/controller"; import { inject as service } from "@ember/service"; export default Controller.extend({ router: service(), get adminRoutes() { return this.allAdminRoutes.filter((r) => this.routeExists(r.full_location)); }, get brokenAdminRoutes() { return this.allAdminRoutes.filter( (r) => !this.routeExists(r.full_location) ); }, get allAdminRoutes() { return this.model .filter((p) => p?.enabled) .map((p) => { return p.admin_route; }) .filter(Boolean); }, @action toggleMenu() { const adminDetail = document.querySelector(".admin-detail"); ["mobile-closed", "mobile-open"].forEach((state) => { adminDetail.classList.toggle(state); }); }, routeExists(routeName) { try { this.router.urlFor(routeName); return true; } catch (e) { return false; } }, });