github.com/hernad/nomad@v1.6.112/ui/app/components/region-switcher.js (about) 1 /** 2 * Copyright (c) HashiCorp, Inc. 3 * SPDX-License-Identifier: MPL-2.0 4 */ 5 6 import Component from '@ember/component'; 7 import { computed } from '@ember/object'; 8 import { inject as service } from '@ember/service'; 9 import classic from 'ember-classic-decorator'; 10 11 @classic 12 export default class RegionSwitcher extends Component { 13 @service system; 14 @service router; 15 @service store; 16 17 @computed('system.regions') 18 get sortedRegions() { 19 return this.get('system.regions').toArray().sort(); 20 } 21 22 gotoRegion(region) { 23 this.router.transitionTo('jobs', { 24 queryParams: { region }, 25 }); 26 } 27 28 get keyCommands() { 29 if (this.sortedRegions.length <= 1) { 30 return []; 31 } 32 return this.sortedRegions.map((region, iter) => { 33 return { 34 label: `Switch to ${region} region`, 35 pattern: ['r', `${iter + 1}`], 36 action: () => this.gotoRegion(region), 37 }; 38 }); 39 } 40 }