github.com/blixtra/nomad@v0.7.2-0.20171221000451-da9a1d7bb050/ui/app/components/server-agent-row.js (about)

     1  import Ember from 'ember';
     2  import { lazyClick } from '../helpers/lazy-click';
     3  
     4  const { Component, inject, computed } = Ember;
     5  
     6  export default Component.extend({
     7    // TODO Switch back to the router service style when it is no longer feature-flagged
     8    // router: inject.service('router'),
     9    _router: inject.service('-routing'),
    10    router: computed.alias('_router.router'),
    11  
    12    tagName: 'tr',
    13    classNames: ['server-agent-row', 'is-interactive'],
    14    classNameBindings: ['isActive:is-active'],
    15  
    16    agent: null,
    17    isActive: computed('agent', 'router.currentURL', function() {
    18      // TODO Switch back to the router service style when it is no longer feature-flagged
    19      // const targetURL = this.get('router').urlFor('servers.server', this.get('agent'));
    20      // const currentURL = `${this.get('router.rootURL').slice(0, -1)}${this.get('router.currentURL')}`;
    21  
    22      const router = this.get('router');
    23      const targetURL = router.generate('servers.server', this.get('agent'));
    24      const currentURL = `${router.get('rootURL').slice(0, -1)}${router
    25        .get('currentURL')
    26        .split('?')[0]}`;
    27  
    28      return currentURL === targetURL;
    29    }),
    30  
    31    click() {
    32      const transition = () => this.get('router').transitionTo('servers.server', this.get('agent'));
    33      lazyClick([transition, event]);
    34    },
    35  });