Continuous input with Invoke Unity Events Behavior

I’d like to have a system with Input.GetMouseButton like behaviour. That is, I need to know when the mouse button was held down continuously.

I’m using the Invoke Unity Events behaviour for ease of use but I can’t figure out how to know when the mouse was first pressed and when it was released. I found context.phase but it doesn’t work reliably - sometimes it logs “Canceled” to the console while I’m still holding the mouse button down.

public void Fire(InputAction.CallbackContext context)
{
    // now what...
}

Have an PressAndRelease interaction on your action, then you can :

bool isPressed = Mathf.Approximately(context.ReadValue, 1);