feat(console): feature settings (#7713)

* feature settings

* feature component, i18n

* i18n, save settings

* i18n

* reset button, state if system inherited, i18n

* iam.restrictions.read

* refetch feature after reset

* use toggles instead of checkboxes

* i18n

* rm logs

* fix i18n

* show unspecified as inherited

---------

Co-authored-by: Elio Bischof <[email protected]>
This commit is contained in:
Max Peintner
2024-04-10 16:30:58 +00:00
committed by GitHub
co-authored by Elio Bischof
parent dcfa2f7955
commit 2061d1acdc
24 changed files with 1140 additions and 3 deletions
@@ -12,6 +12,9 @@
<cnsl-org-table></cnsl-org-table>
</ng-container>
<ng-container *ngIf="currentSetting === 'features'">
<cnsl-features></cnsl-features>
</ng-container>
<ng-container *ngIf="currentSetting === 'complexity'">
<cnsl-password-complexity-policy [serviceType]="serviceType"></cnsl-password-complexity-policy>
</ng-container>
@@ -27,8 +27,8 @@ import { SettingsListComponent } from './settings-list.component';
import FailedEventsModule from '../failed-events/failed-events.module';
import IamViewsModule from '../iam-views/iam-views.module';
import EventsModule from '../events/events.module';
import OrgListModule from 'src/app/pages/org-list/org-list.module';
import { OrgTableModule } from '../org-table/org-table.module';
import { FeaturesComponent } from 'src/app/components/features/features.component';
@NgModule({
declarations: [SettingsListComponent],
@@ -53,6 +53,7 @@ import { OrgTableModule } from '../org-table/org-table.module';
DomainPolicyModule,
TranslateModule,
HasRolePipeModule,
FeaturesComponent,
NotificationSMTPProviderModule,
NotificationSMSProviderModule,
OIDCConfigurationModule,
@@ -10,6 +10,15 @@ export const ORGANIZATIONS: SidenavSetting = {
},
};
export const FEATURESETTINGS: SidenavSetting = {
id: 'features',
i18nKey: 'SETTINGS.LIST.FEATURESETTINGS',
groupI18nKey: 'SETTINGS.GROUPS.GENERAL',
requiredRoles: {
[PolicyComponentServiceType.ADMIN]: ['iam.restrictions.read'],
},
};
export const LANGUAGES: SidenavSetting = {
id: 'languages',
i18nKey: 'SETTINGS.LIST.LANGUAGES',