Enhanced ExB Coordinate widget

8606
26
06-22-2023 05:25 PM
FredericPoliart_EsriAU
Frequent Contributor

Hi,
 
I have create an Enhanced Coordinate Widget display, with quick-link to Google3D

FredericPoliart_EsriAU_0-1687479132898.png

  • Very simple (just drag&drop and link to the map)
  • Works with 2D maps and 3D scenes
  • Shows Zoom level,  Scale, 
  • Optionally shows Tilt (3D) and rotation
  • Can customize background color

FredericPoliart_EsriAU_1-1687479298899.png



How to use

  1. download from https://poliart.com/experiencebuilder/widgets/get-map-coordinates-class.zip 
  2. unzip in your ExB Developer Edition: C:\ArcGISExperienceBuilder\client\your-extensions\widgets
  3. Restart your client/servers using npm start 
  4. Drop this new widget onto your ExB Map Widget
  5. Settings: select the web-map 
  6. Settings: select Show Tilt/ Rotation if you need
  7. done. 

 

Let me know if you encounter any issue
 

FredericPoliart_EsriAU_2-1687479858133.png

 



26 Replies
Brian_McLeer
Frequent Contributor

I've had a request from a user to disable map pop-ups when the widget is opened. I did not see documentation for this on the API Reference site. Ideally, it would be similar to other widgets like measure, draw, etc. that when the widget is opened, map pop-ups are disabled. Any suggestions on how to accomplish this?

0 Kudos
Brian_McLeer
Frequent Contributor

Update on 3/24/25: I have added the function to disable pop-ups and feature highlights for when the widget is in use. The ZIP file at the top of this thread has been updated. 

0 Kudos
Brian_McLeer
Frequent Contributor

Update on 3/27/25: Updated how buttons appear before user clicks on map. The buttons are always present, but greyed out until user clicks on the map. 

0 Kudos
Brian_McLeer
Frequent Contributor

Update on 3/28/25: Add accessibility updates to add tooltips when hovering over buttons. 

Brian_McLeer_0-1743173973638.png

0 Kudos
Brian_McLeer
Frequent Contributor

Update on 5/21/25: Add Bing Satellite and Streetside links. 

Brian_McLeer_0-1747841090288.png

 

0 Kudos
Brian_McLeer
Frequent Contributor

Update on 5/23/25 Added updates to the configurations in DEV so that buttons can be toggled on/off (for example showing Google Maps 3D but turning off Google Street view). The other update is that the URL for Pictometry can now be configured in the DEV settings. With both of these updates, there is no need to go into the code to customize to your parameters and can all be done in Developer Edition. 

Brian_McLeer_1-1748018307881.png

YuvnaApajee_8
New Contributor

Hi Brian,
Where can I download your widget?

0 Kudos
Brian_McLeer
Frequent Contributor

Hello @YuvnaApajee_8, the widget is at the top of this thread, I reply to myself for each changelog event. If you go to page 1 of this community post and look towards the bottom, you will see it there. 

Brian_McLeer_0-1750435392277.png

 

0 Kudos
Brian_McLeer
Frequent Contributor

07/23/2025: Tested widget on Developer Edition 1.18 that was released on 7/23/25 and widget functions as normal. 

Brian_McLeer
Frequent Contributor

Update on 11/13/25: Breaking changes going from DE 1.18 to 1.19: 

Experience Builder 1.19 introduces two critical breaking changes that prevent widgets built for 1.18 from loading. First, the WidgetState enum has been removed from 'jimu-core', requiring developers to replace WidgetState.Opened with the string literal "OPENED" in widget lifecycle methods. Second, and more significantly, the jsx() function signature has changed to align with React 17+'s new JSX transform—children must now be passed as a children property within the props object rather than as separate function arguments. This means jsx('div', {props}, child1, child2) must be rewritten as jsx('div', {props, children: [child1, child2]}) throughout the entire render method. While this is a substantial refactoring effort requiring updates to every jsx call in your widget, it brings Experience Builder in line with modern React standards and is a one-time migration requirement for the 1.18 to 1.19 upgrade path.

Note: This post includes both v1.18 and v1.19 versions of the widget for reference, allowing developers to compare the before and after implementations to better understand the required migration changes.

0 Kudos