From ccc0eeb9e9ecfd3e58d3b3aa9c8ae53808c90fee Mon Sep 17 00:00:00 2001 From: Arman Ozak Date: Wed, 17 Jun 2020 19:17:19 +0300 Subject: [PATCH] feat: add forChild and forLazy static methods --- .../identity/src/lib/identity.module.ts | 27 +++++++++++++------ 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/npm/ng-packs/packages/identity/src/lib/identity.module.ts b/npm/ng-packs/packages/identity/src/lib/identity.module.ts index fef2e22a36..9aeadac6a2 100644 --- a/npm/ng-packs/packages/identity/src/lib/identity.module.ts +++ b/npm/ng-packs/packages/identity/src/lib/identity.module.ts @@ -1,14 +1,14 @@ -import { CoreModule } from '@abp/ng.core'; -import { NgModule, Provider } from '@angular/core'; +import { CoreModule, LazyModuleFactory } from '@abp/ng.core'; +import { PermissionManagementModule } from '@abp/ng.permission-management'; +import { ThemeSharedModule } from '@abp/ng.theme.shared'; +import { ModuleWithProviders, NgModule, NgModuleFactory } from '@angular/core'; +import { NgbDropdownModule, NgbTabsetModule } from '@ng-bootstrap/ng-bootstrap'; +import { NgxValidateCoreModule } from '@ngx-validate/core'; import { NgxsModule } from '@ngxs/store'; import { RolesComponent } from './components/roles/roles.component'; +import { UsersComponent } from './components/users/users.component'; import { IdentityRoutingModule } from './identity-routing.module'; import { IdentityState } from './states/identity.state'; -import { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { UsersComponent } from './components/users/users.component'; -import { PermissionManagementModule } from '@abp/ng.permission-management'; -import { NgxValidateCoreModule } from '@ngx-validate/core'; @NgModule({ declarations: [RolesComponent, UsersComponent], @@ -24,4 +24,15 @@ import { NgxValidateCoreModule } from '@ngx-validate/core'; NgxValidateCoreModule, ], }) -export class IdentityModule {} +export class IdentityModule { + static forChild(): ModuleWithProviders { + return { + ngModule: IdentityModule, + providers: [], + }; + } + + static forLazy(): NgModuleFactory { + return new LazyModuleFactory(IdentityModule.forChild()); + } +}