Skip to content

Commit e1a4aa0

Browse files
authored
Dev/absolute point interface (#131)
* Refactoring to use AbsolutePosition interface where possible * Add changeset
1 parent 7baf8ac commit e1a4aa0

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

.changeset/grumpy-olives-flow.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"slidev-addon-fancy-arrow": patch
3+
---
4+
5+
Refactoring: use the AbsolutePosition interface where reasonable

components/use-element-position.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import {
77
type Ref,
88
} from "vue";
99
import { useSlideContext, useIsSlideActive } from "@slidev/client";
10+
import { AbsolutePosition } from "./use-rough-arrow";
1011

1112
export type SnapPosition =
1213
| "top"
@@ -23,15 +24,15 @@ export function useElementPosition(
2324
rootElement: Ref<SVGSVGElement | undefined>,
2425
selector: string,
2526
pos?: SnapPosition,
26-
): Ref<{ x: number; y: number } | undefined> {
27+
): Ref<AbsolutePosition | undefined> {
2728
const { $scale } = useSlideContext();
2829
const isSlideActive = useIsSlideActive();
2930

3031
const elem = computed(() => {
3132
return slideContainer.value?.querySelector(selector) ?? null;
3233
});
3334

34-
const point = ref<{ x: number; y: number } | undefined>(undefined);
35+
const point = ref<AbsolutePosition | undefined>(undefined);
3536

3637
const update = () => {
3738
if (!isSlideActive.value || !rootElement.value || !elem.value) {

0 commit comments

Comments
 (0)