update components to the new port API