Files
vault/ui/app/routes/vault.js
claire bontempo 918642bd9c UI: Ember deprecation prep for 5.0: ember-data:deprecate-array-like (#26170)
* remove .get() from cluster and vault route

* replace .get() use in adapters

* remove .get() from components part 1

* remove .get() from string-list

* remaining components

* controller .get() removal

* remove .get() use in mixins

* routes/cluster/access* .get() replacement

* policy index route

* routes/secrets/backend*

* route/cluster*

* serializers

* is-active-route

* remaining top-level addon gets

* replication get()

* revery change that broke things

* woops, revert other store service change

* revert some controller changes

* revert get on URLSearchParams class

* remove .sortBy ember method

* small cleanup items

* small cleanups from PR review
2024-03-28 12:13:33 -07:00

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 { 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.length === 1 && transition.targetName === 'vault.index') {
return this.router.transitionTo('vault.cluster', model[0].name);
}
}
}