diff --git a/console/src/app/app-routing.module.ts b/console/src/app/app-routing.module.ts index f3682fa13a..5c0fc90c04 100644 --- a/console/src/app/app-routing.module.ts +++ b/console/src/app/app-routing.module.ts @@ -78,6 +78,14 @@ const routes: Routes = [ roles: ['iam.read', 'iam.read'], }, }, + { + path: 'actions-v1', + loadChildren: () => import('./pages/org-actions/actions.module'), + canActivate: [authGuard, roleGuard], + data: { + roles: ['iam.read', 'iam.read'], + }, + }, { path: 'grants', loadChildren: () => import('./pages/grants/grants.module'), diff --git a/console/src/app/modules/nav/nav.component.html b/console/src/app/modules/nav/nav.component.html index 83c108ca6d..d0c445dc19 100644 --- a/console/src/app/modules/nav/nav.component.html +++ b/console/src/app/modules/nav/nav.component.html @@ -122,7 +122,7 @@ {{ 'MENU.ACTIONS' | translate }} diff --git a/console/src/app/modules/nav/nav.component.scss b/console/src/app/modules/nav/nav.component.scss index 8554b5b902..b5db3c6bff 100644 --- a/console/src/app/modules/nav/nav.component.scss +++ b/console/src/app/modules/nav/nav.component.scss @@ -33,7 +33,7 @@ display: flex; align-items: center; overflow-x: auto; - overflow-y: visible; // Allow the indicator line to show + overflow-y: hidden; // Allow the indicator line to show align-self: stretch; position: absolute; top: 0; diff --git a/console/src/app/modules/new-header/new-header.component.html b/console/src/app/modules/new-header/new-header.component.html index 0730eb8d7d..82540f0db7 100644 --- a/console/src/app/modules/new-header/new-header.component.html +++ b/console/src/app/modules/new-header/new-header.component.html @@ -11,6 +11,7 @@ ariaLabel="{{ instance.name }}" > + - + - + {{ bread.name }} diff --git a/console/src/app/modules/new-header/new-header.component.ts b/console/src/app/modules/new-header/new-header.component.ts index 261d940983..291c783208 100644 --- a/console/src/app/modules/new-header/new-header.component.ts +++ b/console/src/app/modules/new-header/new-header.component.ts @@ -57,7 +57,9 @@ export class NewHeaderComponent { protected readonly instanceSelectorSecondStep = signal(false); protected readonly activeOrganizationQuery = this.newOrganizationService.activeOrganizationQuery(); protected readonly isHandset: Signal; - protected readonly breadcrumbs: Signal; + protected readonly breadcrumbs: Signal = toSignal(this.breadcrumbService.breadcrumbs$, { initialValue: [] }); + protected readonly nestedBreadcrumbs: Signal; + protected readonly onInstanceLevel: Signal; constructor( private readonly newOrganizationService: NewOrganizationService, @@ -68,7 +70,8 @@ export class NewHeaderComponent { private readonly breadcrumbService: BreadcrumbService, ) { this.isHandset = this.getIsHandset(); - this.breadcrumbs = this.getBreadcrumbs(); + this.nestedBreadcrumbs = this.getBreadcrumbs(); + this.onInstanceLevel = this.isOnInstanceLevel(); effect(() => { if (this.listMyZitadelPermissionsQuery.isError()) { @@ -96,11 +99,17 @@ export class NewHeaderComponent { } private getBreadcrumbs() { - const breadcrumbs = toSignal(this.breadcrumbService.breadcrumbs$, { initialValue: [] }); return computed(() => - breadcrumbs().filter( + this.breadcrumbs().filter( (breadcrumb) => breadcrumb.type === BreadcrumbType.PROJECT || breadcrumb.type === BreadcrumbType.APP, ), ); } + + private isOnInstanceLevel() { + return computed(() => { + console.log(this.breadcrumbs()); + return this.breadcrumbs().length === 1 && this.breadcrumbs()[0].type === BreadcrumbType.INSTANCE; + }); + } } diff --git a/console/src/app/modules/settings-grid/settings-grid.component.html b/console/src/app/modules/settings-grid/settings-grid.component.html index e781d59c09..6f9b99e302 100644 --- a/console/src/app/modules/settings-grid/settings-grid.component.html +++ b/console/src/app/modules/settings-grid/settings-grid.component.html @@ -1,11 +1,8 @@
-

{{ 'DESCRIPTIONS.ORG.TITLE' | translate }}

-
- info_outline - +

{{ 'DESCRIPTIONS.SETTINGS.INSTANCE.TITLE' | translate }}

- {{ 'DESCRIPTIONS.ORG.DESCRIPTION' | translate }} + {{ 'DESCRIPTIONS.SETTINGS.INSTANCE.DESCRIPTION' | translate }}

diff --git a/console/src/app/modules/settings-grid/settings-grid.component.scss b/console/src/app/modules/settings-grid/settings-grid.component.scss index 69d327173c..d6806da46e 100644 --- a/console/src/app/modules/settings-grid/settings-grid.component.scss +++ b/console/src/app/modules/settings-grid/settings-grid.component.scss @@ -1,7 +1,6 @@ .org-title-row { display: flex; align-items: center; - margin-top: 1rem; h2 { font-size: 1.2rem; diff --git a/console/src/app/pages/home/home.component.html b/console/src/app/pages/home/home.component.html index 8239204406..71082b20ec 100644 --- a/console/src/app/pages/home/home.component.html +++ b/console/src/app/pages/home/home.component.html @@ -11,10 +11,12 @@ -

{{ 'HOME.DISCLAIMER' | translate }}

+ + + -

{{ 'ONBOARDING.MOREDESCRIPTION' | translate }}

+

{{ 'ONBOARDING.MOREDESCRIPTION' | translate }}

diff --git a/console/src/app/pages/home/home.component.scss b/console/src/app/pages/home/home.component.scss index cf60d83fcb..b8cb4a1ec5 100644 --- a/console/src/app/pages/home/home.component.scss +++ b/console/src/app/pages/home/home.component.scss @@ -38,9 +38,9 @@ } } - .desc { + .home-desc { font-size: 1.2rem; - margin-top: 0; + margin-top: 2rem; text-transform: uppercase; } @@ -143,13 +143,6 @@ } } - .disclaimer { - font-size: 14px; - margin-top: 0; - margin-bottom: 5rem; - font-style: italic; - } - .fill-space { flex: 1; } diff --git a/console/src/app/pages/home/home.component.ts b/console/src/app/pages/home/home.component.ts index 62fcbea7c5..6512376a1a 100644 --- a/console/src/app/pages/home/home.component.ts +++ b/console/src/app/pages/home/home.component.ts @@ -1,4 +1,5 @@ import { Component } from '@angular/core'; +import { PolicyComponentServiceType } from 'src/app/modules/policies/policy-component-types.enum'; import { Breadcrumb, BreadcrumbService, BreadcrumbType } from 'src/app/services/breadcrumb.service'; import { GrpcAuthService } from 'src/app/services/grpc-auth.service'; import { ThemeService } from 'src/app/services/theme.service'; @@ -21,6 +22,8 @@ export class HomeComponent { public dark: boolean = true; + protected readonly PolicyComponentServiceType = PolicyComponentServiceType; + constructor( public authService: GrpcAuthService, breadcrumbService: BreadcrumbService, diff --git a/console/src/app/pages/home/home.module.ts b/console/src/app/pages/home/home.module.ts index 2b750dd820..2e82f43666 100644 --- a/console/src/app/pages/home/home.module.ts +++ b/console/src/app/pages/home/home.module.ts @@ -14,6 +14,7 @@ import { HasRolePipeModule } from 'src/app/pipes/has-role-pipe/has-role-pipe.mod import { HomeRoutingModule } from './home-routing.module'; import { HomeComponent } from './home.component'; import { QuickstartComponent } from 'src/app/components/quickstart/quickstart.component'; +import { SettingsGridModule } from 'src/app/modules/settings-grid/settings-grid.module'; @NgModule({ declarations: [HomeComponent], @@ -31,6 +32,7 @@ import { QuickstartComponent } from 'src/app/components/quickstart/quickstart.co ShortcutsModule, OnboardingModule, MatRippleModule, + SettingsGridModule, ], }) export default class HomeModule {} diff --git a/console/src/app/pages/orgs/org-detail/org-detail.component.html b/console/src/app/pages/orgs/org-detail/org-detail.component.html index c0a818ebfe..701fc6a729 100644 --- a/console/src/app/pages/orgs/org-detail/org-detail.component.html +++ b/console/src/app/pages/orgs/org-detail/org-detail.component.html @@ -44,10 +44,6 @@
- - - - - -
- {{ - 'ORG.PAGES.NOPERMISSION' | translate - }} -
-
-
diff --git a/console/src/app/pages/orgs/org.module.ts b/console/src/app/pages/orgs/org.module.ts index ae36a626ef..12f9748224 100644 --- a/console/src/app/pages/orgs/org.module.ts +++ b/console/src/app/pages/orgs/org.module.ts @@ -19,7 +19,6 @@ import { InputModule } from 'src/app/modules/input/input.module'; import { MetaLayoutModule } from 'src/app/modules/meta-layout/meta-layout.module'; import { MetadataModule } from 'src/app/modules/metadata/metadata.module'; import { NameDialogModule } from 'src/app/modules/name-dialog/name-dialog.module'; -import { SettingsGridModule } from 'src/app/modules/settings-grid/settings-grid.module'; import { TopViewModule } from 'src/app/modules/top-view/top-view.module'; import { WarnDialogModule } from 'src/app/modules/warn-dialog/warn-dialog.module'; import { HasRolePipeModule } from 'src/app/pipes/has-role-pipe/has-role-pipe.module'; @@ -55,7 +54,6 @@ import { OrgRoutingModule } from './org-routing.module'; MatProgressSpinnerModule, MetadataModule, TranslateModule, - SettingsGridModule, ContributorsModule, CopyToClipboardModule, ],