23 lines
628 B
TypeScript
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);
|
|
};
|