open-consul/ui/packages/consul-ui/app/helpers/is-href.js
John Cowen 0ca087cc77
ui: Native-ize class based helpers (#9337)
* Install ember-decorators/observes

* Remove filter-predicate

* Nativize `env` and inject env service

* Nativize all other class based helpers
2020-12-08 09:27:28 +00:00

22 lines
635 B
JavaScript

/*eslint ember/no-observers: "warn"*/
// TODO: Remove ^
import Helper from '@ember/component/helper';
import { inject as service } from '@ember/service';
import { observes } from '@ember-decorators/object';
export default class IsHrefHelper extends Helper {
@service('router') router;
compute([targetRouteName, ...rest]) {
if (this.router.currentRouteName.startsWith('nspace.') && targetRouteName.startsWith('dc.')) {
targetRouteName = `nspace.${targetRouteName}`;
}
return this.router.isActive(...[targetRouteName, ...rest]);
}
@observes('router.currentURL')
onURLChange() {
this.recompute();
}
}