component-emitter dependency