[front-end] completely new publish/subscribe widget eventing model