That looks fine to me, since we have both events already. We should update the spec to mention that `beforeOpen` can be cancelled.

How about we keep this demo until we work on the migration guide for the new API, where we include this example, then delete the demo? That way we provide a way to keep the old behaviour in existing applications, without promoting it any further.