@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.
220 lines (207 loc) • 13.3 kB
TypeScript
import * as rxjs from 'rxjs';
import { Observable } from 'rxjs';
import * as _angular_core from '@angular/core';
import { EventEmitter, QueryList, ElementRef, TrackByFunction, OnInit } from '@angular/core';
import { ConfigStateService, ListService } from '@abp/ng.core';
import { ToasterService, ConfirmationService } from '@abp/ng.theme.shared';
import { GetPermissionListResultDto, PermissionsService, PermissionGroupDto, PermissionGrantInfoDto, ProviderInfoDto, ResourcePermissionGrantInfoDto, ResourcePermissionDefinitionDto, ResourcePermissionWithProdiverGrantInfoDto, ResourceProviderDto, SearchProviderKeyInfo } from '@abp/ng.permission-management/proxy';
import { LookupItem } from '@abp/ng.components/lookup';
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: _angular_core.WritableSignal<string>;
selectedGroupPermissions: PermissionWithStyle[];
permissionGroupSignal: _angular_core.WritableSignal<PermissionGroupDto[]>;
permissionGroups: _angular_core.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: _angular_core.ɵɵFactoryDeclaration<PermissionManagementComponent, never>;
static ɵcmp: _angular_core.ɵɵ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 enum eResourcePermissionViewModes {
List = "list",
Add = "add",
Edit = "edit"
}
declare class ResourcePermissionStateService {
readonly viewMode: _angular_core.WritableSignal<eResourcePermissionViewModes>;
readonly modalBusy: _angular_core.WritableSignal<boolean>;
readonly hasResourcePermission: _angular_core.WritableSignal<boolean>;
readonly hasProviderKeyLookupService: _angular_core.WritableSignal<boolean>;
readonly resourceName: _angular_core.WritableSignal<string>;
readonly resourceKey: _angular_core.WritableSignal<string>;
readonly resourceDisplayName: _angular_core.WritableSignal<string>;
readonly allResourcePermissions: _angular_core.WritableSignal<ResourcePermissionGrantInfoDto[]>;
readonly resourcePermissions: _angular_core.WritableSignal<ResourcePermissionGrantInfoDto[]>;
readonly totalCount: _angular_core.WritableSignal<number>;
readonly permissionDefinitions: _angular_core.WritableSignal<ResourcePermissionDefinitionDto[]>;
readonly permissionsWithProvider: _angular_core.WritableSignal<ResourcePermissionWithProdiverGrantInfoDto[]>;
readonly selectedPermissions: _angular_core.WritableSignal<string[]>;
readonly providers: _angular_core.WritableSignal<ResourceProviderDto[]>;
readonly selectedProviderName: _angular_core.WritableSignal<string>;
readonly selectedProviderKey: _angular_core.WritableSignal<string>;
readonly editProviderName: _angular_core.WritableSignal<string>;
readonly editProviderKey: _angular_core.WritableSignal<string>;
readonly searchFilter: _angular_core.WritableSignal<string>;
readonly searchResults: _angular_core.WritableSignal<SearchProviderKeyInfo[]>;
readonly showDropdown: _angular_core.WritableSignal<boolean>;
readonly isAddMode: _angular_core.Signal<boolean>;
readonly isEditMode: _angular_core.Signal<boolean>;
readonly isListMode: _angular_core.Signal<boolean>;
readonly currentPermissionsList: _angular_core.Signal<ResourcePermissionDefinitionDto[]>;
readonly allPermissionsSelected: _angular_core.Signal<boolean>;
readonly canSave: _angular_core.Signal<boolean>;
goToListMode(): void;
goToAddMode(): void;
prepareEditMode(grant: ResourcePermissionGrantInfoDto): void;
setEditModePermissions(permissions: ResourcePermissionWithProdiverGrantInfoDto[]): void;
togglePermission(permissionName: string): void;
toggleAllPermissions(selectAll: boolean): void;
isPermissionSelected(permissionName: string): boolean;
onProviderChange(providerName: string): void;
selectProviderKey(key: SearchProviderKeyInfo): void;
reset(): void;
setResourceData(permissions: ResourcePermissionGrantInfoDto[]): void;
setProviders(providers: ResourceProviderDto[]): void;
setDefinitions(permissions: ResourcePermissionDefinitionDto[]): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResourcePermissionStateService, never>;
static ɵprov: _angular_core.ɵɵInjectableDeclaration<ResourcePermissionStateService>;
}
declare class ResourcePermissionManagementComponent implements OnInit {
readonly eResourcePermissionViewModes: typeof eResourcePermissionViewModes;
protected readonly service: PermissionsService;
protected readonly toasterService: ToasterService;
protected readonly confirmationService: ConfirmationService;
protected readonly state: ResourcePermissionStateService;
private readonly list;
readonly resourceName: _angular_core.InputSignal<string>;
readonly resourceKey: _angular_core.InputSignal<string>;
readonly resourceDisplayName: _angular_core.InputSignal<string>;
readonly visible: _angular_core.ModelSignal<boolean>;
private readonly previousVisible;
constructor();
ngOnInit(): void;
openModal(): void;
onAddClicked(): void;
onEditClicked(grant: ResourcePermissionGrantInfoDto): void;
onDeleteClicked(grant: ResourcePermissionGrantInfoDto): void;
savePermission(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResourcePermissionManagementComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ResourcePermissionManagementComponent, "abp-resource-permission-management", ["abpResourcePermissionManagement"], { "resourceName": { "alias": "resourceName"; "required": true; "isSignal": true; }; "resourceKey": { "alias": "resourceKey"; "required": true; "isSignal": true; }; "resourceDisplayName": { "alias": "resourceDisplayName"; "required": false; "isSignal": true; }; "visible": { "alias": "visible"; "required": false; "isSignal": true; }; }, { "visible": "visibleChange"; }, never, never, true, never>;
}
interface ProviderKeyLookupItem extends LookupItem {
providerKey: string;
providerDisplayName?: string;
}
declare class ProviderKeySearchComponent implements OnInit {
readonly state: ResourcePermissionStateService;
private readonly service;
private readonly destroyRef;
readonly resourceName: _angular_core.InputSignal<string>;
searchFn: (filter: string) => Observable<ProviderKeyLookupItem[]>;
ngOnInit(): void;
onItemSelected(item: ProviderKeyLookupItem): void;
private loadProviderKeys;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProviderKeySearchComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProviderKeySearchComponent, "abp-provider-key-search", never, { "resourceName": { "alias": "resourceName"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
}
interface PermissionItem {
name?: string | null;
displayName?: string | null;
}
declare class PermissionCheckboxListComponent {
readonly state: ResourcePermissionStateService;
readonly permissions: _angular_core.InputSignal<PermissionItem[]>;
readonly idPrefix: _angular_core.InputSignal<string>;
readonly title: _angular_core.InputSignal<string>;
readonly showTitle: _angular_core.InputSignal<boolean>;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PermissionCheckboxListComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PermissionCheckboxListComponent, "abp-permission-checkbox-list", never, { "permissions": { "alias": "permissions"; "required": true; "isSignal": true; }; "idPrefix": { "alias": "idPrefix"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "showTitle": { "alias": "showTitle"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
}
declare class ResourcePermissionListComponent {
readonly state: ResourcePermissionStateService;
readonly list: ListService<any>;
readonly addClicked: _angular_core.OutputEmitterRef<void>;
readonly editClicked: _angular_core.OutputEmitterRef<ResourcePermissionGrantInfoDto>;
readonly deleteClicked: _angular_core.OutputEmitterRef<ResourcePermissionGrantInfoDto>;
constructor();
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResourcePermissionListComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ResourcePermissionListComponent, "abp-resource-permission-list", never, {}, { "addClicked": "addClicked"; "editClicked": "editClicked"; "deleteClicked": "deleteClicked"; }, never, never, true, never>;
}
declare class ResourcePermissionFormComponent {
readonly state: ResourcePermissionStateService;
readonly eResourcePermissionViewModes: typeof eResourcePermissionViewModes;
readonly mode: _angular_core.InputSignal<eResourcePermissionViewModes>;
readonly resourceName: _angular_core.InputSignal<string>;
readonly save: _angular_core.OutputEmitterRef<void>;
readonly cancel: _angular_core.OutputEmitterRef<void>;
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ResourcePermissionFormComponent, never>;
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ResourcePermissionFormComponent, "abp-resource-permission-form", never, { "mode": { "alias": "mode"; "required": true; "isSignal": true; }; "resourceName": { "alias": "resourceName"; "required": true; "isSignal": true; }; }, { "save": "save"; "cancel": "cancel"; }, never, never, true, never>;
}
declare const enum ePermissionManagementComponents {
PermissionManagement = "PermissionManagement.PermissionManagementComponent",
ResourcePermissions = "PermissionManagement.ResourcePermissionsComponent"
}
declare class PermissionManagementModule {
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PermissionManagementModule, never>;
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<PermissionManagementModule, never, [typeof PermissionManagementComponent], [typeof PermissionManagementComponent]>;
static ɵinj: _angular_core.ɵɵInjectorDeclaration<PermissionManagementModule>;
}
export { PermissionCheckboxListComponent, PermissionManagement, PermissionManagementComponent, PermissionManagementModule, ProviderKeySearchComponent, ResourcePermissionFormComponent, ResourcePermissionListComponent, ResourcePermissionManagementComponent, ePermissionManagementComponents };