vault/ui/app/components/dashboard/secrets-engines-card.ts
Jordan Reimer 2417aa9aad
[UI] Ember Data Migration - Secrets Engine (#30829)
* [UI] Ember Data Migration - Secrets Engine Resource (#30791)

* adds base factory for resources and secrets engine resource

* updates dashboard and secret-engine list route to fetch mounts from api service

* updates secret backends routes to use api service

* updates secrets engine config routes to use api service

* updates secrets backend route to use internal mounts endpoint and fixes error handling

* updates property casing in config details card component

* fixes dashboard tests

* fixes issues with engine configuration

* updates api service to only set token header if value is defined in auth service

* fixes more tests

* Update ui/app/routes/vault/cluster/secrets/backend/configuration/index.js

Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>

* removes alwaysRender from publicKey field in secret engine configuration details component

* removes unused hideToggle arg from secret engine mount config template

* updates kv config route to load secret-engine model

* fixes kv config route

---------

Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>

* [UI] Ember Data Migration - Secrets Engine Forms (#30951)

* adds secrets engine form class

* updates mount-secret-backend route and form component to use secrets engine form class and api service

* updates to form class proxy for nested form data properties

* adds form classes for configurable secrets engines

* updates secrets engine config edit route and components to use form classes and api service

* adds missing copyright header

* fixes tests

* fixes type error

* updates configure-ssh component to use form class and api service

* updates configure-ssh tests

* updates configuration-wif component tests

* fixes mount secret backend and form tests

* adds method to normalize request key casing to api service

* addresses pr review feedback

* removes unused secrets engine config models, adapters and serializers (#30980)

* fixes azure config tests

* fixes more ent tests

---------

Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>
2025-06-16 14:29:17 -06:00

34 lines
871 B
TypeScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: BUSL-1.1
*/
import Component from '@glimmer/component';
import type SecretsEngineResource from 'vault/resources/secrets/engine';
/**
* @module DashboardSecretsEnginesCard
* DashboardSecretsEnginesCard component are used to display 5 secrets engines to the user.
*
* @example
* ```js
* <DashboardSecretsEnginesCard @secretsEngines={{@model.secretsEngines}} />
* ```
* @param {array} secretsEngines - list of secrets engines
*/
interface Args {
secretsEngines: SecretsEngineResource[];
}
export default class DashboardSecretsEnginesCard extends Component<Args> {
get filteredSecretsEngines() {
return this.args.secretsEngines?.filter((secretEngine) => secretEngine.shouldIncludeInList);
}
get firstFiveSecretsEngines() {
return this.filteredSecretsEngines?.slice(0, 5);
}
}