Browse Source

identity module standalone migration

migrating-abp-packages/identity
erdemcaygor 1 year ago
parent
commit
f378ac87d7
  1. 19
      npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.ts
  2. 25
      npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts
  3. 27
      npm/ng-packs/packages/identity/src/lib/identity.module.ts
  4. 49
      npm/ng-packs/packages/identity/src/lib/identity.routes.ts
  5. 35
      npm/ng-packs/packages/identity/src/lib/identity.ts

19
npm/ng-packs/packages/identity/src/lib/components/roles/roles.component.ts

@ -1,8 +1,19 @@
import { ListService, PagedAndSortedResultRequestDto, PagedResultDto } from '@abp/ng.core'; import {
CoreModule,
ListService,
PagedAndSortedResultRequestDto,
PagedResultDto,
} from '@abp/ng.core';
import { IdentityRoleDto, IdentityRoleService } from '@abp/ng.identity/proxy'; import { IdentityRoleDto, IdentityRoleService } from '@abp/ng.identity/proxy';
import { ePermissionManagementComponents } from '@abp/ng.permission-management'; import { ePermissionManagementComponents } from '@abp/ng.permission-management';
import { Confirmation, ConfirmationService, ToasterService } from '@abp/ng.theme.shared';
import { import {
Confirmation,
ConfirmationService,
ThemeSharedModule,
ToasterService,
} from '@abp/ng.theme.shared';
import {
ExtensibleModule,
EXTENSIONS_IDENTIFIER, EXTENSIONS_IDENTIFIER,
FormPropData, FormPropData,
generateFormFromProps, generateFormFromProps,
@ -11,9 +22,10 @@ import { Component, inject, Injector, OnInit } from '@angular/core';
import { UntypedFormGroup } from '@angular/forms'; import { UntypedFormGroup } from '@angular/forms';
import { finalize } from 'rxjs/operators'; import { finalize } from 'rxjs/operators';
import { eIdentityComponents } from '../../enums/components'; import { eIdentityComponents } from '../../enums/components';
import { CommonModule } from '@angular/common';
import { PageModule } from '@abp/ng.components/page';
@Component({ @Component({
standalone: false,
selector: 'abp-roles', selector: 'abp-roles',
templateUrl: './roles.component.html', templateUrl: './roles.component.html',
providers: [ providers: [
@ -23,6 +35,7 @@ import { eIdentityComponents } from '../../enums/components';
useValue: eIdentityComponents.Roles, useValue: eIdentityComponents.Roles,
}, },
], ],
imports: [CommonModule, CoreModule, ThemeSharedModule, ExtensibleModule, PageModule],
}) })
export class RolesComponent implements OnInit { export class RolesComponent implements OnInit {
protected readonly list = inject(ListService<PagedAndSortedResultRequestDto>); protected readonly list = inject(ListService<PagedAndSortedResultRequestDto>);

25
npm/ng-packs/packages/identity/src/lib/components/users/users.component.ts

@ -1,18 +1,23 @@
import { ListService, PagedResultDto } from '@abp/ng.core'; import { CoreModule, ListService, PagedResultDto } from '@abp/ng.core';
import { import {
GetIdentityUsersInput, GetIdentityUsersInput,
IdentityRoleDto, IdentityRoleDto,
IdentityUserDto, IdentityUserDto,
IdentityUserService, IdentityUserService,
} from '@abp/ng.identity/proxy'; } from '@abp/ng.identity/proxy';
import { ePermissionManagementComponents } from '@abp/ng.permission-management'; import {
ePermissionManagementComponents,
PermissionManagementModule,
} from '@abp/ng.permission-management';
import { import {
Confirmation, Confirmation,
ConfirmationService, ConfirmationService,
eFormComponets, eFormComponets,
ThemeSharedModule,
ToasterService, ToasterService,
} from '@abp/ng.theme.shared'; } from '@abp/ng.theme.shared';
import { import {
ExtensibleModule,
EXTENSIONS_IDENTIFIER, EXTENSIONS_IDENTIFIER,
FormPropData, FormPropData,
generateFormFromProps, generateFormFromProps,
@ -34,9 +39,12 @@ import {
} from '@angular/forms'; } from '@angular/forms';
import { finalize, switchMap, tap } from 'rxjs/operators'; import { finalize, switchMap, tap } from 'rxjs/operators';
import { eIdentityComponents } from '../../enums/components'; import { eIdentityComponents } from '../../enums/components';
import { CommonModule } from '@angular/common';
import { PageModule } from '@abp/ng.components/page';
import { NgbDropdownModule, NgbNavModule } from '@ng-bootstrap/ng-bootstrap';
import { NgxValidateCoreModule } from '@ngx-validate/core';
@Component({ @Component({
standalone: false,
selector: 'abp-users', selector: 'abp-users',
templateUrl: './users.component.html', templateUrl: './users.component.html',
providers: [ providers: [
@ -46,6 +54,17 @@ import { eIdentityComponents } from '../../enums/components';
useValue: eIdentityComponents.Users, useValue: eIdentityComponents.Users,
}, },
], ],
imports: [
CommonModule,
PageModule,
CoreModule,
ThemeSharedModule,
ExtensibleModule,
PermissionManagementModule,
NgbNavModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
}) })
export class UsersComponent implements OnInit { export class UsersComponent implements OnInit {
protected readonly list = inject(ListService<GetIdentityUsersInput>); protected readonly list = inject(ListService<GetIdentityUsersInput>);

27
npm/ng-packs/packages/identity/src/lib/identity.module.ts

@ -1,14 +1,6 @@
import { CoreModule, LazyModuleFactory } from '@abp/ng.core'; import { LazyModuleFactory } from '@abp/ng.core';
import { PermissionManagementModule } from '@abp/ng.permission-management';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { ExtensibleModule } from '@abp/ng.components/extensible';
import { ModuleWithProviders, NgModule, NgModuleFactory } from '@angular/core'; import { ModuleWithProviders, NgModule, NgModuleFactory } from '@angular/core';
import { NgbDropdownModule, NgbNavModule } from '@ng-bootstrap/ng-bootstrap';
import { NgxValidateCoreModule } from '@ngx-validate/core';
import { RolesComponent } from './components/roles/roles.component';
import { UsersComponent } from './components/users/users.component';
import { IdentityExtensionsGuard } from './guards/extensions.guard'; import { IdentityExtensionsGuard } from './guards/extensions.guard';
import { IdentityRoutingModule } from './identity-routing.module';
import { IdentityConfigOptions } from './models/config-options'; import { IdentityConfigOptions } from './models/config-options';
import { import {
IDENTITY_CREATE_FORM_PROP_CONTRIBUTORS, IDENTITY_CREATE_FORM_PROP_CONTRIBUTORS,
@ -17,22 +9,11 @@ import {
IDENTITY_ENTITY_PROP_CONTRIBUTORS, IDENTITY_ENTITY_PROP_CONTRIBUTORS,
IDENTITY_TOOLBAR_ACTION_CONTRIBUTORS, IDENTITY_TOOLBAR_ACTION_CONTRIBUTORS,
} from './tokens/extensions.token'; } from './tokens/extensions.token';
import { PageModule } from '@abp/ng.components/page';
@NgModule({ @NgModule({
declarations: [RolesComponent, UsersComponent], declarations: [],
exports: [RolesComponent, UsersComponent], exports: [],
imports: [ imports: [],
CoreModule,
IdentityRoutingModule,
NgbNavModule,
ThemeSharedModule,
ExtensibleModule,
NgbDropdownModule,
PermissionManagementModule,
NgxValidateCoreModule,
PageModule,
],
}) })
export class IdentityModule { export class IdentityModule {
static forChild(options: IdentityConfigOptions = {}): ModuleWithProviders<IdentityModule> { static forChild(options: IdentityConfigOptions = {}): ModuleWithProviders<IdentityModule> {

49
npm/ng-packs/packages/identity/src/lib/identity.routes.ts

@ -0,0 +1,49 @@
import { Routes } from '@angular/router';
import {
authGuard,
permissionGuard,
ReplaceableComponents,
ReplaceableRouteContainerComponent,
RouterOutletComponent,
} from '@abp/ng.core';
import { RolesComponent, UsersComponent } from './components';
import { identityExtensionsResolver } from './resolvers';
import { provideIdentity } from './identity';
import { eIdentityComponents } from './enums';
export const identityRoutes: Routes = [
{
path: '',
component: RouterOutletComponent,
canActivate: [authGuard, permissionGuard],
resolve: [identityExtensionsResolver],
providers: [...provideIdentity()],
children: [
{ path: '', redirectTo: 'roles', pathMatch: 'full' },
{
path: 'roles',
component: ReplaceableRouteContainerComponent,
data: {
requiredPolicy: 'AbpIdentity.Roles',
replaceableComponent: {
key: eIdentityComponents.Roles,
defaultComponent: RolesComponent,
} as ReplaceableComponents.RouteData<RolesComponent>,
},
title: 'AbpIdentity::Roles',
},
{
path: 'users',
component: ReplaceableRouteContainerComponent,
data: {
requiredPolicy: 'AbpIdentity.Users',
replaceableComponent: {
key: eIdentityComponents.Users,
defaultComponent: UsersComponent,
} as ReplaceableComponents.RouteData<UsersComponent>,
},
title: 'AbpIdentity::Users',
},
],
},
];

35
npm/ng-packs/packages/identity/src/lib/identity.ts

@ -0,0 +1,35 @@
import {
IDENTITY_CREATE_FORM_PROP_CONTRIBUTORS,
IDENTITY_EDIT_FORM_PROP_CONTRIBUTORS,
IDENTITY_ENTITY_ACTION_CONTRIBUTORS,
IDENTITY_ENTITY_PROP_CONTRIBUTORS,
IDENTITY_TOOLBAR_ACTION_CONTRIBUTORS,
} from './tokens';
import { IdentityExtensionsGuard } from './guards';
import { IdentityConfigOptions } from './models';
export function provideIdentity(options: IdentityConfigOptions = {}) {
return [
{
provide: IDENTITY_ENTITY_ACTION_CONTRIBUTORS,
useValue: options.entityActionContributors,
},
{
provide: IDENTITY_TOOLBAR_ACTION_CONTRIBUTORS,
useValue: options.toolbarActionContributors,
},
{
provide: IDENTITY_ENTITY_PROP_CONTRIBUTORS,
useValue: options.entityPropContributors,
},
{
provide: IDENTITY_CREATE_FORM_PROP_CONTRIBUTORS,
useValue: options.createFormPropContributors,
},
{
provide: IDENTITY_EDIT_FORM_PROP_CONTRIBUTORS,
useValue: options.editFormPropContributors,
},
IdentityExtensionsGuard,
];
}
Loading…
Cancel
Save