mirror of
				https://github.com/optim-enterprises-bv/vault.git
				synced 2025-11-04 12:37:59 +00:00 
			
		
		
		
	* Create app-footer component with tests * glimmerize vault route + controller * Add dev mode badge to new footer * Fix version on dashboard * update app-footer tests * update version title component * Handle case for chroot namespace fail on health check * cleanup * fix ent tests * add missing headers * extra version fetch on login success, clear version on logout and seal * Add coverage for clearing version on seal * rename isOSS to isCommunity * remove is-version helper * test version in footer on unseal flow * fix enterprise test * VAULT-21399 test coverage * VAULT-21400 test coverage
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/**
 | 
						|
 * Copyright (c) HashiCorp, Inc.
 | 
						|
 * SPDX-License-Identifier: BUSL-1.1
 | 
						|
 */
 | 
						|
 | 
						|
import { later } from '@ember/runloop';
 | 
						|
import { Promise } from 'rsvp';
 | 
						|
import { inject as service } from '@ember/service';
 | 
						|
import Route from '@ember/routing/route';
 | 
						|
import Ember from 'ember';
 | 
						|
 | 
						|
const SPLASH_DELAY = 300;
 | 
						|
 | 
						|
export default class VaultRoute extends Route {
 | 
						|
  @service router;
 | 
						|
  @service store;
 | 
						|
  @service version;
 | 
						|
 | 
						|
  beforeModel() {
 | 
						|
    // So we can know what type (Enterprise/Community) we're running
 | 
						|
    return this.version.fetchType();
 | 
						|
  }
 | 
						|
 | 
						|
  model() {
 | 
						|
    const delay = Ember.testing ? 0 : SPLASH_DELAY;
 | 
						|
    // hardcode single cluster
 | 
						|
    const fixture = {
 | 
						|
      data: {
 | 
						|
        id: '1',
 | 
						|
        type: 'cluster',
 | 
						|
        attributes: {
 | 
						|
          name: 'vault',
 | 
						|
        },
 | 
						|
      },
 | 
						|
    };
 | 
						|
    this.store.push(fixture);
 | 
						|
    return new Promise((resolve) => {
 | 
						|
      later(() => {
 | 
						|
        resolve(this.store.peekAll('cluster'));
 | 
						|
      }, delay);
 | 
						|
    });
 | 
						|
  }
 | 
						|
 | 
						|
  redirect(model, transition) {
 | 
						|
    if (model.get('length') === 1 && transition.targetName === 'vault.index') {
 | 
						|
      return this.router.transitionTo('vault.cluster', model.get('firstObject.name'));
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 |