Update to latest component API