v0.3.x: refactor fist.app/Component