So, the default "hybrid" basemap (the one with the "hybrid" well-known ID) only has place labels and no street labels. My clients always want to see street labels, too, but that isn't one of the well-known basemap options.
For this project we were using a custom map box basemap, but they just sent me this screenshot that shows "tears" in the mapbox imagery which look like the city is on fire. So I'm back to trying an Esri version - but I'm struggling to make it work.

I found this:
https://www.arcgis.com/home/item.html?id=28f49811a6974659988fd279de5ce39f
However, when I add it along with the other basemaps to the basemap gallery, the thumbnail aspect ratio doesn't match the others that I am pulling in with "fromId("topo"), etc. It also has this bizarre popup when they click on the map, which I don't want to show up at all.

My code:
<SPAN class="comment token">//this version has the weird thumbnail and popup</SPAN>
<SPAN class="keyword token">var</SPAN> labeledStreetsBasemap <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">Basemap</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN>
portalItem<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN>
id<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"28f49811a6974659988fd279de5ce39f"</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN>
thumbnailUrl<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"/images/imageryhybridthumb.png"</SPAN> <SPAN class="comment token">//this doesn't seem to do anything</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="comment token">//custom basemap attempt: this doesn't work either (in actual code it's commented out now)</SPAN>
<SPAN class="comment token">//the basemap appears blank/white - templateUrl problem?</SPAN>
<SPAN class="keyword token">var</SPAN> labeledStreetsBasemap <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">Basemap</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN>
baseLayers<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN>
<SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">WebTileLayer</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN>
urlTemplate<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/{level}/{col}/{row}.png"</SPAN><SPAN class="punctuation token">,</SPAN>
subDomains<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="string token">'a'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'b'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'c'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'d'</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
copyright<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Source: Esri, DigitalGlobe, GeoEye, Earthstar Geographics, CNES/Airbus DS, USDA, USGS, AeroGRID, IGN, and the GIS User Community."</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
referenceLayers<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN>
<SPAN class="comment token">//hybrid refrence layer: https://www.arcgis.com/home/item.html?id=30d6b8271e1849cd9c3042060001f425</SPAN>
<SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">WebTileLayer</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN>
urlTemplate<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/{level}/{col}/{row}.png"</SPAN><SPAN class="punctuation token">,</SPAN>
subDomains<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="string token">'a'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'b'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'c'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'d'</SPAN><SPAN class="punctuation token">]</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
title<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Imagery Reference Hybrid"</SPAN><SPAN class="punctuation token">,</SPAN>
thumbnailUrl<SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"/images/imageryhybridthumb.png"</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="comment token">//... other code</SPAN>
<SPAN class="comment token">// base map gallery</SPAN>
<SPAN class="keyword token">var</SPAN> basemapGallery <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">new</SPAN> <SPAN class="token class-name">BasemapGallery</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">{</SPAN>
view<SPAN class="punctuation token">:</SPAN> view<SPAN class="punctuation token">,</SPAN>
container<SPAN class="punctuation token">:</SPAN> document<SPAN class="punctuation token">.</SPAN><SPAN class="token function">createElement</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"div"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN>
source<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN>
mapboxImagery<SPAN class="punctuation token">,</SPAN>
labeledStreetsBasemap<SPAN class="punctuation token">,</SPAN>
Basemap<SPAN class="punctuation token">.</SPAN><SPAN class="token function">fromId</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"streets-navigation-vector"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN>
Basemap<SPAN class="punctuation token">.</SPAN><SPAN class="token function">fromId</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"topo"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN>
Basemap<SPAN class="punctuation token">.</SPAN><SPAN class="token function">fromId</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"hybrid"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="punctuation token">]</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>How do I get a basemap with street labels?