tachybase_todo/packages/plugins/@nocobase/plugin-acl/src/client/permissions/AvailableActions.tsx
2024-03-07 22:21:16 +08:00

23 lines
628 B
TypeScript

import { useRequest } from '@nocobase/client';
import { Spin } from 'antd';
import React, { createContext, useContext } from 'react';
const AvailableActionsContext = createContext([]);
export const AvailableActionsProvider: React.FC = (props) => {
const { data, loading } = useRequest<{
data: any[];
}>({
resource: 'availableActions',
action: 'list',
});
if (loading) {
return <Spin />;
}
return <AvailableActionsContext.Provider value={data?.data}>{props.children}</AvailableActionsContext.Provider>;
};
export const useAvailableActions = () => {
return useContext(AvailableActionsContext);
};