Move component update to its own method