Browse Source

re-setting order to default value and new sorting compare function

pull/17239/head
Sinan997 3 years ago
parent
commit
9b778069fd
  1. 22
      npm/ng-packs/packages/core/src/lib/services/routes.service.ts
  2. 2
      npm/ng-packs/packages/feature-management/src/lib/providers/feature-management-settings.provider.ts
  3. 2
      npm/ng-packs/packages/setting-management/config/src/lib/providers/setting-tab.provider.ts

22
npm/ng-packs/packages/core/src/lib/services/routes.service.ts

@ -12,6 +12,7 @@ import {
} from '../utils/tree-utils';
import { ConfigStateService } from './config-state.service';
import { PermissionService } from './permission.service';
import { LocalizationService } from './localization.service';
// eslint-disable-next-line @typescript-eslint/ban-types
export abstract class AbstractTreeService<T extends { [key: string | number | symbol]: any }> {
@ -158,14 +159,26 @@ export abstract class AbstractNavTreeService<T extends ABP.Nav>
{
private subscription: Subscription;
private permissionService: PermissionService;
private localizationService: LocalizationService
readonly id = 'name';
readonly parentId = 'parentName';
readonly hide = (item: T) => item.invisible || !this.isGranted(item);
readonly sort = (a: T, b: T) => {
if (!Number.isInteger(a.order)) return 1;
if (!Number.isInteger(b.order)) return -1;
return (a.order as number) - (b.order as number);
const aName = this.localizationService.instant(a.name);
const bName = this.localizationService.instant(b.name);
const aNumber = a.order;
const bNumber = b.order;
if (!Number.isInteger(aNumber)) return 1;
if (!Number.isInteger(bNumber)) return -1;
if (aNumber > bNumber) return 1
if (aNumber < bNumber) return -1
if ( aName > bName ) return 1;
if ( aName < bName ) return -1;
return 0
};
constructor(protected injector: Injector) {
@ -175,6 +188,7 @@ export abstract class AbstractNavTreeService<T extends ABP.Nav>
.createOnUpdateStream(state => state)
.subscribe(() => this.refresh());
this.permissionService = injector.get(PermissionService);
this.localizationService = injector.get(LocalizationService);
this.othersGroup = injector.get(OTHERS_GROUP);
}

2
npm/ng-packs/packages/feature-management/src/lib/providers/feature-management-settings.provider.ts

@ -17,7 +17,7 @@ export function configureSettingTabs(settingtabs: SettingTabsService) {
settingtabs.add([
{
name: eFeatureManagementTabNames.FeatureManagement,
order: 120,
order: 100,
requiredPolicy: 'FeatureManagement.ManageHostFeatures',
component: FeatureManagementTabComponent,
},

2
npm/ng-packs/packages/setting-management/config/src/lib/providers/setting-tab.provider.ts

@ -17,7 +17,7 @@ export function configureSettingTabs(settingTabs: SettingTabsService) {
settingTabs.add([
{
name: eSettingManamagementSettingTabNames.EmailSettingGroup,
order: 110,
order: 100,
requiredPolicy: 'SettingManagement.Emailing',
component: EmailSettingGroupComponent,
},

Loading…
Cancel
Save