@abp/ng.permission-management
Version:
ABP Framework is a complete open-source infrastructure to create modern web applications by following the best practices and conventions of software development. This package is a part of the [ABP Framework](https://abp.io) and contains client-side files.
90 lines (84 loc) • 4.5 kB
TypeScript
import * as rxjs from 'rxjs';
import * as i0 from '@angular/core';
import { EventEmitter, QueryList, ElementRef, TrackByFunction } from '@angular/core';
import { ConfigStateService } from '@abp/ng.core';
import { ToasterService } from '@abp/ng.theme.shared';
import { GetPermissionListResultDto, PermissionsService, PermissionGroupDto, PermissionGrantInfoDto, ProviderInfoDto } from '@abp/ng.permission-management/proxy';
declare namespace PermissionManagement {
interface State {
permissionRes: GetPermissionListResultDto;
}
interface PermissionManagementComponentInputs {
visible: boolean;
readonly providerName: string;
readonly providerKey: string;
readonly hideBadges: boolean;
}
interface PermissionManagementComponentOutputs {
readonly visibleChange: EventEmitter<boolean>;
}
}
type PermissionWithStyle = PermissionGrantInfoDto & {
style: string;
};
type PermissionWithGroupName = PermissionGrantInfoDto & {
groupName: string;
};
declare class PermissionManagementComponent implements PermissionManagement.PermissionManagementComponentInputs, PermissionManagement.PermissionManagementComponentOutputs {
protected readonly service: PermissionsService;
protected readonly configState: ConfigStateService;
protected readonly toasterService: ToasterService;
private document;
readonly providerName: string;
readonly providerKey: string;
readonly hideBadges = false;
protected _visible: boolean;
entityDisplayName: string | undefined;
get visible(): boolean;
set visible(value: boolean);
readonly visibleChange: EventEmitter<boolean>;
selectAllInThisTabsRef: QueryList<ElementRef<HTMLInputElement>>;
selectAllInAllTabsRef: QueryList<ElementRef<HTMLInputElement>>;
data: GetPermissionListResultDto;
selectedGroup?: PermissionGroupDto | null;
permissions: PermissionWithGroupName[];
selectThisTab: boolean;
selectAllTab: boolean;
disableSelectAllTab: boolean;
disabledSelectAllInAllTabs: boolean;
modalBusy: boolean;
filter: i0.WritableSignal<string>;
selectedGroupPermissions: PermissionWithStyle[];
permissionGroupSignal: i0.WritableSignal<PermissionGroupDto[]>;
permissionGroups: i0.Signal<PermissionGroupDto[]>;
trackByFn: TrackByFunction<PermissionGroupDto>;
getChecked(name: string): boolean;
setSelectedGroup(group: PermissionGroupDto): void;
setDisabled(permissions: PermissionGrantInfoDto[]): void;
isGrantedByOtherProviderName(grantedProviders: ProviderInfoDto[]): boolean;
onClickCheckbox(clickedPermission: PermissionGrantInfoDto): void;
updatePermissionStatus(clickedPermission: PermissionGrantInfoDto): void;
setParentClicked(clickedPermission: PermissionGrantInfoDto): void;
updateSelectedGroupPermissions(clickedPermissions: PermissionGrantInfoDto): void;
setTabCheckboxState(): void;
setGrantCheckboxState(): void;
onClickSelectThisTab(): void;
onClickSelectAll(): void;
onChangeGroup(group: PermissionGroupDto): void;
submit(): void;
openModal(): rxjs.Observable<GetPermissionListResultDto>;
initModal(): void;
getAssignedCount(groupName: string): number;
shouldFetchAppConfig(): boolean;
static ɵfac: i0.ɵɵFactoryDeclaration<PermissionManagementComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<PermissionManagementComponent, "abp-permission-management", ["abpPermissionManagement"], { "providerName": { "alias": "providerName"; "required": false; }; "providerKey": { "alias": "providerKey"; "required": false; }; "hideBadges": { "alias": "hideBadges"; "required": false; }; "entityDisplayName": { "alias": "entityDisplayName"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; }, { "visibleChange": "visibleChange"; }, never, never, true, never>;
}
declare const enum ePermissionManagementComponents {
PermissionManagement = "PermissionManagement.PermissionManagementComponent"
}
declare class PermissionManagementModule {
static ɵfac: i0.ɵɵFactoryDeclaration<PermissionManagementModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<PermissionManagementModule, never, [typeof PermissionManagementComponent], [typeof PermissionManagementComponent]>;
static ɵinj: i0.ɵɵInjectorDeclaration<PermissionManagementModule>;
}
export { PermissionManagement, PermissionManagementComponent, PermissionManagementModule, ePermissionManagementComponents };