feat(ui): unify team, security, and notification settings layouts

Extract shared settings-layout components and a dedicated team
danger-zone page. Enable modal editing for security resources,
polish OAuth/API-token controls, and align notification and
service configuration UI with the new navigation patterns.
This commit is contained in:
Andras Bacsai committed 2026-08-05 16:24:31 +02:00
1 parent 5842d77b81
commit 2291c3fa1c
83 files changed
+1585 -597

No files matched your search

@@ -0,0 +1,31 @@
<?php
it('uses shared sidebar navigation for keys and tokens pages', function () {
$sidebar = file_get_contents(resource_path('views/components/security/settings-layout.blade.php'));
$navbar = file_get_contents(resource_path('views/components/dashboard/navbar.blade.php'));
foreach ([
'security/private-key/index.blade.php',
'security/private-key/show.blade.php',
'security/cloud-tokens.blade.php',
'security/cloud-provider-token/show.blade.php',
'security/cloud-init-scripts.blade.php',
'security/cloud-init-script/show.blade.php',
'security/api-tokens.blade.php',
] as $viewPath) {
expect(file_get_contents(resource_path("views/livewire/{$viewPath}")))
->toContain('<x-security.settings-layout>')
->not->toContain('<x-security.navbar');
}
expect($sidebar)
->toContain('application-settings-navigation')
->toContain("'label' => 'Private Keys'")
->toContain("'label' => 'Cloud Tokens'")
->toContain("'label' => 'Cloud-Init Scripts'")
->toContain("'label' => 'API Tokens'");
expect($navbar)
->toContain("request()->routeIs('security.*')")
->not->toContain("['label' => 'API Tokens', 'route' => 'security.api-tokens'");
});