work
This commit is contained in:
@@ -13,3 +13,19 @@ export const preventAll = (event) => {
|
||||
console.warn('[events] stopPropagation failed', error);
|
||||
}
|
||||
};
|
||||
|
||||
export const safeInvoke = (fn, ...args) => (typeof fn === 'function' ? fn(...args) : undefined);
|
||||
|
||||
export const getPointerPosition = (event, { fallbackToPage = true } = {}) => {
|
||||
if (!event) {
|
||||
return { x: 0, y: 0 };
|
||||
}
|
||||
const clientX = Number.isFinite(event.clientX) ? event.clientX : null;
|
||||
const clientY = Number.isFinite(event.clientY) ? event.clientY : null;
|
||||
const pageX = fallbackToPage && Number.isFinite(event.pageX) ? event.pageX : null;
|
||||
const pageY = fallbackToPage && Number.isFinite(event.pageY) ? event.pageY : null;
|
||||
return {
|
||||
x: clientX ?? pageX ?? 0,
|
||||
y: clientY ?? pageY ?? 0,
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user