Skip to content

Commit a48659a

Browse files
authored
fix(background): start patterns at 0,0 (#1666)
* fix(background): start patterns at 0,0 Signed-off-by: braks <[email protected]> * chore(changeset): add Signed-off-by: braks <[email protected]> --------- Signed-off-by: braks <[email protected]>
1 parent a6ec480 commit a48659a

File tree

3 files changed

+13
-9
lines changed

3 files changed

+13
-9
lines changed

.changeset/real-radios-learn.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@vue-flow/background": patch
3+
---
4+
5+
Start patterns at 0,0

packages/background/src/Background.vue

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,19 +25,18 @@ const { id: vueFlowId, viewport } = useVueFlow()
2525
2626
const background = computed(() => {
2727
const [gapX, gapY] = Array.isArray(gap) ? gap : [gap, gap]
28-
2928
const scaledGap: [number, number] = [gapX * viewport.value.zoom || 1, gapY * viewport.value.zoom || 1]
30-
3129
const scaledSize = size * viewport.value.zoom
30+
const [offsetX, offsetY]: [number, number] = Array.isArray(offset) ? offset : [offset, offset]
3231
33-
const patternOffset =
34-
variant === BackgroundVariant.Dots
35-
? [scaledSize / offset, scaledSize / offset]
36-
: [scaledGap[0] / offset, scaledGap[1] / offset]
32+
const scaledOffset: [number, number] = [
33+
offsetX * viewport.value.zoom || 1 + scaledGap[0] / 2,
34+
offsetY * viewport.value.zoom || 1 + scaledGap[1] / 2,
35+
]
3736
3837
return {
3938
scaledGap,
40-
offset: patternOffset,
39+
offset: scaledOffset,
4140
size: scaledSize,
4241
}
4342
})
@@ -79,7 +78,7 @@ export default {
7978
</template>
8079

8180
<template v-else-if="variant === BackgroundVariant.Dots">
82-
<DotPattern :color="patternColor" :radius="background.size / offset" />
81+
<DotPattern :color="patternColor" :radius="background.size / 2" />
8382
</template>
8483

8584
<svg v-if="bgColor" height="100" width="100">

packages/background/src/types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,5 +38,5 @@ export interface BackgroundProps {
3838
/** Background y-coordinate (offset y) */
3939
y?: number
4040
/** Background offset */
41-
offset?: number
41+
offset?: number | [number, number]
4242
}

0 commit comments

Comments
 (0)