mirror of
https://gitee.com/nocobase/nocobase.git
synced 2025-05-07 14:39:25 +08:00
fix(lugin-workflow-tasks): only use the provider in admin layout (#6412)
This commit is contained in:
parent
45bfc0649f
commit
7d14ebf06f
@ -22,6 +22,7 @@ import {
|
|||||||
useApp,
|
useApp,
|
||||||
useCompile,
|
useCompile,
|
||||||
useDocumentTitle,
|
useDocumentTitle,
|
||||||
|
useIsAdminPage,
|
||||||
usePlugin,
|
usePlugin,
|
||||||
useRequest,
|
useRequest,
|
||||||
useToken,
|
useToken,
|
||||||
@ -321,7 +322,7 @@ function transform(detail) {
|
|||||||
}, {});
|
}, {});
|
||||||
}
|
}
|
||||||
|
|
||||||
export const TasksProvider = (props: any) => {
|
function TasksCountsProvider(props: any) {
|
||||||
const app = useApp();
|
const app = useApp();
|
||||||
const [counts, setCounts] = useState<Record<string, number>>({});
|
const [counts, setCounts] = useState<Record<string, number>>({});
|
||||||
const onTaskUpdate = useCallback(({ detail = [] }: CustomEvent) => {
|
const onTaskUpdate = useCallback(({ detail = [] }: CustomEvent) => {
|
||||||
@ -368,21 +369,27 @@ export const TasksProvider = (props: any) => {
|
|||||||
|
|
||||||
const total = Object.values(counts).reduce((a, b) => a + b, 0) || 0;
|
const total = Object.values(counts).reduce((a, b) => a + b, 0) || 0;
|
||||||
|
|
||||||
return (
|
return <TasksCountsContext.Provider value={{ total, counts }}>{props.children}</TasksCountsContext.Provider>;
|
||||||
<TasksCountsContext.Provider value={{ total, counts }}>
|
}
|
||||||
<PinnedPluginListProvider
|
|
||||||
items={{
|
export const TasksProvider = (props: any) => {
|
||||||
todo: { component: 'WorkflowTasksLink', pin: true, snippet: '*' },
|
const isAdminPage = useIsAdminPage();
|
||||||
|
|
||||||
|
const content = (
|
||||||
|
<PinnedPluginListProvider
|
||||||
|
items={{
|
||||||
|
todo: { component: 'WorkflowTasksLink', pin: true, snippet: '*' },
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<SchemaComponentOptions
|
||||||
|
components={{
|
||||||
|
WorkflowTasksLink,
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<SchemaComponentOptions
|
{props.children}
|
||||||
components={{
|
</SchemaComponentOptions>
|
||||||
WorkflowTasksLink,
|
</PinnedPluginListProvider>
|
||||||
}}
|
|
||||||
>
|
|
||||||
{props.children}
|
|
||||||
</SchemaComponentOptions>
|
|
||||||
</PinnedPluginListProvider>
|
|
||||||
</TasksCountsContext.Provider>
|
|
||||||
);
|
);
|
||||||
|
|
||||||
|
return isAdminPage ? <TasksCountsProvider>{content}</TasksCountsProvider> : content;
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user