fix: optimize filtering of vertices in useFlowStore (#2662)

Refactor the filtering logic in the useFlowStore hook to optimize the performance. The code changes ensure that the nextVertices array is filtered correctly by excluding vertices that already exist in the last layer.

Co-authored-by: anovazzi1 <otavio2204@gmail.com>
This commit is contained in:
Gabriel Luiz Freitas Almeida 2024-07-12 13:37:47 -03:00 committed by GitHub
commit ef6d954357
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -522,10 +522,14 @@ const useFlowStore = create<FlowStoreType>((set, get) => ({
get().verticesBuild!.verticesLayers[
get().verticesBuild!.verticesLayers.length - 1
];
nextVertices = nextVertices.filter(
(vertex) =>
!lastLayer.some((layer) => layer.id === vertex.id) &&
!lastLayer.some((layer) => layer.reference === vertex.reference),
(vertexElement) =>
!lastLayer.some(
(layerElement) =>
layerElement.id === vertexElement.id &&
layerElement.reference === vertexElement.reference,
),
);
const newLayers = [
...get().verticesBuild!.verticesLayers,