Browse Source

Refactor component input/output types for feature and permission management

Replaced Angular InputSignal and OutputEmitterRef types with standard string, boolean, and EventEmitter types in feature-management and permission-management models. Updated corresponding components to remove interface implementations, simplifying input/output handling and improving compatibility.
pull/24777/head
Fahri Gedik 4 months ago
parent
commit
80794c176e
  1. 7
      npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.ts
  2. 9
      npm/ng-packs/packages/feature-management/src/lib/models/feature-management.ts
  3. 7
      npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts
  4. 11
      npm/ng-packs/packages/permission-management/src/lib/models/permission-management.ts

7
npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.ts

@ -20,7 +20,6 @@ import {
import { Tabs, TabList, Tab, TabPanel, TabContent } from '@angular/aria/tabs';
import { finalize } from 'rxjs/operators';
import { FreeTextInputDirective } from '../../directives';
import { FeatureManagement } from '../../models';
enum ValueTypes {
ToggleStringValueType = 'ToggleStringValueType',
@ -49,11 +48,7 @@ const DEFAULT_PROVIDER_NAME = 'D';
ModalCloseDirective,
],
})
export class FeatureManagementComponent
implements
FeatureManagement.FeatureManagementComponentInputs,
FeatureManagement.FeatureManagementComponentOutputs
{
export class FeatureManagementComponent {
protected readonly track = inject(TrackByService);
protected readonly toasterService = inject(ToasterService);
protected readonly service = inject(FeaturesService);

9
npm/ng-packs/packages/feature-management/src/lib/models/feature-management.ts

@ -1,14 +1,13 @@
import { InputSignal, OutputEmitterRef } from '@angular/core';
import { EventEmitter } from '@angular/core';
export namespace FeatureManagement {
export interface FeatureManagementComponentInputs {
visible: boolean;
readonly providerName: InputSignal<string | undefined>;
readonly providerKey: InputSignal<string | undefined>;
readonly providerName: string;
readonly providerKey: string;
}
export interface FeatureManagementComponentOutputs {
readonly visibleChange: OutputEmitterRef<boolean>;
readonly visibleChange: EventEmitter<boolean>;
}
}

7
npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts

@ -30,7 +30,6 @@ import {
} from '@angular/core';
import { concat, of } from 'rxjs';
import { finalize, switchMap, take, tap } from 'rxjs/operators';
import { PermissionManagement } from '../models';
import { FormsModule } from '@angular/forms';
@ -108,11 +107,7 @@ type PermissionWithGroupName = PermissionGrantInfoDto & {
TabContent,
],
})
export class PermissionManagementComponent
implements
PermissionManagement.PermissionManagementComponentInputs,
PermissionManagement.PermissionManagementComponentOutputs
{
export class PermissionManagementComponent {
protected readonly service = inject(PermissionsService);
protected readonly configState = inject(ConfigStateService);
protected readonly toasterService = inject(ToasterService);

11
npm/ng-packs/packages/permission-management/src/lib/models/permission-management.ts

@ -1,5 +1,5 @@
import { GetPermissionListResultDto } from '@abp/ng.permission-management/proxy';
import { InputSignal, OutputEmitterRef } from '@angular/core';
import { EventEmitter } from '@angular/core';
export namespace PermissionManagement {
export interface State {
@ -8,13 +8,12 @@ export namespace PermissionManagement {
export interface PermissionManagementComponentInputs {
visible: boolean;
readonly providerName: InputSignal<string>;
readonly providerKey: InputSignal<string>;
readonly hideBadges: InputSignal<boolean>;
readonly providerName: string;
readonly providerKey: string;
readonly hideBadges: boolean;
}
export interface PermissionManagementComponentOutputs {
readonly visibleChange: OutputEmitterRef<boolean>;
readonly visibleChange: EventEmitter<boolean>;
}
}

Loading…
Cancel
Save