This new widget framework is for optional use and not intended to be a direct replacement for all Dijits. LayerList and Print are the first two widgets that have been implemented using the new widget framework: The LayerList widget provides a way to display a list of layers, and switching their visibility on and off, while The Print widget allows users to export the current mapview for printing or saving.
Support for Arcade
In the 4.2 release of the API, the Arcade scripting language is exclusively used for custom data-driven visualizations. Users now can pass an expression to renderers and visual variables. The expression will execute for each feature, generating a symbol based on the returned value. It is possible to save expressions to layer items and web maps in ArcGIS Online or Portal for ArcGIS. In future releases, users will have the ability to use it in other contexts, such as labeling.
Point cloud data can be visualized using the new PointCloudLayer. This can be done in four different ways that correspond with point cloud visualization in ArcGIS Online: with RGB values, unique values, continuous color or stretched values, or class breaks.
Elevation Query API
More precise elevation values (z-values) for points and polylines can be queried directly from an ElevationLayer with the queryElevation() method. The same can be done with the already available hitTest() method.
Smart Defaults for Location-based Visualizations
The API includes four objects new to the API for generating renderers with smart default symbols: location, color, size and univariateColorSize. This last one has been created specifically for visualizations using 3D symbols. Using the methods with one of these objects, you can perform data-driven and simple location-based visualizations. Three new widgets were added to easily explore spatial patterns in their data and update data-driven visualizations: ColorSlider, SizeSlider, and UnivariateColorSizeSlider.