feat(ui): track & indicate workflow saved status

This commit is contained in:
psychedelicious
2023-12-06 23:44:00 +11:00
parent 4627a7c75f
commit 6d176601cc
8 changed files with 101 additions and 23 deletions

View File

@ -1,18 +1,19 @@
import { RootState } from 'app/store/store';
import { useAppSelector } from 'app/store/storeHooks';
import { buildWorkflow } from 'features/nodes/util/workflow/buildWorkflow';
import { omit } from 'lodash-es';
import { useMemo } from 'react';
import { useDebounce } from 'use-debounce';
export const useWorkflow = () => {
const nodes_ = useAppSelector((state: RootState) => state.nodes.nodes);
const edges_ = useAppSelector((state: RootState) => state.nodes.edges);
const workflow_ = useAppSelector((state: RootState) => state.workflow);
const nodes_ = useAppSelector((state) => state.nodes.nodes);
const edges_ = useAppSelector((state) => state.nodes.edges);
const workflow_ = useAppSelector((state) => state.workflow);
const [nodes] = useDebounce(nodes_, 300);
const [edges] = useDebounce(edges_, 300);
const [workflow] = useDebounce(workflow_, 300);
const builtWorkflow = useMemo(
() => buildWorkflow({ nodes, edges, workflow }),
() =>
buildWorkflow({ nodes, edges, workflow: omit(workflow, 'isTouched') }),
[nodes, edges, workflow]
);