feat($animator): provide support for custom animation events