Skip to content

Commit 25bee05

Browse files
committed
Better data fetchin in roles + ACL fix
1 parent 07631fd commit 25bee05

3 files changed

Lines changed: 8 additions & 6 deletions

File tree

frontend/src/components/pages/security/tabs/roles-tab-new.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,12 @@ import { ShieldCheckIcon } from 'lucide-react';
5555
import { parseAsString, useQueryStates } from 'nuqs';
5656
import { DeleteRoleRequestSchema } from 'protogen/redpanda/api/dataplane/v1/security_pb';
5757
import type { FC } from 'react';
58-
import { useLayoutEffect, useState } from 'react';
58+
import { useEffect, useLayoutEffect, useState } from 'react';
5959
import { useStore } from 'zustand';
6060

6161
import ErrorResult from '../../../../components/misc/error-result';
6262
import { useDeleteRoleMutation, useListRolesQuery } from '../../../../react-query/api/security';
63-
import { useApiStoreHook, useRolesStore } from '../../../../state/backend-api';
63+
import { rolesApi, useApiStoreHook, useRolesStore } from '../../../../state/backend-api';
6464
import { useSupportedFeaturesStore } from '../../../../state/supported-features';
6565
import { setPageHeader } from '../../../../state/ui-state';
6666
import { FeatureLicenseNotification } from '../../../license/feature-license-notification';
@@ -93,6 +93,10 @@ export const RolesTabNew: FC = () => {
9393
{ title: 'Roles', linkTo: '/security/roles' },
9494
]);
9595
}, []);
96+
97+
useEffect(() => {
98+
rolesApi.refreshRoleMembers().catch(() => {});
99+
}, []);
96100
const featureRolesApi = useSupportedFeaturesStore((s) => s.rolesApi);
97101
const userData = useApiStoreHook((s) => s.userData);
98102
const roleMembers = useStore(useRolesStore, (s) => s.roleMembers);

frontend/src/components/pages/security/users/add-acl-dialog.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ export const AddAclDialog = ({ open, onOpenChange, principal }: AddAclDialogProp
132132
await createACL(
133133
create(CreateACLRequestSchema, {
134134
resourceType: values.resourceType,
135-
resourceName: values.resourceName || '*',
135+
resourceName: values.resourceType === ACL_ResourceType.CLUSTER ? 'kafka-cluster' : values.resourceName || '*',
136136
resourcePatternType: values.patternType,
137137
principal: effectivePrincipal,
138138
host: values.host || '*',

frontend/src/components/pages/security/users/user-details-new.tsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,11 @@ import { useGetAclsByPrincipal } from '../../../../react-query/api/acl';
2121
import { useListRolesQuery } from '../../../../react-query/api/security';
2222
import { invalidateUsersCache, useDeleteUserMutation, useListUsersQuery } from '../../../../react-query/api/user';
2323
import { appGlobal } from '../../../../state/app-global';
24-
import { api, rolesApi, useRolesStore } from '../../../../state/backend-api';
24+
import { api, rolesApi } from '../../../../state/backend-api';
2525
import { AclRequestDefault } from '../../../../state/rest-interfaces';
2626
import { useSupportedFeaturesStore } from '../../../../state/supported-features';
2727
import { setPageHeader } from '../../../../state/ui-state';
2828
import { DefaultSkeleton } from '../../../../utils/tsx-utils';
29-
import { useStore } from 'zustand';
3029
import { DeleteUserConfirmModal } from '../shared/delete-user-confirm-modal';
3130

3231
type UserDetailsPageProps = {
@@ -42,7 +41,6 @@ const formatMechanism = (mechanism?: SASLMechanism): string | null => {
4241
export const UserDetailsPageNew = ({ userName }: UserDetailsPageProps) => {
4342
const [isChangePasswordModalOpen, setIsChangePasswordModalOpen] = useState(false);
4443
const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);
45-
const roleMembers = useStore(useRolesStore, (s) => s.roleMembers);
4644

4745
const { data: usersData, isLoading: isUsersLoading } = useListUsersQuery();
4846
const users = usersData?.users?.map((u) => u.name) ?? [];

0 commit comments

Comments
 (0)