factor out map rendering to nested view