mirror of
				https://github.com/optim-enterprises-bv/vault.git
				synced 2025-11-03 20:17:59 +00:00 
			
		
		
		
	* removes on click modifier from LinkTo elements * adds changelog * reverts button changes and closes dropdown in next tick of runloop * removes comment
		
			
				
	
	
		
			45 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import Component from '@glimmer/component';
 | 
						|
import { action } from '@ember/object';
 | 
						|
import { inject as service } from '@ember/service';
 | 
						|
import { next } from '@ember/runloop';
 | 
						|
 | 
						|
/**
 | 
						|
 * @module StatusMenu
 | 
						|
 * StatusMenu component is the drop down menu on the main navigation.
 | 
						|
 *
 | 
						|
 * @example
 | 
						|
 * ```js
 | 
						|
 * <StatusMenu @label='user' @onLinkClick={{action Nav.closeDrawer}}/>
 | 
						|
 * ```
 | 
						|
 * @param {string} [ariaLabel] - aria label for the status icon.
 | 
						|
 * @param {string} [label] - label for the status menu.
 | 
						|
 * @param {string} [type] - determines where the component is being used. e.g. replication, auth, etc.
 | 
						|
 * @param {function} [onLinkClick] - function to handle click on the nested links under content.
 | 
						|
 *
 | 
						|
 */
 | 
						|
 | 
						|
export default class StatusMenu extends Component {
 | 
						|
  @service currentCluster;
 | 
						|
  @service auth;
 | 
						|
  @service media;
 | 
						|
  @service router;
 | 
						|
 | 
						|
  get type() {
 | 
						|
    return this.args.type || 'cluster';
 | 
						|
  }
 | 
						|
 | 
						|
  get glyphName() {
 | 
						|
    return this.type === 'user' ? 'user' : 'circle-dot';
 | 
						|
  }
 | 
						|
 | 
						|
  @action
 | 
						|
  onLinkClick(dropdown) {
 | 
						|
    if (dropdown) {
 | 
						|
      // strange issue where closing dropdown triggers full transition which redirects to auth screen in production builds
 | 
						|
      // closing dropdown in next tick of run loop fixes it
 | 
						|
      next(() => dropdown.actions.close());
 | 
						|
    }
 | 
						|
    this.args.onLinkClick();
 | 
						|
  }
 | 
						|
}
 |