component/container: support blocks