use native groupBy to group permissions

This commit is contained in:
Mads Rasmussen
2023-11-06 19:59:32 +01:00
parent 170169a2ca
commit fa79b49169

View File

@@ -1,11 +1,6 @@
import { UmbChangeEvent, UmbSelectionChangeEvent } from '@umbraco-cms/backoffice/event';
import {
ManifestEntityAction,
ManifestUserPermission,
umbExtensionsRegistry,
} from '@umbraco-cms/backoffice/extension-registry';
import { ManifestUserPermission, umbExtensionsRegistry } from '@umbraco-cms/backoffice/extension-registry';
import { css, html, customElement, property, state, nothing, ifDefined } from '@umbraco-cms/backoffice/external/lit';
import { groupBy } from '@umbraco-cms/backoffice/external/lodash';
import { UmbObserverController } from '@umbraco-cms/backoffice/observable-api';
import { UmbUserPermissionSettingElement } from '@umbraco-cms/backoffice/user';
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
@@ -67,7 +62,13 @@ export class UmbEntityUserPermissionSettingsListElement extends UmbLitElement {
}
#renderGroupedPermissions(permissionManifests: Array<ManifestUserPermission>) {
const groupedPermissions = groupBy(permissionManifests, (manifest) => manifest.meta.group);
// TODO: groupBy is not known by TS yet
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-expect-error
const groupedPermissions = Object.groupBy(
permissionManifests,
(manifest: ManifestUserPermission) => manifest.meta.group,
) as Record<string, Array<ManifestUserPermission>>;
return html`
${Object.entries(groupedPermissions).map(
([group, manifests]) => html`