ArcGIS API for JavaScript 4.22 and 3.39

12-09-2021 09:57 AM
Esri Regular Contributor
1 1 709

Say goodbye to 2021, and hello to 4.22. Also, please send your regards to 3.39.


By the numbers

We fixed 39 bugs, made 11 enhancements, added/updated 15 samples. And welcomed Bulgarian to our list of supported locales.


Weather or not

If you’re looking for where all the lonely people have gone this Winter, look no further than the new environment property that allows you to change the weather in your 3D SceneViews. Adjust cloud cover, fog strength, and even time to enjoy new atmospheric and weather visualizations today!

Weather visualizationWeather visualization


Go with the flow

Just in time for the holiday season, the AnimatedFlowRenderer (beta) allows you to visualize raster data with animated streamlines. Besides serving as a provocative and mesmerizing visualization, this renderer can be used to visualize flow direction and magnitude information in ImageryLayers and ImageryTileLayers. It even works with layer effects and blend modes!

AnimatedFlowRenderer (beta)AnimatedFlowRenderer (beta)


Positive visualization

Smart mapping statistics got significantly faster by moving the logic for calculating unique values, summary statistics, class breaks, and histograms from the main thread to workers. But it’s not just about speed, it’s about accessibility too. So we added 167 colorblind-friendly color ramps to the Smart Mapping color APIs. But it’s not just about accessibility, it’s about comprehension too. So we added a new chapter to the Visualization guide called High density data. Check out all the marvelous visualization guide documentation today. - visualization

Visualization guide pagesVisualization guide pages


Don’t disappear without a Trace

Proper network management involves tracing your network to optimize paths for resources to travel. The UtilityNetworkTrace widget provides a way to run traces in a Utility Network based on connectivity or traversability from defined inputs. Whether you’re into water, telephony, or some other utility, the UtilityNetworkTrace widget is a great choice for you and your coworkers.

UtilityNetworkTrace widgetUtilityNetworkTrace widget


Units of graphic information, which define points in three-dimensional space

Powered by WebGL2 and the magic of the internet, you can now visualize atmospheric data, oceanic data, geological underground models, or (finally) space-time cubes using voxel layer (beta). A voxel layer represents multidimensional volumetric data. Use voxel layers to explore spatial relationships with other content. For example, an underground model visualized as a voxel layer can be viewed together with SoFi Stadium in Inglewood, California, to evaluate planned construction or maintenance work for the upcoming SuperBowl.

Intro to Voxel LayerIntro to Voxel Layer


Labile line labels

While labeling lines with the ArcGIS API for JavaScript is great, it could be better. Accordingly, we added some new properties to the line labeling experience. Entire labels can now be oriented parallel to the line, instead of each character being oriented to the curve of the line. You can also control the distance between labels on a line, or configure it to only have one label per line segment. Keep your eyes out for even more configurable properties becoming available at future releases. - improved-polyline-labels

Improved polyline labelsImproved polyline labels


Don’t block these popups

Feel free to turn off your Popup Blocker, because our popups only display for features visible in the map. If there is a filter applied, only the features that pass the filter will return a popup. PopupTemplate supports a new content type, ExpressionContent, which allows you to use Arcade to create popup content elements. This includes rich text with HTML, tables, and charts.

Attachment content within Popups now uses “auto” as the default displayType instead of “list”. If the feature layer's capabilities support resizing attachments, the content will display in preview mode, which is nice. - popup-updates

Popup updatesPopup updates


Does it print?

By default, the map extent is now preserved instead of the map scale in the printout. This allows you to print all the features in the current view, and has been a highly requested feature. To preserve the scale instead, you can use the TemplateOptions.scaleEnabled property. If using a custom print service, custom text elements are now supported for each print template with the Print widget (this was always possible with the print() method). The widget calls the Get Layout Templates Info task on the GPServer to discover possible custom text elements values for each template. Values found there will be populated in the Print widget under Advanced options. Known limitation: no spell-checking service is provided by the widget, so please proofread your custom text prior to publication. - print-widget

Print widget: app (top-center), 4.21 printout (left), 4.22 printout (right)Print widget: app (top-center), 4.21 printout (left), 4.22 printout (right)



Keeping layers fresh

Fetching new data after a layer is initialized and loaded to the map sounds pretty magical, but there’s actually some science behind it. We added this ability to CSVLayer, GeoJSONLayer, and GeoRSSLayer, in addition to the layers that already had support for refreshments refreshing. - refreshable-layers


And many more

There’s no way we could tell you about all the great new stuff at 4.22 and 3.39 in this blog. At least, not in an entertaining way. Improved performance and stability? Yep, that sounds important. Time-enabled bookmarks? Oh yeah, we could have mentioned that. Improved support for overlapping polygon features? Many will benefit from this enhancement. But, we hope we covered enough to get you excited about the latest release(s). If you read this far, leave a comment below to tell us what your favorite update is!


Release Blog


4.22 Release Notes


4.22 Samples


3.39 What’s New


1 Comment
About the Author
Noah Sager is a Product Engineer on the ArcGIS Maps SDK for JavaScript team at Esri. Prior to joining Esri, he mapped utility lines around Appalachia, public restrooms in Chicago, and studied anti-predator and foraging behavior in squirrels in Canada.