Refactor to single base component.