unexpected-ivoryU
Refine2y ago
28 replies
unexpected-ivory

Call a hook inside a function

// Package Imports
import { useSimpleList } from '@refinedev/antd';


// Project Imports
import resources from 'core/resources/resources';
import { type RolePermission } from 'interfaces/interface';
import type ResourceItem from 'interfaces/resource';


export const useGetData = (value) => {
const { listProps } = useSimpleList<RolePermission>({
resource: "products",
filters: {
permanent: [
{
field: 'input_source_connections',
operator: 'in',
value,
},
],
},
});

return listProps
}


const fetchPermissions = async (
setFilteredResources: React.Dispatch<React.SetStateAction<ResourceItem[]>>,
setCrudPermission: React.Dispatch<React.SetStateAction<string[]>>,
setModulePermission: React.Dispatch<React.SetStateAction<string[]>>,
value: string | undefined
): Promise<void> => {

debugger // eslint-disable-line
const data = useGetData(value);

console.log(data)
const modulesWithPermissions: string[] = [];
const moduleWithAccess: string[] = ['dashboard'];


setModulePermission(moduleWithAccess);
setCrudPermission(modulesWithPermissions.flat());

console.log(resources, "resources");
const newResources = resources.filter((resource: any) =>
moduleWithAccess.includes(resource.identifier)
);
setFilteredResources(newResources);

};

export default fetchPermissions;
Was this page helpful?