function onPointerEvent(e) {
	// normalize eventTypes
	normalizeEvent(e);

	// remember/use the first "primary" normalized event for pointer.bind
	const button = normalizedEvents[0].button;

	// dispatch event to registered objects
	if (dispatchEvent(normalizedEvents) || e.type === "wheel") {
		// always preventDefault for wheel event (?legacy code/behavior?)
		if (preventDefault === true) {
			e.preventDefault();
		}
	}

	const keycode = pointer.bind[button];

	// check if mapped to a key
	if (keycode) {
		triggerKeyEvent(keycode, POINTER_DOWN.includes(e.type), button + 1);
	}
}
mouse/touch/pointer event management (start/down, end/up)
@ignore