UNPKG

ra-core

Version:

Core components of react-admin, a frontend Framework for building admin applications on top of REST services, using ES6, React

49 lines 1.54 kB
import { useCallback } from 'react'; import useAuthProvider from './useAuthProvider'; /** * Get a callback for calling the authProvider.getPermissions() method. * * @see useAuthProvider * * @returns {Function} getPermissions callback * * This is a low level hook. See those more specialized hooks * offering state handling. * * @see usePermissions * * @example * * import { useGetPermissions } from 'react-admin'; * * const Roles = () => { * const [permissions, setPermissions] = useState([]); * const getPermissions = useGetPermissions(); * useEffect(() => { * getPermissions().then(permissions => setPermissions(permissions)) * }, []) * return ( * <ul> * {permissions.map((permission, key) => ( * <li key={key}>{permission}</li> * ))} * </ul> * ); * } */ var useGetPermissions = function () { var authProvider = useAuthProvider(); var getPermissions = useCallback(function (params) { if (params === void 0) { params = {}; } // react-query requires the query to return something if (authProvider && authProvider.getPermissions) { return authProvider .getPermissions(params) .then(function (result) { return result !== null && result !== void 0 ? result : null; }); } return Promise.resolve([]); }, [authProvider]); return getPermissions; }; export default useGetPermissions; //# sourceMappingURL=useGetPermissions.js.map