92 Commits

Author SHA1 Message Date
Vault Automation
1cce49692f
[UI] Playwright Client Counts Workflows (#13994) (#14016)
* moves namespace service constants to separate file

* initial file for playwright client counts test

* adds playwright tests for client counts workflows

* updates api service post request middleware to read json data more reliably

* fixes acl policy intro page not displaying

* adds teardown to mfa playwright test

* adds steps and teardown to userpass playwright test

* fixes transform playwright test

* updates api service tests

* fixes policies page tests

Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2026-04-22 09:05:45 -06:00
Vault Automation
16f98c11ce
[UI] Dismiss Wizards in Playwright Tests (#12699) (#12728)
* adds constants util for wizards and updates service to use WizardId type

* updates wizards to use WIZARD_ID_MAP values

* updates wizard tests to use the service for dismissal

* updates playwright setup to add all wizard ids as dismissed in localStorage

* removes wizard dismissal step from existing playwright tests

* fixes issues accessing owner in beforeEach hooks of namespaces acceptance tests

Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2026-03-20 15:51:44 -04:00
Vault Automation
d8788f7792
UI: Consolidate error templates and not-found route handling (#12420) (#12431)
* fill out test coverage before replacing component

* rename page error selectors

* delete unused templates

* render Page::Error in vault.cluster.not-found

* replace NotFound component with Page::Error

* support full page errors for Page::Error component

* finish updating getErrorResponse usage and remove "not found" message

* delete unused template and route

* cleanup unused selectors

* whoops, missed this test update

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2026-02-19 21:39:57 +00:00
Vault Automation
35aa42fce1
UI: Improve policy flyout context awareness (#12334) (#12354)
* make router-lookup helper

* add policyPaths arg to flyout and update route cache to map

* update kv flyouts and test coverage

* round out test coverage, rename method from get to lookup

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2026-02-14 15:31:22 -08:00
Vault Automation
a407faa971
Namespace Intro Page (#12255) (#12311)
* improve dismissal logic, use AutomationSnippet component, use wizard service for tracking dismissal

* use class helper to check for multiple nodes when rendering tree chart, add test coverage

* update comments

* add modal for namespace intro and improve reusability

* style updates and general reusability updates

* make intro pages more generic and rename welcome to intro

* update tests

* update styles, use service to track intro visibility, rename components

* Update arg docs

Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com>
2026-02-11 23:17:27 +00:00
Vault Automation
47849d7cea
UI: Wizard Improvements (#12254) (#12261)
* improve dismissal logic, use AutomationSnippet component, use wizard service for tracking dismissal

* use class helper to check for multiple nodes when rendering tree chart, add test coverage

* update comments

* add wizard service unit test coverage

* move item filtering into helper func

Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com>
2026-02-09 23:33:13 +00:00
Vault Automation
47b000674b
UI: Convert namespace service to typescript (#12008) (#12039)
* convert to typescript

* move getOptions to namespace service

* delete unneeded ts file

* add test coverage and cleanup getOptions method

* use new admin const

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2026-01-27 17:07:50 -08:00
Vault Automation
0d0a06c491
Update eslint console rule (#11883) (#11948)
Allow for console error and warn and fail for everything else.
Remove disable rules for console.

Co-authored-by: Angelo Cordon <angelo.cordon@hashicorp.com>
2026-01-23 13:26:41 -08:00
Vault Automation
7a29044ea4
UI: Implement policy generator in kv v2 routes (#11798) (#11813)
* add support for initializing with capability paths

* only render flyout for enterprise versions

* update PolicyStanza to support object

* add policy generator to kv

* only set preset stanzas if no changes have been made

* add test coverage for kv adding policy generate to page headers

* add community test

* add test coverage to capabilities service

* add changelog

* add close callback

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2026-01-16 10:45:01 -08:00
Vault Automation
e6072b50e5
[UI] Ember Data Migration - PKI Overview/Cleanup (#11024) (#11117)
* removes store query from pki config route

* updates pki overview route to use api service

* removes remaining references to store in pki tests

* removes unused store service injections in pki components

* removes store dependency from pki engine

* removes ember data related unit tests for pki

* removes pki ember data models, adapters and serializers

* removes unused pagination service injections in config-ui, kv, pki and sync engines

* removes unused store service injections from pki engine

* updates dashboard quick-actions-card component to fetch options using api service

* removes path-help test using pki model

Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2025-12-03 20:37:20 +00:00
Vault Automation
d602d6164f
UI: Unsaved changes modal refinements (#10148) (#10248)
* Initial unsaved changes bug fixes

* Fix some transition bugs

* VAULT-39913 mount params

* Fix failing tests

* spitballin (#10179)

* spitballin

* fix second save bug

* Fix failing tests

* set initital state

* Put initial state back

---------



* Address feedback!

* Fix failing tests

* Add changelog

---------

Co-authored-by: Kianna <30884335+kiannaquach@users.noreply.github.com>
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-11-19 22:48:24 +00:00
Vault Automation
a92bffe5ce
UI: Hide Client Count Dashboard for PKI Only Clusters (#10513) (#10831)
* hide client counting dashboard for PKI only clusters

* add test and hide client count card

* convert to ts,
add pki only license banner, add comments, and support for multiple dismissed types

* add banner description

* add changelog entry

* update tests + add test coverage for multiple banners + info banner

* update tests

* add doc link

* Apply suggestions from code review



* naming updates

* update feature key format

* update casing

* add enum, revert naming, move helper to util

* test hidden nav link and dashboard card

---------

Co-authored-by: lane-wetmore <lane.wetmore@hashicorp.com>
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-11-17 09:11:14 -06:00
Vault Automation
0c6c13dd38
license: update headers to IBM Corp. (#10229) (#10233)
* license: update headers to IBM Corp.
* `make proto`
* update offset because source file changed

Signed-off-by: Ryan Cragun <me@ryan.ec>
Co-authored-by: Ryan Cragun <me@ryan.ec>
2025-10-21 15:20:20 -06:00
Vault Automation
048c2b3f5a
UI: Updating secrets engines routing structure (#10163) (#10206)
* updating routes from mounts/ to enable and updates to breadcrumbs

* updating all relevant tests

* leftover tests

Co-authored-by: Dan Rivera <dan.rivera@hashicorp.com>
2025-10-17 16:36:29 -04:00
Vault Automation
79bab3edd1
Backport UI Fix: UI permissions banner and side bar nav gating respect Vault glob semantics (+, deny precedence) into ce/main (#9800)
* UI Fix: UI permissions banner and side bar nav gating respect Vault glob semantics (+, deny precedence) (#9522)

* add in empty states when no permissions error but no list values found.

* wip

* wip cont.

* a lot closer... I think

* looking good, now to smoke test (Again)

* welp revert fix to adapter that borked it.

* add changelog

* test coverage—a lot

* fix some issues with root vs fallback show sidebar nav

* address pr comments and clean up comments and left over duplicate methods in permission service

* Apply suggestion from @hellobontempo

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>

* add resultant-acl in canary paths

* remove from canary and use capability check instead inside permissionsBanner

* clean up

* fix merge things

---------

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>

* add conditional for enterprise vs ce

---------

Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
Co-authored-by: Angel Garbarino <argarbarino@gmail.com>
2025-10-14 10:30:41 -06:00
Vault Automation
a5c1e7f428
[UI][Bugfix]: Unsaved changes modal + Confirm Leave (#9984) (#10091)
* Update unsaved changes service + modal

* Remove more unused consts..

* Remove controller

* Fix bugs!

* Add copyright headers

* Add sevice comment

* suggested changes (#9998)

* Address more feedback

* Add unsaved changes modals

* Update modal header and add generalized text

* Add tests

* Fix ts errors

* Address feedback

* Redirect to general-settings route

* Address feedback!

* Remove extra data-test-breadcrumb!

* Remove ember testing..

---------

Co-authored-by: Kianna <30884335+kiannaquach@users.noreply.github.com>
Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-10-13 15:07:44 -07:00
Vault Automation
bf32d52450
[UI] Ember Data Migration - KV Cleanup (#9623) (#9794)
* adds error handling for control groups to api service as post request middleware

* updates kv list route to use api service

* updates kv config route to use api service

* updates kv secrets overview route to use api service

* updates kv secret details route to use api service

* adds kv form

* updates kv metadata details route to use api service

* updates kv paths and version history routes to use api service

* refactors kv-data-fields component to form component

* updates kv secret create route to use api service

* updates kv secret edit route to use api service

* updates kv metadata edit route to use api service

* adds waitFor to async middleware in api service to attempt to fix race conditions in tests

* adds kvMetadata path to capabilities path map

* fixes kv list item delete test selector

* removes kv models, adapters and serializers

* removes store from kv addon

* removes ember data related test helpers from kv-run-commands

* updates comments that referred to kv ember data models

* updates kv-page-header tests

* updates model-form-fields test to use totp-key model rather than kv/data

* removes another reference to kv/data model from path-help test

* fixes kv v2 workflow create tests

* fixes issue returning metadata for secret when latest version is deleted

* decodes uri in path returned by api service parseError method

* fixes kv v2 edge cases tests

* fixes issue deleteing control group token in api service

* decodes url for control group token lookup in api service

* fixes version history linked block link

* defaults cas to 0 when creating new secret

* removes log

* adds ember-template-lint to kv engine

* more test fixes

* updates kv-suggestion-input component to use api service

* removes kv metadata model reference from quick actions card

* fixes sync destination sync secrets tests

* updates kv helpers from classic format

* updates kv helpers imports

* reverts to use secret.version in details edit route

* fixes isDeleted import in kv version history test

* adds waitFor to api service parseError method

* reverts removing async from addQueryParams api method

* attempts to fix test flakiness requesting custom metadata from data endpoint

* more tweaks to requesting metadata from data

* adds waitFor to requestData method

Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2025-10-02 12:52:26 -06:00
Vault Automation
0b939eaaf4
[UI] Ember Data Migration - KV Secrets/Metadata (#9508) (#9762)
* adds error handling for control groups to api service as post request middleware

* updates kv list route to use api service

* updates kv config route to use api service

* updates kv secrets overview route to use api service

* updates kv secret details route to use api service

* adds kv form

* updates kv metadata details route to use api service

* updates kv paths and version history routes to use api service

* refactors kv-data-fields component to form component

* updates kv secret create route to use api service

* updates kv secret edit route to use api service

* updates kv metadata edit route to use api service

* adds waitFor to async middleware in api service to attempt to fix race conditions in tests

* adds kvMetadata path to capabilities path map

* fixes kv list item delete test selector

* fixes kv v2 workflow create tests

* fixes issue returning metadata for secret when latest version is deleted

* decodes uri in path returned by api service parseError method

* fixes kv v2 edge cases tests

* fixes issue deleteing control group token in api service

* decodes url for control group token lookup in api service

* fixes version history linked block link

* defaults cas to 0 when creating new secret

* removes log

* adds ember-template-lint to kv engine

* more test fixes

* updates kv helpers from classic format

* updates kv helpers imports

* reverts to use secret.version in details edit route

* fixes isDeleted import in kv version history test

* adds waitFor to api service parseError method

* reverts removing async from addQueryParams api method

Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2025-10-02 10:44:22 -06:00
Vault Automation
5807d61ec7
[UI] Ember Data Migration - Control Group Error Handling (#9483) (#9548)
* adds error handling for control groups to api service as post request middleware

* adds waitFor to async middleware in api service to attempt to fix race conditions in tests

Co-authored-by: Jordan Reimer <zofskeez@gmail.com>
2025-10-01 10:58:16 -06:00
Jordan Reimer
3c7df59b6d
[UI] Ember Data Migration - Remove API Client (#31337)
* removes api client in favor of dependency

* removes api-client path from ignore files and configs

* removes normalize keys method from api service

* removes normalize keys test for api service
2025-07-21 09:13:26 -06:00
Jordan Reimer
4a76fdce59
updates login settings api vars to snake_case (#31336) 2025-07-18 12:09:28 -06:00
Jordan Reimer
8700becc45
[UI] Ember Data Migration - API Property Casing (#31325)
* updates api client vars to snake_case for custom messages

* updates api client vars to snake_case for tools

* updates api client vars to snake_case for sync

* updates api client vars to snake_case for secrets engine

* updates api client vars to snake_case for auth

* updates api client vars to snake_case for usage

* updates api client dep to point to gh repo

* fixes custom-messages service unit tests

* fixes configure-ssh test

* fixes configure-ssh test...again
2025-07-18 09:32:01 -06:00
claire bontempo
e29c6e3496
UI: Fix namespace context in capabilities service (#31276)
* test coverage for namespace capabilities checks;

* set namespace header with appropriate context

* add more test coverage, restore stub

* add changelog
2025-07-15 10:00:15 -07:00
claire bontempo
31051ef1e4
UI: Implement api service in auth components (#31085)
* change entity_id to camel casing, remove "backends" key from stored auth data

* fix tokenExpirationEpoch returning NaN, use authSuccess in auth service tests

* camel case mfa_requirement references

* refactor auth service

* implement api service for token method

* implement api service in standard auth methods

* add lookupSelf request to persistAuthData method in auht service instead of calling in components

* implement api service in oidc-jwt component

* implement api service in okta component

* implement api service in saml component

* use api service for wrapped_token query param

* remaining test updates, enterprise tests and stabilize auth helpers

* upate renew() to use new persistAuthData method, add a test

* revert as this will be addressed upstream

* rename supported-login-methods to auth-form-helpers and delete old supported-auth-backends helper, update tests

* cleanup normalize after testing mfa validation for each auth method

* update type declarations, set displayName in each method component

* stabilize redirect tests by waiting for login before asserting url

* stabilize tests

* modernize typescript syntax, move error const to util

* use mirage instead of vault server to resolve test race conditions

* fix file import
2025-07-09 10:11:23 -07:00
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
Evan Moncuso
689ede2da5
[UI] - introduce Posthog for Vault Dedicated managed clusters (#30425)
* add dummy provider and wire it into the app

* add tests for analytics service

* add posthog provider

* wire in posthog

* add HVD limitation for analytics and add unit test

* filter out sensitive event properties

* add changelog

* run copywrite headers

* update logging tests for analytics service

* update changelog format

* disable telemetry in test mode

* remove unnecessary test

* self review

* Update vault-reporting addon with analytics tracking changes

* address review feedback

---------

Co-authored-by: Jim Wright <jim.wright@hashicorp.com>
2025-05-23 19:40:29 +00:00
Jordan Reimer
712d3338b7
[UI] Ember Data Migration - Sync Overview/Destinations (#30524)
* improves path handling in capabilities service

* converts has-capability to class helper and adds pathKey and params args

* adds api service to sync engine

* updates sync types

* improves typings in paginate-list util

* adds api client error handling to error page component

* adds api utils for sync

* updates sync overview route and page component to use api service

* updates sync destinations route and page component to use api service

* adds missing copyright header

* fixes paginate-list regression

* fixes return type for has-capability helper

* Apply suggestions from code review

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

* fixes page error tests

* resolves suggestions from review

* fixes has-capability usage errors

* fixes comment in capabilities service

* more test fixes

---------

Co-authored-by: Angel Garbarino <Monkeychip@users.noreply.github.com>
2025-05-07 10:53:56 -06:00
Jordan Reimer
c0d05cd7b3
adds list response parsing to api service (#30455) 2025-04-30 13:13:35 -06:00
Jordan Reimer
38396b5882
[UI] API Service Error Parsing (#30454)
* adds error parsing method to api service

* replaces apiErrorMessage util instances with api service parseError

* removes apiErrorMessage util and tests

* removes ApiError type

* fixes issue in isLocalStorageSupported error handling
2025-04-30 11:44:19 -06:00
Jordan Reimer
733e757c67
[UI] Ember Data Migration - Custom Messages Cleanup (#30403)
* WIP updating config-ui engine to use api service and form class

* updates form-field component to support false values for radio types

* updates api-error-message util to log out error in dev env

* fixes issues in custom messages create and edit workflows

* fixes issues in api service

* updates capabilities handling

* updates to custom messages form

* removes store from custom messages tests

* removes store as dependency from config-ui engine

* removes commented out code in messages route

* updates custom-messages service to make requests with api service

* removes namespace args from fetchMessages

* adds tests for custom-messages service

* removes custom messages model, adapter and serializer

* removes custom messages serializer tests
2025-04-28 16:41:15 -06:00
Jordan Reimer
e18b0485f5
[UI] Ember Data Migration - Config UI Engine (#30238)
* WIP updating config-ui engine to use api service and form class

* updates form-field component to support false values for radio types

* updates api-error-message util to log out error in dev env

* fixes issues in custom messages create and edit workflows

* fixes issues in api service

* updates capabilities handling

* updates to custom messages form

* removes store from custom messages tests

* removes store as dependency from config-ui engine

* removes commented out code in messages route

* updates orderedKeys to displayFields in messages page component

* removes unneccesary method var from message create-and-edit component

* removes comment about model in message details page
2025-04-28 16:09:11 -06:00
Jordan Reimer
41a472fd68
fixes issues with capabilities service returning data under different path than what was provided (#30269) 2025-04-15 16:47:47 -06:00
Jordan Reimer
b959cab17b
update capabilities service to use api service (#30222) 2025-04-15 09:35:05 -06:00
Jordan Reimer
1c95305989
[UI] Ember Data Migration - Tools Unwrap Component (#30022)
* generates new api client version with runtime changes for VoidResponse type and JSONApiResponse transformer update

* removes extractData middleware from api service

* converts tools/unwrap component to ts and updates to use api service

* another api client version with more tweaks to JSONApiResponse in runtime

* removes extractData test for api service
2025-03-25 14:45:39 -06:00
claire bontempo
629b04c003
UI: Separate flag and version service concerns (#30001)
* move sync activation and capabilities from flag service to version service and components

* cleanup unnecessary args

* remove permissions service

* un-nest (some) modules

* simplify overview test so logic is easier to follow

* modal test

* update service tests

* change back to 403 because maybe it is permissions related?

* fix tests running on CE

* small cleanup

* fix logic based on feedback

* add logic for hvd specifically, update cluster tests
2025-03-25 10:24:11 -07:00
Jordan Reimer
bbcd0e0465
[UI] API Service (#29965)
* adds api service

* adds missing copyright headers

* Update ui/app/services/api.ts

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>

* removes response cache and comments from api service

* removes hide warnings condition from showWarnings middleware in api service

* splits out setHeaders test

---------

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2025-03-20 16:28:02 -06:00
claire bontempo
1fbbf9d76b
UI: Ember-data upgrade 5.3.2 prep: use custom service instead of extending ember-data store (#28695)
* rename store to pagination, remove store extension

* initial update of service test

* remove superfluous helper

* replace store with pagination service in main app

* update kmip engine syntax

* add pagination to kmip engine

* update to pagination in config-ui engine

* update sync engine to use pagination service

* use pagination service in kv engine

* use pagination service in ldap engine

* use pagination in pki engine

* update renaming clearDataset functions

* link to jira VAULT-31721

* remove comment
2024-10-17 10:00:57 -07:00
claire bontempo
217380cf87
UI: Ember data upgrade prep: cleanup store and lazyPaginatedQuery (#28690)
* revert hacks necessary for ember-data 4.11

* remove stubbed unloadAll and unloadRecord methods

* remove clearAllDatasets and just use clearDataset()
2024-10-11 14:18:56 -07:00
Chelsea Shaw
dcdbacd281
UI: Fix no data read within namespaces (#28311)
* Add test for capabilities within namespace

* update capabilities fetchMultiplePaths so that the resulting records have the non-prefixed path as ID
2024-09-06 13:44:09 -05:00
claire bontempo
f634808ed4
UI: Implement KV patch+subkey [enterprise] (#28212)
* UI: Implement overview page for KV v2 (#28162)

* build json editor patch form

* finish patch component and tests

* add tab to each route

* and path route

* add overview tab to tests

* update overview to use updated_time instead of created_time

* redirect relevant secret.details to secret.index

* compute secretState in component instead of pass as arg

* add capabilities service

* add error handling to fetchSubkeys adapter request

* add overview tabs to test

* add subtext to overview card

* remaining redirects in secret edit

* remove create new version from popup menu

* fix breadcrumbs for overview

* separate adding capabilities service

* add service to kv engine

* Revert "separate adding capabilities service"

This reverts commit bb70b12ab7dbcde0fbd2d4d81768e5c8b1c420cc.

* Revert "add service to kv engine"

This reverts commit bfa880535ef7d529d7610936b2c1aae55673d23f.

* update navigation test

* consistently navigate to secret.index route to be explicit

* finish overview navigation tests

* add copyright header

* update delete tests

* fix nav testrs

* cleanup secret edit redirects

* remove redundant async/awaits

* fix create test

* edge case tests

* secret acceptance tests

* final component tests

* rename kvSecretDetails external route to kvSecretOverview

* add comment

* UI: Add patch route and implement Page::Secret::Patch page component (sidebranch) (#28192)

* add tab to each route

* and path route

* add overview tab to tests

* update overview to use updated_time instead of created_time

* redirect relevant secret.details to secret.index

* compute secretState in component instead of pass as arg

* add capabilities service

* add error handling to fetchSubkeys adapter request

* add patch route and put in page component

* add patch secret action to subkeys card

* fix component name

* add patch capability

* alphabetize computed capabilities

* update links, cleanup selectors

* fix more merge conflict stuff

* add capabilities test

* add models to patch link

* add test for patch route

* rename external route

* add error templates

* make notes about enterprise tests, filter one

* remove errors, transition (redirect) instead

* redirect patch routes

* UI: Move fetching secret data to child route (#28198)

* remove @secret from metadata details

* use metadata model instead of secret in paths page

* put delete back into kv/data adapter

* grant access in control group test

* update metadata route and permissions

* remove secret from parent route, only fetch in details route

* change more permissions to route perms, add tests

* revert overview redirect from list view

* wrap model in conditional for perms

* remove redundant canReadCustomMetadata check

* rename adapter method

* handle overview 404

* remove comment

* add customMetadata as an arg

* update grantAccess in test

* make version param easier to follow

* VAULT-30494 handle 404 jira

* refactor capabilities to return an object

* update create tests

* add test for default truthy capabilities

* remove destroy-all-versions from kv/data adapter

* UI: Add enterprise checks (#28215)

* add enterprise check for subkey card

* add max height and scroll to subkey card

* only fetch subkeys if enterprise

* remove check in overview

* add test

* Update ui/tests/integration/components/kv/page/kv-page-overview-test.js

* fix test failures (#28222)

* add assertion

* add optional chaining

* create/delete versioned secret in each module

* wait for transition

* add another waitUntil

* UI: Add patch latest version to toolbar (#28223)

* add patch latest version action to toolbar

* make isPatchAllowed arg all encompassing

* no longer need model check

* use hash so both promises fire at the same time

* add subkeys to policy

* Update ui/lib/kv/addon/routes/secret.js

* add changelog

* small cleanup items! (#28229)

* add conditional for enterprise checking tabs

* cleanup fetchMultiplePaths method

* add test

* remove todo comment, ticket created and design wants to hold off

* keep transition, update comments

* cleanup tests, add index to breadcrumbs

* add some test coverage

* toggle so value is readable
2024-08-29 16:38:39 -07:00
claire bontempo
09c92b89cc
UI: Add capabilities service (#28168)
* add capabilities service

* remove from kv engine for now

* add canRead

* move await helper to addon

* add test

* update capabilities service to accommodate multiple paths

* address comments, make methods more explicit

* remove namespace key

* fix typo in test

* add namespace back!

* round out tests for other methods

* add test

* add comment
2024-08-23 16:17:19 -07:00
Chelsea Shaw
da7fad68b8
UI: Replace getNewModel with hydrateModel when model exists (#27978)
* Replace getNewModel with hydrateModel when model exists

* Update getNewModel to only handle nonexistant model types

* Update test

* clarify test

* Fix auth-config models which need hydration not generation

* rename file to match service name

* cleanup + tests

* Add comment about helpUrl method
2024-08-07 16:07:25 +00:00
Noelle Daley
61a37f2723
UI: fix token expiry banner for batch tokens (#27479)
* fix: calculate expiration of all batch tokens to ensure expire warning banner is shown

* fix: ensure allowExpiration doesn't get overridden

* fix: set expirationCalcTS outside of calculateExpression

* tests: verify expirationEpoch is calculated when only expiry_time is passed in

* fix: calculate expireTime using expire_time if its passed in

* tests: clean up auth tests

* tests: organize batch token vs. service token tests into separate module

* chore: update changelog

* Update changelog/27479.txt

Co-authored-by: Chelsea Shaw <82459713+hashishaw@users.noreply.github.com>

* fix: ensure tokens in test envs do not expire

* cleanup: pull setExpiration settings into own method & add tests

---------

Co-authored-by: Chelsea Shaw <82459713+hashishaw@users.noreply.github.com>
2024-06-28 01:05:53 +00:00
Angel Garbarino
927da859f7
UI Hide Secrets Sync from nav if not on license and/or no policy permissions (#27262)
* intial changes, haven't tested client counts or done test coverage

* client count rename getter to clairfy

* fix has-permission api-paths

* wip

* wip

* fix: explicitly refresh vault.cluster model to re-fetch activatedFeatures after actication

* tests: fix # of assertions for verifying that activation was called

* tests: tidy overview-test

* add additional api permission path and move fetch back to application

* add test coverage for the service

* cleanup

* remove test that checked for upsell without license or on community

* small comment change

* welp missed component getter

* flaky test fix

* flaky test

* small nit changes from pr reviews

* add defaults to sync mirage handler

* Gate sync overview route for users without access (#27320)

* routes: add redirect if user does not have access to sync

* tests: verify redirect on sync overview page happens

* tests: organize tests modules to ensure enterprise is explicitly set up

* add type enterprise required now because we do a check for this first

* fix oss test

---------

Co-authored-by: Noelle Daley <noelledaley@users.noreply.github.com>
2024-06-11 08:20:01 -06:00
Chelsea Shaw
83949e8023
UI: Don't show resultant-ACL banner in nested namespace if ancestor wildcard policy (#27263)
* Refactor hasWildcardAccess to check for ancestors of current namespace in globPaths

* Add extra test coverage

* remove tests for removed getter

* changelog + test update

* update test coverage to also check resulting permissionsBanner state

* rename hasWildcardAccess for clarity, add isDenied check on namespace access check

* Update changelog/27263.txt

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>

* Remove redundant check

---------

Co-authored-by: claire bontempo <68122737+hellobontempo@users.noreply.github.com>
2024-05-30 14:30:10 -05:00
claire bontempo
b7b53b0c41
UI: Delete wizard code (#27162)
* delete wizard files

* uninstall xstate

* delete codemods log

* remve features-selection css
2024-05-21 12:56:46 -07:00
Chelsea Shaw
5a0f0c955f
UI: Remove Pretender (#26943)
* Replace pretender with Mirage

* Remove dependency
2024-05-10 17:22:26 +00:00
Angel Garbarino
077c70fc1f
Enabling Secrets Sync for HVD (#26841)
* Allow Managed clusters to see Secrets Sync Overview and Sidebar nav (#26649)

* update badge text and allow hvd on secrets sync views

* update logic in Secrets Sync overview and cta for hvd.

* spacing

* rearrange based on pr feedback

* fix return on badgeText and cluster nav test

* fix landing cta tests

* update test to reflect new changes

* moved call to feature-flags from application route to the service to match patterns

* add managed test coverage on overview component test and remove premium feature so cta message appplies to both managed and non-managed clusters

* missed service name and unskip admin test

* clean up

* fix tests

* flags test fix

* Rename isManaged and managedNamespaceRoot (#26697)

* renames

* lowercase HVD to match

* missed some

* test failure

* [Secrets Sync] enable access to Sync clients page for HVD clusters (#26713)

* feat: split client counts navbar into separate component

* acceptance/clients/counts/overview-test: remove tests now covered by int tests

* clients counts route: rename isSecretsSyncActivated to showSecretsSync

* sync clients page: show unactivated state unless sync client history or feature is activated

* client counts navbar: show sync tab only if client history or is /able to be/ activated

* clients overview page: only show sync charts if activated

* fix: rename isManaged to isHvd

* acceptance/counts/overview-test: add HVD tests

* acceptance/counts/overview-test: clean up unused cruft

* aceptance/clients/counts/overview-test: ensure we dont get false negatives

* chore: move Clients::Error to Clients::Counts::Error

* chore: calculate showSecretSync in page component instead of route

* chore: add copyright headers

* acceptance/clients/counts/overview-test: stub activated flags to fix test

* [Secrets sync] update sync test selectors (#26824)

* acceptance/clients/counts/overview-test: use imported test selectors

* general-selectors: add missing emptyStateSubtitle property

* acceptance/clients/counts/sync: nest tests in top level module for easier test runs

* Add permissions check to show/hide activate button (#26840)

* add permissions check to flags service and consume in overview template

* add back missing refresh

* fix test failures

* add test coverage

* clean up

* address flaky test

* grr

* address test failures

* add changelog

* try to fix test failure only on gh

* fix fetch to match previous implementation of feature-flags

* fix failing test

* update comment

---------

Co-authored-by: Noelle Daley <noelledaley@users.noreply.github.com>
Co-authored-by: clairebontempo@gmail.com <clairebontempo@gmail.com>
2024-05-09 15:11:26 -06:00
Angel Garbarino
069975413f
Rename feature-flag service and include activation-flags state (#26476)
* rename

* move activation-flags state to the flags service

* clean up descriptions of services

* fix naming that I missed

* Update secrets.ts

* add test coverage

* services/flags: rearrage getters

---------

Co-authored-by: Noelle Daley <noelledaley@users.noreply.github.com>
2024-04-22 15:37:11 -07:00
Chelsea Shaw
f8f40c3d16
UI: Don't show Resultant-ACL banner when wildcard policy present (#26233)
* Add wildcard calc helpers to permissions service with tests

* Check for wildcard access when calculating permissionsBanner

* Move resultant-acl banner within TokenExpireWarning so it's mutually exclusive with token expired banner

* fix permissions banner if statement

* Add margin to resultant-acl

* cleanup comments
2024-04-03 10:14:16 -05:00