Files
vault/ui/app/app.js
claire bontempo 49b46ead82 UI: Fix enabling replication capabilities bug (#28371)
* add capabilities service to replication engine

* fix capabilities paths in route file

* pass updated capabilities using getters

* add changelog

* fix logic so default is based on undefined capabilities (not no mode)
2024-09-12 08:51:11 -05:00

135 lines
3.3 KiB
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: BUSL-1.1
*/
import Application from '@ember/application';
import Resolver from 'ember-resolver';
import loadInitializers from 'ember-load-initializers';
import config from 'vault/config/environment';
export default class App extends Application {
modulePrefix = config.modulePrefix;
podModulePrefix = config.podModulePrefix;
Resolver = Resolver;
engines = {
'config-ui': {
dependencies: {
services: ['auth', 'flash-messages', 'namespace', 'router', 'store', 'version', 'custom-messages'],
},
},
'open-api-explorer': {
dependencies: {
services: ['auth', 'flash-messages', 'namespace', 'router', 'version'],
},
},
replication: {
dependencies: {
services: [
'auth',
'capabilities',
'flash-messages',
'namespace',
'replication-mode',
'router',
'store',
'version',
'-portal',
],
externalRoutes: {
replication: 'vault.cluster.replication.index',
vault: 'vault.cluster',
},
},
},
kmip: {
dependencies: {
services: [
'auth',
'download',
'flash-messages',
'namespace',
'path-help',
'router',
'store',
'version',
'secret-mount-path',
],
externalRoutes: {
secrets: 'vault.cluster.secrets.backends',
},
},
},
kubernetes: {
dependencies: {
services: ['router', 'store', 'secret-mount-path', 'flash-messages'],
externalRoutes: {
secrets: 'vault.cluster.secrets.backends',
},
},
},
ldap: {
dependencies: {
services: ['router', 'store', 'secret-mount-path', 'flash-messages', 'auth'],
externalRoutes: {
secrets: 'vault.cluster.secrets.backends',
},
},
},
kv: {
dependencies: {
services: [
'capabilities',
'control-group',
'download',
'flash-messages',
'namespace',
'router',
'secret-mount-path',
'store',
'version',
],
externalRoutes: {
secrets: 'vault.cluster.secrets.backends',
syncDestination: 'vault.cluster.sync.secrets.destinations.destination',
},
},
},
pki: {
dependencies: {
services: [
'auth',
'download',
'flash-messages',
'namespace',
'path-help',
'router',
'secret-mount-path',
'store',
'version',
],
externalRoutes: {
secrets: 'vault.cluster.secrets.backends',
externalMountIssuer: 'vault.cluster.secrets.backend.pki.issuers.issuer.details',
secretsListRootConfiguration: 'vault.cluster.secrets.backend.configuration',
},
},
},
sync: {
dependencies: {
services: ['flash-messages', 'flags', 'router', 'store', 'version'],
externalRoutes: {
kvSecretOverview: 'vault.cluster.secrets.backend.kv.secret.index',
clientCountOverview: 'vault.cluster.clients',
},
},
},
};
}
loadInitializers(App, config.modulePrefix);
/**
* @typedef {import('ember-source/types')} EmberTypes
*/