#update - move notification code to components