A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developers.arcgis.com/javascript/latest/release-notes/ below:

Release notes for 4.33 | Overview | ArcGIS Maps SDK for JavaScript 4.33

June 2025

Roadmap for components:

Today, the recommended approach for building web apps with the SDK is to use components. Core widget functionality is already available as components. Initially, widgets are wrapped within web components. Over time, we are incrementally refactoring them to not include the preexisting widget architecture and further embrace web component standards. Once a component has undergone this optimization, the corresponding widget is deprecated. This release includes many components that meet this criteria. See Esri's move to web components for more information about the widget transition period and future.

New CDN endpoint for components

The CDN endpoint for component packages has been updated to follow a pattern consistent with the core API. The new format simplifies versioning and improves alignment across resources.

New pattern: https://js.arcgis.com/{version-number}/{component-package}/

Example:

Use dark colors for code blocks Copy

1
2
3
4
5
<!-- New endpoint -->
<script type="module" src="https://js.arcgis.com/4.33/map-components/"></script>

<!-- Old endpoint -->
<script type="module" src="https://js.arcgis.com/map-components/4.33/arcgis-map-components.esm.js"></script>

The updated structure provides a cleaner and more intuitive way to load component packages alongside the core API.

Attention

Applications that use components from the CDN should be updated to use the new endpoint at 4.33. The old endpoint will be removed at version 4.34.

Batch editing

The Editor component and (and widget) now support batch attribute updates, deletes, and movement of multiple features. The selection UI includes a comprehensive toolbar with tools for various selection methods, enabling users to make selections within a single layer or across multiple layers. Additionally, users can easily view, refine, and manage their selections for both individual and batch edits across all selected features. Once selected, users can move, delete, or update attributes on all features in the same layer at once.

The following considerations apply when performing batch attribute updates:

Batch attribute editing is built into the Editor component (and widget) but can also be accessed on its own using the BatchAttributeForm. Developers can provide batch editing capabilities wherever needed, independent of the full editing workflow offered by the Editor. This flexibility allows for tailored user experiences, such as dedicated attribute update panels or streamlined data management tools, making it a valuable addition for applications that require efficient bulk attribute editing.

Focus area

Focus areas highlight and focus the viewers' attention to a certain part of their scene. Two predefined styles, dark or bright, allow to choose a visualization with good contrasts for scenes with different coloring. A focus area can optionally have a colored outline, which is helpful to distinguish multiple focus areas in a scene. Focus areas can be captured in slides and shared as part of the webscene.

Explore this functionality in this new sample.

Labeling multipoint geometries

We added support for labeling multipoint geometries. This was a long-requested enhancement. Note that printing these geometries may result in a different output based on the algorithms used to compute labels on the print server versus that of the ArcGIS Maps SDK for JavaScript.

Map components

The following new components have been added to the map-components package:

Refactoring web components

The following components in map-components have been updated under the hood to no longer wrap widget code in their implementation for this release:

By making components consistent across the SDK, their behavior will also more closely mimic what is expected from a standard web component. We will continue to work on the remaining components in @arcgis/map-components that are currently wrapping widget code in their implementation. See Esri's move to web components for more information about the widget transition period and future.

viewOnReady method

The viewOnReady method on the Map, Scene, and Link Chart components allows you to wait until the component's internal view is fully initialized and ready to be used. This is useful when you are dynamically importing other modules or setting up logic that depends on the view being fully initialized.

Use dark colors for code blocks Copy

1
2
3
4
5
6
7
8
<arcgis-map item-id="332e5d145bec4c2c860d65f7ca494b23"></arcgis-map>

<script type="module">
  const viewElement = document.querySelector("arcgis-map");
  // Wait for the internal MapView to be ready
  await viewElement.viewOnReady();
  console.log("MapView is ready:", viewElement.view);
</script>
Note

This method behaves similarly to watching the arcgisViewOnReady event, but it is more convenient for use in vanilla JavaScript applications. See the table in the watching for changes guide to understand which method best suits your architecture.

reactiveUtils support for components

ArcGIS Maps SDK components properties are now watchable with reactiveUtils, the same utility used to observe changes in core API properties. Use reactiveUtils.watch(), .on(), .once(), .when(), or .whenOnce() to observe component state exactly as you would watch view.zoom or layer.loaded. This provides developers migrating a widget-based application to components with a familiar way to observe changes on component properties.

See the updated guide on watching for components changes using reactiveUtils.

Modernize with $arcgis.import()

The new $arcgis.import() global function is a modern replacement for AMD require when building apps via CDN. The function accepts a module path or an array of module paths and returns a promise that resolves with the requested module(s).

Use dark colors for code blocks Copy

1
2
3
4
5
6
7
<script type="module">
  // Import Map and Feature Layer modules
  const [Map, FeatureLayer] = await $arcgis.import([
    "@arcgis/core/Map.js",
    "@arcgis/core/layers/FeatureLayer.js"
  ]);
</script>
Note

Be sure to include type="module" in your <script> tag—this enables the use of await at the top level and allows modern JavaScript module syntax in the browser.

The documentation has been updated to use this new pattern, including getting started, tutorials and samples. While require is still supported, we would encourage developers to adopt this more modular and modern approach.

3D Tiles integrated mesh improvements

The IntegratedMesh3DTilesLayer now supports applying client-side modifications using the same SceneModifications class used by the I3S IntegratedMeshLayer. This enables you to focus on specific areas of a mesh, trim its outline, or replace a section with alternative 3D data. You can also persist and share your modified mesh through web scenes. The visibility of a 3D Tiles integrated mesh will now also conform to any clipping area used to define the visible extent of a local 3D scene.

The updated sample shows how you can utilize the SketchViewModel to apply clip, mask, and replace modifications to tailor an integrated mesh layer to suit your needs.

Layer-based scale range

Seamless visibility switches between different layer types based on the scale are now possible in 3D. With the introduction of layer-based scale ranges, the visibility of entire layers can be toggled according to the scale of the view, allowing for more efficient transitions between different representations in a scene. In contrast, prior to this release, visibility for layers such as FeatureLayer and SceneLayer (Point) was determined through a feature-based scale evaluation. This approach could lead to a mixed display of layer components rather than a clean transition at specific scales. To address this, the following remaining and suitable layers now support layer-based scale ranges: CatalogFootprintLayer, CSVLayer, FeatureLayer, GeoJSONLayer, GraphicsLayer, OGCFeatureLayer, OrientedImageryLayer, SceneLayer (Point), StreamLayer and WFSLayer. Note that an initial set of layers was already ported in 4.30.

Check out the example video demonstrating switching layers at a specific scale setting. It shows a feature layer with accident locations as heatmap. This is shown alongside the point and 3D object scene layers of the Topographic 3D Basemap as an overview. As you zoom in (scale < 1000), the renderer for the accidents is switched to show individual points and the Topographic 3D Basemap is turned off in favor of the integrated mesh 3D tiles layer. This switch gives the user a more detailed real-world context and helps them gain insights into where and potentially why the accidents occurred.

Placement and interactivity of analyses

We have added a place() method to the 3D analysis views to allow interactive creation of all the analyses. This applies to the area measurement, direct line measurement, slice, line of sight, viewshed, and dimension 3D analysis views. place() can also be called directly on the affiliated layer views: line of sight, viewshed, and dimension. Additionally, with SliceAnalysisView3D.pickLayerToExclude method it is possible to start the interactive operation to click to select a layer to be excluded from the slice analysis.

Existing analyses can be edited by enabling the interactive property on their respective analysis views. These enhancements align all analysis tools and allow implementing more customized user experiences. For example, an app could either place a single analysis at once or create multiple analyses consecutively.

Try it out in the updated Analysis objects sample.

Performance improvements FeatureLayer performance in 2D

At this release, we improved the performance of polygon, polyline, and multipoint FeatureLayers hosted on ArcGIS Online. In 2D maps, the FeatureLayer has been optimized to retrieve all features simultaneously from the server when specific conditions are satisfied. Once loaded, the features won't need to be re-requested from the server, which will make future redraws after panning and zooming much faster. We will continue to add support for other feature services in the next few upcoming releases.

Improved DictionaryRenderer symbol caching

Significantly improved the performance and load time of the DictionaryRenderer by optimizing how symbols are computed and cached. Instead of generating a unique symbol for each feature, the renderer now reuses symbols when possible and performs more precomputations up front.

3D memory optimizations

For raster tile layers and select gltf model textures, we now automatically compress loaded images in the browser. This saves 75% of the uncompressed memory used previously. Compression happens asynchronous and in parallel in web workers, thus coming at no cost to performance in existing web applications. Together with other optimizations, which pack 3D vertex data more compactly, this leads to memory savings of 10-50% in typical web scenes.

We will extend the use of client-side texture compression in other layer types in future releases and keep working on reducing our memory footprint in other areas of the code.

Smart mapping spike theme

We added a new 2D spike theme to the size renderer creator. This theme visualizes numeric data as spikes where the height of the spike corresponds to a value. This theme works best for skewed datasets with outliers on the high end of the data range, such as total population counts. As opposed to graduated symbols, spikes can make it easier to see the relative differences in values, especially when the data has a large range of values.

We also added various symbol styles for the spike theme, including but not limited to the following:

Layer enhancements Client-side PointCloudLayerView queries

We updated the PointCloudLayerView to enable client-side spatial queries of the PointCloudLayer. You can retrieve individual points, their count or extent. For example, you can set a polyline as a geometry and specify a distance to the query object, allowing you to isolate a thin section of your point cloud data along a specified path.

VideoLayer enhancements

We introduced the Video and Video Player map components and deprecated the VideoPlayer widget. The Video component allows video display outside of the Video Player, enabling custom user interfaces for playback without using the Video Player controls. VideoLayers can now be persisted in a web map, allowing you to save the layer's configuration, such as the video source URL, and restore it when the web map is opened again. VideoLayer also includes new properties for customizing telemetry graphics and video playback.

MapImageLayer persistence

MapImageLayers can now be saved either as a new item or to an existing one within ArcGIS Online or ArcGIS Enterprise. The MapImageLayer save() or saveAs() methods can be used to persist the layer's configuration, including its sublayers, popup templates, and other properties to an existing or new map image layer item.

Raster layers

We added getSamples() method on ImageryTileLayer and WCSLayer. This method returns sample point locations, pixel values and corresponding resolutions of the source data for a given geometry. For example, you can construct a wind rose chart that shows the most frequent wind speeds and directions at the specified location for given number of years.

ImageryLayer.fetchPixels() method fetches raw pixel data for a specified extent, width, and height, preserving full pixel depth and including all bands without applying renderer to the layer.

ParquetLayer (beta)

The ParquetLayer (currently in beta) enables visualization of parquet files on a map. In upcoming releases, we plan to expand support to include additional capabilities, such as feature querying.

Point label deconfliction

We enhanced the deconfliction for point geometry labels. Now, we promote displaying as many individual labels as possible for features with multiple label classes. Previously, we promoted as many feature labels as possible, meaning that if some labels of a feature could not be displayed, then none were displayed. See the images below to compare 4.32 (left) with 4.33 (right).

Oriented imagery Enhanced measurement capabilities

The Oriented Imagery Viewer now includes triangulated measurement tools, enabling users to calculate distance, area, and location by intersecting vectors from measurement points captured from two different viewpoints. These tools enhance the precision of measurement within a defined area of interest.

Available tools:

Image navigation

The Oriented Imagery Viewer component (and widget) provides enhanced tools for effortlessly transitioning between adjacent or sequential images, allowing for a smoother exploration of visual data in context. These upgrades are designed to create a more intuitive and efficient experience when working with oriented imagery. The are two types of navigation tools added:

Video support

The Oriented Imagery Viewer supports playback of videos compatible with web browsers. Users can interact with videos using familiar controls such as play, pause, video slider, and audio button. During playback, the essential oriented imagery tools like current and additional footprints, camera locations, and image enhancement remain fully accessible, ensuring a seamless and interactive viewing experience.

Charts components (beta)

When rendering a scatterplot with the chart component, performance has been enhanced by optimizing how data is grouped into categories based on specific intervals and ranges. We also added the new viewTimeExtentChangePolicy property on the chart component. When set to 'refresh' and the chart’s view is linked to the map’s view, the chart will automatically update to reflect the map’s current time extent. Another new feature is the ability to export charts as an image or CSV table from the charts action bar component, making it easier to incorporate chart visuals and data into presentations, reports and analytical tools.

Charts model updates

The @arcgis/charts-model package has been merged into the @arcgis/charts-components package, so all imports now come from @arcgis/charts-components. We simplified creating and modifying charts when using charts models by adding a createModel() method. This is the recommended way to create a chart model instead of instantiating a new model object for individual charts models. Support has been added for configuring combo bar line charts and radar charts with charts model. See the example below to leverage these new features:

Use dark colors for code blocks Copy

1
2
3
4
5
// Import the createModel function from the charts components package
import { createModel } from "@arcgis/charts-components/model";

// Create a chart model for a combo bar line chart with a feature layer
const chartModel = await createModel({ layer: featureLayer, chartType: "comboBarLineChart" });
Directions printing (beta)

The Directions component (and widget) now offer printed directions in beta. Additional functionality and enhancements are planned for future releases. This is available in the options of the completed route.

Additional context for Shadow Cast threshold mode

The Shadow Cast component (and widget) now provide additional context for analyzing surfaces that remain in shadow longer than a specified duration. With the discrete context enabled, shadows at configurable intervals are displayed in addition to the threshold visualization. This offers a more comprehensive understanding of why a particular surface is classified as either over or under the threshold. Try it out in the updated Shadow Cast sample.

Popup and Features

The Popup widget and Features component (and widget) now support configuring relationship elements for nested MapImageLayer sublayers. Previously, this was only supported for relationships between layers in the same level of the service hierarchy. Now, you can add RelationshipContent to a sublayer's popup template that has a relationship with any layer within the MapImageLayer.

Feature Table

The Feature Table component (and widget) now support configuring attribute table relationship elements for nested MapImageLayer sublayers and subtables.

Support was added for managing and configuring how tables in MapImageLayer sublayers display their columns. This is accomplished via the AttributeTableTemplate which was recently added to Sublayer.

Daylight

The Daylight component (and widget) no longer enable shadows (view.environment.lighting.directShadowsEnabled) when the user first interacts with the slider or clicks one of the play buttons. Applications that wish to implement the previous behavior can do so by listening to the "user-date-time-change" event which is emitted by the widget and view model or the "arcgisUserDateTimeChange" event which is emitted by the component.

Search popup

We enhanced the popup for Search component and Search widget to use Calcite. Now, the number of additional results is displayed without requiring the results to be expanded first.

Geometry operators

The simplifyOGCOperator is now available. This operator can be used to enforce topological correctness according to the OGC Simple Feature Access specification 1.2.1. It uses stricter rules than simplifyOperator. For example, it does not allow for self-intersection in polylines, and polygon rings cannot have self-intersection or self-tangency.

Attention

The geometryEngine module has been deprecated in favor of geometry operators. See the Introduction to geometry operators guide page for more information.

Utility Network associations with spatial selection

The Editor component (and widget) now supports adding associations by spatially selecting features on the map to form associations with. This provides a faster and more intuitive way to create associations between features in Editor.

When adding a new association in Editor, a spatial selection toolbar appears if any compatible layers are visible on the map. The toolbar can be used to select a single point or define a region containing features. The selected features appear in a list to choose from; the chosen feature is used to create the association.

Knowledge graph data model editing

We have added data model editing support for knowledge graph services. You can now add, update and delete entity types and relationship types from your knowledge graph. You can also add, update and delete the properties for those entity and relationship types, as well as the field indexes and the knowledge graph search index.

New geometric effects for CIMSymbol

We've added support for four new geometric effects in CIMSymbol, expanding the possibilities for advanced symbology and bringing features previously only available in ArcGIS Pro to the JavaScript SDK:

Localization updates Globally configured API key updates

A new apiKeys property has been added to esriConfig, allowing you to set an API key for the basemap style service and/or secured ArcGIS Enterprise items/services globally. See the API key guide topic for more information on how to configure API keys with ArcGIS Maps SDK for JavaScript applications.

Added classes, properties, methods, events Deprecations Core API deprecations

The following are deprecated and will be removed in a future release:

Map components deprecations Charts components deprecations Breaking changes Core API breaking changes

The following classes, methods, properties and events have been deprecated for at least 2 releases and have now been removed from the API:

General components breaking changes Map components breaking changes Charts components breaking changes

Please refer to the Breaking changes guide topic for a complete list of breaking changes across all releases of the 4.x API.

Bug fixes and enhancements Map components enhancements Charts components enhancements Patch fixes Core API

Note: Current version at https://js.arcgis.com/4.33/ CDN is 4.33.10.

4.33.10 [2025-07-21]

4.33.9 [2025-07-08]

4.33.8 [2025-07-03]

4.33.7 [2025-07-02]

4.33.6 [2025-06-30]

4.33.5 [2025-06-27]

4.33.4 [2025-06-26]

4.33.3 [2025-06-25]

4.33.2 [2025-06-24]

4.33.1 [2025-06-23]

Components

Note: Current version at https://js.arcgis.com/4.33/*-components/ CDN is 4.33.11.

4.33.11 [2025-07-21]

4.33.10 [2025-07-07]

4.33.9 [2025-07-02]

4.33.8 [2025-07-01]

4.33.7 [2025-06-30]

4.33.6 [2025-06-27]

4.33.5 [2025-06-26]

4.33.4 [2025-06-25]

4.33.3 [2025-06-24]

4.33.2 [2025-06-23]

4.33.1 [2025-06-20]

Additional packages

Version 4.33 of the ArcGIS Maps SDK for JavaScript uses ArcGIS Arcade 1.32 (since 4.33).

Version 4.33 of the ArcGIS Maps SDK for JavaScript uses Calcite Design System, version 3.2.1. In your application, we recommend using the same version or any minor version greater than ^3.2.1.

How to access the SDK Previous releases

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4