123456789101112131415 |
- export const composeEventHandlers = <E>(theirsHandler?: (event: E) => boolean | void, oursHandler?: (event: E) => void, { checkForDefaultPrevented = true } = {}) => {
- const handleEvent = (event: E) => {
- const shouldPrevent = theirsHandler?.(event)
- if (checkForDefaultPrevented === false || !shouldPrevent) {
- return oursHandler?.(event)
- }
- }
- return handleEvent
- }
- type WhenMouseHandler = (e: PointerEvent) => any
- export const whenMouse = (handler: WhenMouseHandler): WhenMouseHandler => {
- return (e: PointerEvent) => (e.pointerType === 'mouse' ? handler(e) : undefined)
- }
|