Skip to content

Commit a2e4d99

Browse files
committed
fix(core): dont wait for nodesInitialized to trigger for viewport helper
1 parent 42aa13e commit a2e4d99

File tree

1 file changed

+7
-10
lines changed

1 file changed

+7
-10
lines changed

packages/core/src/composables/useViewport.ts

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { zoomIdentity } from 'd3-zoom'
2-
import { computed } from 'vue'
2+
import { ref } from 'vue'
33
import type { ComputedGetters, D3Selection, GraphNode, State, ViewportFunctions } from '~/types'
44
import { clampPosition, getRectOfNodes, getTransformForBounds, pointToRendererPoint } from '~/utils'
55

@@ -29,16 +29,13 @@ const initialViewportHelper: ExtendedViewport = {
2929
export function useViewport(state: State, getters: ComputedGetters) {
3030
const { nodes, d3Zoom, d3Selection, dimensions, translateExtent, minZoom, maxZoom, viewport, snapToGrid, snapGrid } = $(state)
3131

32-
const { getNodes, getNodesInitialized } = getters
32+
const isReady = ref(false)
3333

34-
const isReady = computed(
35-
() =>
36-
!!d3Zoom &&
37-
!!d3Selection &&
38-
!!dimensions.width &&
39-
!!dimensions.height &&
40-
getNodesInitialized.value.length === getNodes.value.length,
41-
)
34+
until(() => !!d3Zoom && !!d3Selection && !!dimensions.width && !!dimensions.height)
35+
.toBe(true)
36+
.then(() => {
37+
isReady.value = true
38+
})
4239

4340
function zoom(scale: number, duration?: number) {
4441
return new Promise<boolean>((resolve) => {

0 commit comments

Comments
 (0)