mirror of
https://github.com/bitwarden/web
synced 2025-12-10 13:23:15 +00:00
Add ManageRoutingModule, lazy loading
This commit is contained in:
89
src/app/organizations/manage/manage-routing.module.ts
Normal file
89
src/app/organizations/manage/manage-routing.module.ts
Normal file
@@ -0,0 +1,89 @@
|
|||||||
|
import { NgModule } from "@angular/core";
|
||||||
|
import { RouterModule, Routes } from "@angular/router";
|
||||||
|
|
||||||
|
import { Permissions } from "jslib-common/enums/permissions";
|
||||||
|
|
||||||
|
import { PermissionsGuard } from "../guards/permissions.guard";
|
||||||
|
import { PoliciesComponent } from "../policies/policies.component";
|
||||||
|
import { NavigationPermissionsService } from "../services/navigation-permissions.service";
|
||||||
|
|
||||||
|
import { CollectionsComponent } from "./collections.component";
|
||||||
|
import { EventsComponent } from "./events.component";
|
||||||
|
import { GroupsComponent } from "./groups.component";
|
||||||
|
import { ManageComponent } from "./manage.component";
|
||||||
|
import { PeopleComponent } from "./people.component";
|
||||||
|
|
||||||
|
const routes: Routes = [
|
||||||
|
{
|
||||||
|
path: "",
|
||||||
|
component: ManageComponent,
|
||||||
|
canActivate: [PermissionsGuard],
|
||||||
|
data: {
|
||||||
|
permissions: NavigationPermissionsService.getPermissions("manage"),
|
||||||
|
},
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
path: "",
|
||||||
|
pathMatch: "full",
|
||||||
|
redirectTo: "people",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "collections",
|
||||||
|
component: CollectionsComponent,
|
||||||
|
canActivate: [PermissionsGuard],
|
||||||
|
data: {
|
||||||
|
titleId: "collections",
|
||||||
|
permissions: [
|
||||||
|
Permissions.CreateNewCollections,
|
||||||
|
Permissions.EditAnyCollection,
|
||||||
|
Permissions.DeleteAnyCollection,
|
||||||
|
Permissions.EditAssignedCollections,
|
||||||
|
Permissions.DeleteAssignedCollections,
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "events",
|
||||||
|
component: EventsComponent,
|
||||||
|
canActivate: [PermissionsGuard],
|
||||||
|
data: {
|
||||||
|
titleId: "eventLogs",
|
||||||
|
permissions: [Permissions.AccessEventLogs],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "groups",
|
||||||
|
component: GroupsComponent,
|
||||||
|
canActivate: [PermissionsGuard],
|
||||||
|
data: {
|
||||||
|
titleId: "groups",
|
||||||
|
permissions: [Permissions.ManageGroups],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "people",
|
||||||
|
component: PeopleComponent,
|
||||||
|
canActivate: [PermissionsGuard],
|
||||||
|
data: {
|
||||||
|
titleId: "people",
|
||||||
|
permissions: [Permissions.ManageUsers, Permissions.ManageUsersPassword],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "policies",
|
||||||
|
component: PoliciesComponent,
|
||||||
|
canActivate: [PermissionsGuard],
|
||||||
|
data: {
|
||||||
|
titleId: "policies",
|
||||||
|
permissions: [Permissions.ManagePolicies],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [RouterModule.forChild(routes)],
|
||||||
|
exports: [RouterModule],
|
||||||
|
})
|
||||||
|
export class ManageRoutingModule {}
|
||||||
@@ -2,6 +2,7 @@ import { CommonModule } from "@angular/common";
|
|||||||
import { NgModule } from "@angular/core";
|
import { NgModule } from "@angular/core";
|
||||||
|
|
||||||
import { SharedModule } from "../../modules/shared.module";
|
import { SharedModule } from "../../modules/shared.module";
|
||||||
|
import { PoliciesModule } from "../policies/policies.module";
|
||||||
|
|
||||||
import { BulkConfirmComponent } from "./bulk/bulk-confirm.component";
|
import { BulkConfirmComponent } from "./bulk/bulk-confirm.component";
|
||||||
import { BulkRemoveComponent } from "./bulk/bulk-remove.component";
|
import { BulkRemoveComponent } from "./bulk/bulk-remove.component";
|
||||||
@@ -12,6 +13,7 @@ import { EntityEventsComponent } from "./entity-events.component";
|
|||||||
import { EventsComponent } from "./events.component";
|
import { EventsComponent } from "./events.component";
|
||||||
import { GroupAddEditComponent } from "./group-add-edit.component";
|
import { GroupAddEditComponent } from "./group-add-edit.component";
|
||||||
import { GroupsComponent } from "./groups.component";
|
import { GroupsComponent } from "./groups.component";
|
||||||
|
import { ManageRoutingModule } from "./manage-routing.module";
|
||||||
import { ManageComponent } from "./manage.component";
|
import { ManageComponent } from "./manage.component";
|
||||||
import { PeopleComponent } from "./people.component";
|
import { PeopleComponent } from "./people.component";
|
||||||
import { PolicyEditComponent } from "./policy-edit.component";
|
import { PolicyEditComponent } from "./policy-edit.component";
|
||||||
@@ -21,7 +23,7 @@ import { UserConfirmComponent } from "./user-confirm.component";
|
|||||||
import { UserGroupsComponent } from "./user-groups.component";
|
import { UserGroupsComponent } from "./user-groups.component";
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [CommonModule, SharedModule],
|
imports: [CommonModule, SharedModule, PoliciesModule, ManageRoutingModule],
|
||||||
declarations: [
|
declarations: [
|
||||||
BulkConfirmComponent,
|
BulkConfirmComponent,
|
||||||
BulkRemoveComponent,
|
BulkRemoveComponent,
|
||||||
|
|||||||
@@ -2,22 +2,10 @@ import { NgModule } from "@angular/core";
|
|||||||
import { RouterModule, Routes } from "@angular/router";
|
import { RouterModule, Routes } from "@angular/router";
|
||||||
|
|
||||||
import { AuthGuard } from "jslib-angular/guards/auth.guard";
|
import { AuthGuard } from "jslib-angular/guards/auth.guard";
|
||||||
import { Permissions } from "jslib-common/enums/permissions";
|
|
||||||
|
|
||||||
import { PermissionsGuard } from "./guards/permissions.guard";
|
import { PermissionsGuard } from "./guards/permissions.guard";
|
||||||
import { OrganizationLayoutComponent } from "./layouts/organization-layout.component";
|
import { OrganizationLayoutComponent } from "./layouts/organization-layout.component";
|
||||||
import { CollectionsComponent } from "./manage/collections.component";
|
|
||||||
import { EventsComponent } from "./manage/events.component";
|
|
||||||
import { GroupsComponent } from "./manage/groups.component";
|
|
||||||
import { ManageComponent } from "./manage/manage.component";
|
|
||||||
import { PeopleComponent } from "./manage/people.component";
|
|
||||||
import { PoliciesComponent } from "./policies/policies.component";
|
|
||||||
import { NavigationPermissionsService } from "./services/navigation-permissions.service";
|
import { NavigationPermissionsService } from "./services/navigation-permissions.service";
|
||||||
import { AccountComponent } from "./settings/account.component";
|
|
||||||
import { BillingComponent } from "./settings/billing.component";
|
|
||||||
import { SettingsComponent } from "./settings/settings.component";
|
|
||||||
import { SubscriptionComponent } from "./settings/subscription.component";
|
|
||||||
import { TwoFactorSetupComponent } from "./settings/two-factor-setup.component";
|
|
||||||
|
|
||||||
const routes: Routes = [
|
const routes: Routes = [
|
||||||
{
|
{
|
||||||
@@ -41,69 +29,7 @@ const routes: Routes = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: "manage",
|
path: "manage",
|
||||||
component: ManageComponent,
|
loadChildren: async () => (await import("./manage/manage.module")).ManageModule,
|
||||||
canActivate: [PermissionsGuard],
|
|
||||||
data: {
|
|
||||||
permissions: NavigationPermissionsService.getPermissions("manage"),
|
|
||||||
},
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: "",
|
|
||||||
pathMatch: "full",
|
|
||||||
redirectTo: "people",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "collections",
|
|
||||||
component: CollectionsComponent,
|
|
||||||
canActivate: [PermissionsGuard],
|
|
||||||
data: {
|
|
||||||
titleId: "collections",
|
|
||||||
permissions: [
|
|
||||||
Permissions.CreateNewCollections,
|
|
||||||
Permissions.EditAnyCollection,
|
|
||||||
Permissions.DeleteAnyCollection,
|
|
||||||
Permissions.EditAssignedCollections,
|
|
||||||
Permissions.DeleteAssignedCollections,
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "events",
|
|
||||||
component: EventsComponent,
|
|
||||||
canActivate: [PermissionsGuard],
|
|
||||||
data: {
|
|
||||||
titleId: "eventLogs",
|
|
||||||
permissions: [Permissions.AccessEventLogs],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "groups",
|
|
||||||
component: GroupsComponent,
|
|
||||||
canActivate: [PermissionsGuard],
|
|
||||||
data: {
|
|
||||||
titleId: "groups",
|
|
||||||
permissions: [Permissions.ManageGroups],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "people",
|
|
||||||
component: PeopleComponent,
|
|
||||||
canActivate: [PermissionsGuard],
|
|
||||||
data: {
|
|
||||||
titleId: "people",
|
|
||||||
permissions: [Permissions.ManageUsers, Permissions.ManageUsersPassword],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: "policies",
|
|
||||||
component: PoliciesComponent,
|
|
||||||
canActivate: [PermissionsGuard],
|
|
||||||
data: {
|
|
||||||
titleId: "policies",
|
|
||||||
permissions: [Permissions.ManagePolicies],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: "settings",
|
path: "settings",
|
||||||
|
|||||||
@@ -6,23 +6,13 @@ import { SharedModule } from "../modules/shared.module";
|
|||||||
|
|
||||||
import { OrganizationLayoutComponent } from "./layouts/organization-layout.component";
|
import { OrganizationLayoutComponent } from "./layouts/organization-layout.component";
|
||||||
import { OrganizationSwitcherComponent } from "./layouts/organization-switcher.component";
|
import { OrganizationSwitcherComponent } from "./layouts/organization-switcher.component";
|
||||||
import { ManageModule } from "./manage/manage.module";
|
|
||||||
import { OrganizationsRoutingModule } from "./organizations-routing.module";
|
import { OrganizationsRoutingModule } from "./organizations-routing.module";
|
||||||
import { PoliciesModule } from "./policies/policies.module";
|
|
||||||
import { SettingsModule } from "./settings/settings.module";
|
import { SettingsModule } from "./settings/settings.module";
|
||||||
import { AcceptFamilySponsorshipComponent } from "./sponsorships/accept-family-sponsorship.component";
|
import { AcceptFamilySponsorshipComponent } from "./sponsorships/accept-family-sponsorship.component";
|
||||||
import { FamiliesForEnterpriseSetupComponent } from "./sponsorships/families-for-enterprise-setup.component";
|
import { FamiliesForEnterpriseSetupComponent } from "./sponsorships/families-for-enterprise-setup.component";
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [CommonModule, OrganizationsRoutingModule, SharedModule, LayoutsModule, SettingsModule],
|
||||||
CommonModule,
|
|
||||||
OrganizationsRoutingModule,
|
|
||||||
SharedModule,
|
|
||||||
LayoutsModule,
|
|
||||||
PoliciesModule,
|
|
||||||
SettingsModule,
|
|
||||||
ManageModule,
|
|
||||||
],
|
|
||||||
declarations: [
|
declarations: [
|
||||||
AcceptFamilySponsorshipComponent,
|
AcceptFamilySponsorshipComponent,
|
||||||
FamiliesForEnterpriseSetupComponent,
|
FamiliesForEnterpriseSetupComponent,
|
||||||
|
|||||||
Reference in New Issue
Block a user