mirror of
https://github.com/langgenius/dify.git
synced 2026-07-16 01:48:40 +08:00
35 lines
664 B
TypeScript
35 lines
664 B
TypeScript
export type PointerPosition = {
|
|
pageX: number
|
|
pageY: number
|
|
elementX: number
|
|
elementY: number
|
|
}
|
|
|
|
export const DEFAULT_POINTER_POSITION: PointerPosition = {
|
|
pageX: 0,
|
|
pageY: 0,
|
|
elementX: 0,
|
|
elementY: 0,
|
|
}
|
|
|
|
type ClientPoint = {
|
|
clientX: number
|
|
clientY: number
|
|
}
|
|
|
|
export const getPointerPositionFromEvent = (
|
|
event: ClientPoint,
|
|
container: Element | null | undefined,
|
|
): PointerPosition => {
|
|
const rect = container?.getBoundingClientRect()
|
|
const left = rect?.left ?? 0
|
|
const top = rect?.top ?? 0
|
|
|
|
return {
|
|
pageX: event.clientX,
|
|
pageY: event.clientY,
|
|
elementX: event.clientX - left,
|
|
elementY: event.clientY - top,
|
|
}
|
|
}
|