Component menu refactored to template