Hi Christophe,
The performance work that was done removed some unnecessary geometry queries on the popup. Unfortunately, what worked in the past now needs to be slightly updated to get the geometries like before. In the prior samples, the geometry was included in either the layer or the popup's template. In your specific case, the layer isn't queried for geometries in order to draw features and the popup does not need to query for geometries because it does not need the geometry for anything within the popup, i.e. Arcade expressions. We won't query for the geometries unless they are needed such as in your application.
Here is a snippet showing how to do this in your example, https://codepen.io/hgonzago/pen/bGepYKW?editors=1000
view.when(function () {
webmap.when(function(response){
returnedLayer = response.layers.find(function(layer){
return layer.id === "SITG_OPENDATA_01_2709";
});
if (returnedLayer.popupTemplate.outFields == null ) {
// set the outFields on the template
returnedLayer.popupTemplate.outFields = ["*"];
}
//Now you have to wait for the viewModel to be active
view.watch("popup.viewModel.active", function(){
console.log(view.popup.selectedFeature.geometry.type);
});
});
});
I am definitely going to include this in our documentation to help avoid this confusion for any others later down the line. Thank you for questions and samples. //