diff --git a/npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.html b/npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.html index 39a176929b..f6a2cef89b 100644 --- a/npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.html +++ b/npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.html @@ -111,6 +111,10 @@ + + {{ 'AbpFeatureManagement::ResetToDefault' | abpLocalization }} + + diff --git a/npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.ts b/npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.ts index eb339b0b94..0ef2a9a98f 100644 --- a/npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.ts +++ b/npm/ng-packs/packages/feature-management/src/lib/components/feature-management/feature-management.component.ts @@ -5,7 +5,12 @@ import { FeaturesService, UpdateFeatureDto, } from '@abp/ng.feature-management/proxy'; -import { LocaleDirection } from '@abp/ng.theme.shared'; +import { + Confirmation, + ConfirmationService, + LocaleDirection, + ToasterService, +} from '@abp/ng.theme.shared'; import { Component, EventEmitter, Input, Output } from '@angular/core'; import { finalize } from 'rxjs/operators'; import { FeatureManagement } from '../../models/feature-management'; @@ -63,8 +68,10 @@ export class FeatureManagementComponent constructor( public readonly track: TrackByService, + private toasterService: ToasterService, protected service: FeaturesService, protected configState: ConfigStateService, + protected confirmationService: ConfirmationService, ) {} openModal() { @@ -121,6 +128,19 @@ export class FeatureManagementComponent }); } + resetToDefault() { + this.confirmationService + .warn('AbpFeatureManagement::AreYouSureToResetToDefault', 'AbpFeatureManagement::AreYouSure') + .subscribe((status: Confirmation.Status) => { + if (status === Confirmation.Status.confirm) { + this.service.delete(this.providerName, this.providerKey).subscribe(() => { + this.toasterService.success('AbpFeatureManagement::ResetedToDefault'); + this.visible = false; + }); + } + }); + } + onCheckboxClick(val: boolean, feature: FeatureDto) { if (val) { this.checkToggleAncestors(feature);