[components] add grid