Advanced Draw Widget Improvements: Import, Export, Save Drawings, Tool Tips, Snapping, Measurements

17688
92
05-28-2025 07:15 AM
Brian_McLeer
MVP Regular Contributor
37 92 17.7K

Advanced Draw Widget Capabilities

This widget release builds upon contributions by @JeffreyThompson2 , @RobertScheitlin__GISP , and @AdrienHoff11 , incorporating all functions from prior iterations while adding significant new capabilities across two main areas, the Draw tab and My Drawings tab.

This release builds upon these prior releases:

Additional Draw Widget Improvements (4/10/2025)

Re-designed Draw widget (11/21/2023)

Draw Widget EB 1.7.0 (1/28/2022)

Draw Tab Enhancements

Measurement System

A comprehensive measurement system providing professional-grade accuracy and real-time calculations:

  • Real-time calculations – Automatic area, perimeter, length, and coordinate calculations that update as graphics are modified.

  • Multiple unit support – Distance units (kilometers, miles, meters, nautical miles, feet, yards) and area units (square kilometers, square miles, acres, hectares, square meters, square feet, square yards).

  • Custom unit definitions – User-defined distance and area units with conversion factors.

  • Coordinate display – XY coordinates, Lat/Long coordinates, and spatial reference WKID information.

  • Advanced measurements – Circle radius calculation and individual line segment measurements for complex shapes.

  • Intelligent processing – Geodetic vs planar calculations based on spatial reference, with automatic label management.

  • Configurable controls – Individual toggles for length, area, perimeter, radius, and segment displays.

Tooltips

  • Real-time measurements – Live tooltips with length, area, perimeter, radius, and coordinate updates as drawing progresses.

  • Configurable units & precision – Custom unit support and decimal rounding controls.

  • Smart placement & display – Automatic positioning and styling for clear visibility.

  • Interactive integration – Adapts to active drawing tools and user interactions like resizing and editing.

  • Coordinate display – Optional X/Y, Lat/Long, and WKID information for points.

  • Segment labels – Supports segment-specific tooltips for polylines.

  • Error handling – Fallbacks for unsupported geometries and projection warnings.

  • Performance optimized – Efficient rendering with minimal impact on performance.

Snapping

Advanced snapping functionality for precise drawing alignment:

  • Multi-layer snapping – Detects all visible snappable layers with recursive layer hierarchy search.

  • Comprehensive layer support – Includes feature layers, graphics layers, CSV, GeoJSON, WFS, and sublayers.

  • Smart functionality – 15-pixel snap tolerance, self-snapping, and temporary disable via Ctrl/Cmd key.

  • Automatic optimization – Layer loading and efficient snapping management with user feedback.

Drawing Tool Improvements

  • Reorganized layout – Two-row button arrangement with logical grouping (Point/Line/Freehand Line/Text top row; Rectangle/Polygon/Freehand Polygon/Circle bottom row).

  • Enhanced feedback – Clear indicators for "Drawing Mode," "Edit Mode," and "No Drawings Yet."

  • Dual-tab interface – Seamless sync between "Draw" and "My Drawings" tabs.

Text Tool Enhancements

  • Expanded font library – 11 font families including Alegreya, Josefin Slab, Merriweather, Montserrat, Noto Sans/Serif, Open Sans, Playfair Display.

  • Advanced styling – Real-time preview, enhanced rotation, multi-line support.

  • Sophisticated effects – Text outline/halo with size and opacity controls, font family selector.

Layer Management

  • Dynamic controls – Toggle visibility of the drawing layer in the map layer list.

  • Customization – Custom layer naming with collapsible settings panel.

  • Configuration options – Toggle between show/hide modes for the graphics layer.


My Drawings Tab

Storage & Data Management

  • Local storage integration – Saves drawings in browser with user consent management.

  • Session continuity – Remembers drawings across sessions on the same device/browser.

  • Load options – Detects existing drawings with options to load or start fresh.

  • Import/Export – JSON file-based backup and restore.

Drawing Organization

  • Selection system – Individual and bulk selection with checkboxes.

  • Sorting options – Sort drawings manually, by name, type, or creation date.

  • Search and filter – Easy navigation through large drawing collections.

Editing Capabilities

  • Name editing – Inline renaming of drawings.

  • Symbol modification – Edit drawing symbols and styles.

  • Text styling – Full text formatting including alignment, color, font, and decorations.

  • Copy/duplicate – Clone drawings for reuse.

User Experience Features

  • Confirmation dialogs – For single and bulk deletions.

  • Visual feedback – Selection highlighting and map interaction.

  • Accessible design – Tooltips, keyboard navigation, screen reader compatibility.

  • Responsive layout – Mobile-friendly with touch support.

Advanced Operations

  • Undo/Redo system – Full action history management.

  • Bulk operations – Multi-select delete, export, and modification.

  • Error handling – Robust error feedback and handling.

  • Performance optimization – Efficient rendering and memory management.

Features Not Currently Supported By ESRI Draw/Measure Widgets

  • XY Point Locations
  • Make Your Own Units of Measure
  • Measure Line Segments and Radius
  • Snapping Is An Easy-to-find User Option
  • Users Can Control The Number Of Decimal Places in Measurement
  • Users May Add/Remove Measurements After Drawing
  • Measurement Text Style Is Controllable
  • Point Symbol Rotation
  • Accurate Text Previews
  • User Options For Choosing the Name of the Drawing Layer and If It Displays in Map Layer List
  • Save Drawings To Local Storage and Retrieve Them in a Future Session
  • List of Drawings For Easy Management

Changelog

5/1/26:

Version 4 released: Supports integration with Identify By Query widget by @JeffreyThompson2 

Add enhancement from idea from @ncramer11 to support multiple lines numbers for text.

VersionHighest Supported DE VersionNotes
draw-advanced_V21.19Version 2, no custom npm modules required
draw-advanced_3.11.19Version 3, custom npm modules required, compatible with 1.19 and earlier
draw-advanced_3.21.20Version 3, custom npm modules required, compatible with 1.20
draw-advanced_4.01.20Version 3, custom npm modules required, compatible with 1.20. Supports integration with custom Identify widget

 

4/01/26: DE 1.20 version available

3.1 = DE 1.19

3.2 = DE 1.20

Screenshot 2026-04-01 113748.png

3.2 Enhancements

  • Import/Export JSON to be compatible with OOTB Draw Widget Import/Export function. 

3.2 BUG Fixes

@ncramer11 reported 2 bugs and both have been resolved

  • When adding a text graphic, the preview is duplicated. It seems that the text is being displayed in both a horizontal and vertical orientation.
  • When editing text that has already been placed on the map, the 'label text' field defaults to a print file name.

 

3/26/26: DE 1.20 broke something in this widget, need to troubleshoot

2/26/26: No updates to widget, but recent February 26 update to AGOL OOTB EB Draw widget added import/export JSON files. These JSON files are compatible to be imported into this widget. This widget does not currently support an export from this widget into the OOTB EB Draw Widget. 

2/24/2026: 3.1 Released:

(view in My Videos)

Enhancements

Lock Drawing / All to prevent editing when locked

Measurement On/Off for one or all in My Drawings

Copy one vs multiple features at once

  • Select multiple by selecting with clicks, or by drawing by rectangle or polygon
  • Option to merge all features into one before pasting it into My Drawings

Send drawing graphic to Mailing Labels as selection

More control in settings to enable/disable tools/functions of widget

Bugs

Fix bug where when drawings are in prior session and user makes new drawings before loading, add to existing will wipe out prior drawings.

Fix bug where local storage does not always remember manual sort order upon reload

2/12/2026: BUG Fix: @KamilNovák reported an "issue with importing SHP files that use regional coordinate systems, specifically EPSG:5514. After importing such SHP data, nothing is displayed on the map, and it is also not possible to change the symbology of the imported graphics." This has been resolved. Thank you for reporting and testing @KamilNovák.  

2/05/2026: V3 Released

(view in My Videos)

(view in My Videos)

(view in My Videos)

 

Required Dependencies for V3 for shapefile import

and export (install on client folder):

npm install --save @mapbox/shp-write

npm install shpjs jszip --save

npm install shapefile

Enhancements:

Settings:

Allow users to store drawings per applications or globally

Brian_McLeer_0-1770325034071.png

 

My Drawings Tab:

UI overhaul/new features to My Drawings are main updates of V3:

  • WCAG/Tooltip Audit
  • Import/Export supports KML and zipped shapefile now, while still maintaining GeoJSON and legacy JSON format.
  • New sort option: Manually move drawings so that order in map reflects order in list. Useful for example if a solid fill polygon is drawn after a point, point can be dragged to be on top of polygon. (idea from @Marshal  on 6/20/25)
  • Filter list by name to only show items in list from user text input
  • Copy Features from map layers
  • Grid styling
  • Linear unit-based grid option
  • Drawing notes and labeling
  • “In View” option to display drawings in list only in visible map extent
  • Collapse/Expand function to collapse or expand drawing details
  • Zoom All to zoom to all drawings (credit to @GeoguichetGeoguichet credited in updated manifest
  • Hide All – turn off drawings (redundant from map layers, uses may not enable to show in layers list or may not have layer list open all the time)
  • Labels – Label drawing name, notes (see below on notes), or both.
  • Single Drawings:
    • Label by name, notes, or both
    • Notes – dialogue box appears to store notes on drawing. This is exported as a field, could be useful in shapefile for users to populate their own field.
    • Visible – individual control visibility for drawings
    • Zoom To – zoom to single drawing extent
    • Move Up / Move Down – Move drawings up or down in list and that is how they will draw on map

Draw Tab:

  • Under enable snapping, added enable grid (with contributions from @GeoguichetGeoguichet )
  • Under Enable Buffer, add Label Buffer with a basic label with a leader line
  • Copy/Paste from selected feature on map layer (idea from @HeatherWidlund on 1/21/26)

Bug Fixes:

@JoshuaHouse  sent a DM about vertices not being able to be edited in Draw tab. Updated so that double clicking a graphic with either draw tab or my drawings tab active allows to edit vertices of line or polygon.

@GeoguichetGeoguichet on blog post reported issue with objects renaming. This has been resolved so that if a point is created it will go Point 1, Point 2, Point 3, a polygon it will go Polygon 1, Polygon 2, Polygon 3, etc.

@GeoguichetGeoguichet on blog post reported issue with import of points with picture symbols did not retain picture symbols. This has been resolved (tested before/after using Outdoor Recreation symbology set)

@adamsimple on blog post reported issue that it looks like there is a compatibility issue with ExB 1.19. The widget is attempting to access a legacy theme property. This has been resolved.

@KevinHitchcock reported that when length labels turned off and segment labels are on, “Total:” shows with no units reported. This has been resolved.

10/27/2025: 

Bug fix: When going from Draw to My Drawings with a tool selected, the tool will stay active so you can still draw graphics when on the My Drawings Tab. The ZIP has been updated to resolve this bug. 

10/15/2025: Version 2 released

Buffer

  • Add buffers to drawings including points, lines, polygons, and circles.
  • Configure buffer distance, unit, and opacity interactively.
  • Buffers update automatically when the parent drawing is reshaped or moved.
  • Buffers can be removed individually or cleared all at once.
  • Buffers are included in import and export operations.

Line Arrows

  • Add arrowheads to line drawings to indicate direction.
  • Arrowheads can be toggled on or off while drawing or after creation.
  • Works with both straight and freehand line tools.
  • Arrow styling integrates with existing line symbol settings.

Import/Export (GeoJSON)

  • Drawings can be imported from or exported as valid GeoJSON files.
  • Import GeoJSON created from other GIS tools or previous sessions.
  • Export GeoJSON for use in other applications, including ArcGIS Online and ArcGIS Pro. Note: For KML/KMZ, a third party or additional ArcGIS Pro geoprocessing operation will be needed (https://mygeodata.cloud/converter/, https://mapshaper.org, or others may be a viable option).
  • Maintains geometry and attributes for consistent round-tripping.
  • When importing into ArcGIS Pro single drawings in a GeoJSON file, use the JSON to Features geoprocessing tool and ensure the valid geometry is selected in the Geometry Type drop-down (text not supported).
  • When importing into ArcGIS Pro with multiple drawings in a GeoJSON file, use the Batch Import Data geoprocessing tool. This supports importing multiple geometry types from a single GeoJSON file (text not supported).
  • Legacy JSON files from previous versions of the widget can still be imported for compatibility.

Measurement Label Editing

  • Measurement labels can be repositioned by dragging.
  • Text properties such as size, color, font, halo, bold, italic, and underline can be adjusted.
  • Updates are applied instantly to labels on the map.
  • Supports editing labels for points, lines, polygons, and circles.
  • Improves map readability and customization without redrawing geometries.

Measurement Label Improvements – Special thanks to @MattiasEkström  for assistance on this portion

  • Segment labels for lines and polygons can now be rotated to match the orientation of the underlying segment.
  • Users can toggle between oriented labels (aligned with the line or polygon segment) and straight horizontal labels.
  • Rotated labels dynamically follow the shape of the line as it is edited.
  • This improves readability on curved or angled segments and provides more control over how measurements are displayed.

Delete All (My Drawings)

  • A new Delete All button has been added to the My Drawings panel.
  • Allows users to quickly remove all drawings at once.
  • Includes a confirmation step to prevent accidental deletion.

UI Updates

Known Issues

  • Circles Aren't Real - Circles generated by this Widget are actually 60-sided polygons and there is no good way to tell how a drawing was created after the fact. As far as this Widget is concerned, any polygon with exactly 60-sides is a circle. If you create your own polygon with exactly 60-sides or distort a circle so that it is no longer circular, it will be treated as if it is a circle and calculate a radius.
  • Freehand Line Segments - Technically, freehand line segments work fine, but they generate too many labels to be useful. For reasons similar to the circle problem above, there wasn't a good way of disabling the line segment option for freehand drawings, but it's a bad idea to use them.
  • Make Your Own Units Will Clear Your Default Unit Selection - After creating or editing your units in the Builder, your selected default unit will be cleared. You may need to select a unit of measure other than your desired choice, save Experience Builder and then switch back to your desired choice and save again. This issue is semi-intentional for the following reasons:
    • I could not get Experience Builder to recognize changes to the unit list and unlock the save button.
    • The default unit is passed as the index of an array, so creating or deleting units could result in the incorrect unit being selected or an out-of-range error.
  • Text Color Problems - 
    • When first selecting a Background Color, you must first change to one of the Standard Colors. After selecting a Standard Color, all of the options will work.JeffreyThompson2_1-1748439750037.png

 

92 Comments
Brian_McLeer
MVP Regular Contributor

Thank you for all of the snippets @GeoguichetGeoguichet, I will review these and see if I can replicate behavior and see if we can get an update on our end in the near future. 

adamsimple
Occasional Contributor

@Brian_McLeer 
Hello! It looks like there is a compatibility issue with ExB 1.19. The widget is attempting to access a legacy theme property. The issue is in style.css, this line:

const root = theme.surfaces[1].bg;

KevinHitchcock
Emerging Contributor

For polylines I'm getting the "Total:" label even when I have Length labels turned off if the Line Segment labels are turned on. Is there a way to stop that behavior? I downloaded the .zip today from this page. Using ExB Dev 1.19.

KevinHitchcock_0-1767742279304.png

 

Brian_McLeer
MVP Regular Contributor

Thank you @adamsimple and @KevinHitchcock for reporting both of these issues. We will look at both of these and try to resolve them soon. 

JasonCityOfTacoma
Emerging Contributor

Hi, @Brian_McLeer 

Great work on this and thanks for sharing. 

Is there a github repo for the project that I could clone or fork? I'd be happy to help contribute in any way that I can, but I didn't see one when I did a basic search. I'd love to say up to date with future changes and help out with feature enhancements. 

Cheers,

Jason Schotman

jschotman@tacoma.gov

Brian_McLeer
MVP Regular Contributor

Hello @JasonCityOfTacoma, currently we don't have a GitHub repo. I have been wanting to get a repo for several custom widgets onto GitHub. We may be having an update in the near future and posting on this blog. After that, I will probably look into a GitHub repo to get downloads onto as well. 

Thank you,

Brian

HeatherWidlund
Frequent Contributor

Forgive the novice question, but is there a way to add a drawing using the geometry of a selected feature? I poked around a bit but didn't see other widgets addressing this.

Brian_McLeer
MVP Regular Contributor

Hello @HeatherWidlund, don't think it is a novice question, please feel free to reach out on this blog for any questions or ideas. Currently no, there is not a way to use the geometry of a selected feature to copy and paste into my drawings. The closest way would be to enable snapping on the layer being selected and then draw over your selected feature to snap to the vertices of the line or polygon. The only widget that may have this capability is the out of the box edit widget, but I don't think copy and paste is available yet. 

HeatherWidlund
Frequent Contributor

Thanks, @Brian_McLeer! I'm very new to ExB so I'm never sure what I'm missing from OOTB or custom capabilities. This is possible in the custom, configurable Vertigis Studio offering but I was wondering if it's somewhere in ExB.

Marshal
Frequent Contributor

@HeatherWidlund 

That is pretty much exactly what my "Show on Map Layers" widget does.

1)  Use any method to select a feature (Select widget, Table widget, etc.)

2)  Use the "Show on Map" data action to create a temporary layer of the selection

3)  Download the layer as json and then import that same json into draw-advanced widget

https://community.esri.com/t5/experience-builder-custom-widgets/show-on-map-layers-widget/tac-p/1637...

In the builder configuration, make sure you toggle Draw-Advanced Compatible JSON.

Hope it helps!

Marshal_0-1769031669446.png

 

HeatherWidlund
Frequent Contributor

Thank you, @Marshal, your widget looks great! However, from the user perspective, it's not as simple as using an actions menu to "Add to drawing layer", or am I missing something?

wrennmusic
Occasional Explorer

This widget is a great alternative to purchasing creator licenses for my department - thank you for making this available to other users. 🙂

However, the edit vertices option seems to be buggy. Sometimes it works, sometimes it doesn't. There doesn't seem to be any obvious reason why it works when it does, or what causes it to stop working. Any guidance would be greatly appreciated. 

Additionally, my department heavily relies on google earth. It would be great if the tool had the option to export drawings to KMZ as well, even though they have been shown how to import the geojson to google earth. It would be helpful if the tool also had the option to import KMZs as well.

Thank you!

Brian_McLeer
MVP Regular Contributor

Thank you @wrennmusic.  If you subscribe to this blog some updates may be happening in the near future to fix the vertices issue and KMZ as an option.

ncramer11
Occasional Contributor

A huge thank you to @Brian_McLeer and the other contributors! The county I work for has relied on the MAGIS eDraw widget for years, and seeing this evolution into Experience Builder is incredibly valuable for our transition.

I do have a quick question. We have a large library of legacy drawings stored in the old JSON format. We’re currently running a script to convert them to GeoJSON for the new widget, but I was curious if native support for those older JSON files was on the roadmap (or if I've just missed a setting somewhere).

Brian_McLeer
MVP Regular Contributor

Thank you @ncramer11, are you referring to JSON files from V1 of this widget, or JSON files from the WAB widget? The current version and future iterations of this widget should support V1 JSON files. 

ncramer11
Occasional Contributor

@Brian_McLeer I'm referring to the WAB widget files. They aren’t being recognized quite right yet, and I’m still investigating if it's an obvious labeling issue or something else on my end. I'll provide a sample JSON if you’re curious to take a look.

{
  "features": [
    {
      "geometry": {
        "rings": [
          [
            [-13728107.180679658, 5609296.685170269],
            [-13726984.51182669, 5609311.017113072],
            [-13726678.763713542, 5608732.962086651],
            [-13727275.927997036, 5608274.339916927],
            [-13728350.823707324, 5608666.079686899],
            [-13728107.180679658, 5609296.685170269]
          ]
        ],
        "spatialReference": { "wkid": 102100 }
      },
      "attributes": { "name": "My drawing", "description": "", "objectid": 1 },
      "symbol": {
        "color": [255, 199, 198, 148],
        "outline": {
          "color": [207, 101, 99, 255],
          "width": 0.75,
          "type": "esriSLS",
          "style": "esriSLSSolid"
        },
        "type": "esriSFS",
        "style": "esriSFSSolid"
      }
    }
  ],
  "displayFieldName": "",
  "fieldAliases": {},
  "spatialReference": { "wkid": 102100 },
  "fields": [
    { "name": "objectid", "alias": "objectid", "type": "esriFieldTypeOID" },
    { "name": "name", "alias": "name", "type": "esriFieldTypeString" },
    {
      "name": "description",
      "alias": "description",
      "type": "esriFieldTypeString"
    }
  ]
}

 

Brian_McLeer
MVP Regular Contributor

Thank you @ncramer11, unfortunately I do not have access to that widget so it was not factored into the development of this widget. There is not a setting or anything in EB widget currently that would account for WAB JSON files. If you can DM me a JSON file I can take a look. 

ncramer11
Occasional Contributor

Thank you @Brian_McLeer, that makes total sense. I didn’t want to miss a setting if it existed, but my conversion script should handle our transition to GeoJSON just fine. Thanks again for your hard work, I look forward to any future updates!

Brian_McLeer
MVP Regular Contributor

V3 released, please see updates in changelog. Thank you to @JeffreyThompson2 again for working together on this version. 

JeffreyThompson2
MVP Frequent Contributor

And I would like to state, that I have done little more than QA on the last two versions. @Brian_McLeer has taken control of this project and made it so much better. The new copy function is mind-blowing and the grid options are very clever. Other highlights in this update are shapefile/KMZ downloads and labeling and notes for your drawings.

AdamGebhart
Frequent Contributor

@Brian_McLeer  I'm testing this out to supplement, or possibly use in place of, your Enhanced Measurement widget.  I think our users may want to have both available.

Three questions for you though.  First, is there an option to modify vertices after the shape has been completed?  You may recall I had that question regarding the Enhanced Measurement widget and you were able to add it.  I don't have any idea if it's possible to implement here as well.

Second, when drawing a shape, or at least drawing lines, is it possible to have the measurement appear on top of the shape or offset a little bit?

AdamGebhart_0-1770647998576.png 

AdamGebhart_1-1770648082399.png

Third, when drawing a freehand line or polygon is it possible to turn off the individual segment labels but retain the entire shape length, area or perimeter?

AdamGebhart_2-1770648315997.png 

AdamGebhart_3-1770648356475.png

 

 

 

Brian_McLeer
MVP Regular Contributor

@AdamGebhart to confirm are you using the download named draw-advanced_V3?

Short answers below, but video also covers all 3 updates.

1. Double clicking should allow for editing of vertices. 

2. Labels appear on top after completion, however if you check in enable tooltips, it will show you a live measurement offset from graphic which may work for your workflow. 

3. Freehand lines/polygons segment labels are a known issue, please see known issues section. We have segment labels off by default, but total length on by default when creating graphics. I suggest having users turn off segment labels for freehand lines and polygons. To do this, ensure length is checked on but line segments are turned off when creating freehand graphic. 

(view in My Videos)

 

 

AdamGebhart
Frequent Contributor

@Brian_McLeer Thank you.  I tried all those tips and they worked.  I should have looked a little harder before asking about them.  Sorry about that.  

I really think our users are going love this and the Enhanced Measurement widget.

KamilNovák
Regular Contributor

Thank you to all the contributors for this widget — we are using it in our organisation since V1.

I would like to point out a small issue with importing SHP files that use regional coordinate systems, specifically EPSG:5514. After importing such SHP data, nothing is displayed on the map, and it is also not possible to change the symbology of the imported graphics.

Thanks
Kamil

Brian_McLeer
MVP Regular Contributor

Thank you for letting us know @KamilNovák. I will take a look over the next week or so and see if it can be patched. 

Brian_McLeer
MVP Regular Contributor

2/12/2026: BUG Fix: @KamilNovák reported an "issue with importing SHP files that use regional coordinate systems, specifically EPSG:5514. After importing such SHP data, nothing is displayed on the map, and it is also not possible to change the symbology of the imported graphics." This has been resolved. Thank you for reporting and testing @KamilNovák.  

V3 ZIP has been updated. 

KARIMLABIDI
Frequent Contributor

Hello @Brian_McLeer , I 'm trying to install the widget (V3 version and I insall the three dependecies) but when I start EB, I've these messages. 

KARIMLABIDI_0-1770974404409.png

Have I forgotten something?

Thank you!

 

Brian_McLeer
MVP Regular Contributor

Hello @KARIMLABIDI, what version of Node.JS are you using? I installed Node.js 22 on my machine, but it looks like the update policy at my org updated it to 24.13.0 at some point. And to confirm when you installed the 3 dependencies, it was on the client folder? If so, a recent bug fix may require a 4th npm command of npm install proj4 --save as the bug that was fixed yesterday, 2/12/26,  was related to importing/exporting shapefiles had a projection issue. I am not sure of this 4th install as it is working on my machine without needing this, it is just my interpretation of your screenshot. 

KARIMLABIDI
Frequent Contributor

Thank you ,I've installed the dependecies on client folder and it's ok! Thank you Brian!!

Brian_McLeer
MVP Regular Contributor

Thank you @KARIMLABIDI, was the fix of where you originally installed the dependencies vs now installing them on the client folder? 

HeatherWidlund
Frequent Contributor

@Brian_McLeer I can't believe how quickly you turned around my request! I look forward to trying this out. Thanks so much!

Brian_McLeer
MVP Regular Contributor

2/24/2026: 3.1 Released:

(view in My Videos)

Enhancements

Lock Drawing / All to prevent editing when locked

Measurement On/Off for one or all in My Drawings

Copy one vs multiple features at once

  • Select multiple by selecting with clicks, or by drawing by rectangle or polygon
  • Option to merge all features into one before pasting it into My Drawings

Send drawing graphic to Mailing Labels as selection

More control in settings to enable/disable tools/functions of widget

Bugs

Fix bug where when drawings are in prior session and user makes new drawings before loading, add to existing will wipe out prior drawings.

Fix bug where local storage does not always remember manual sort order upon reload

Brian_McLeer
MVP Regular Contributor

2/26/26: No updates to widget, but recent February 26 update to AGOL OOTB EB Draw widget added import/export JSON files. These JSON files are compatible to be imported into this widget. This widget does not currently support an export from this widget into the OOTB EB Draw Widget. 

JacobHildebrand
New Explorer

Hey @Brian_McLeer , Love the draw and mailing label widgets!  I'm having a little trouble getting the draw widget to talk to the mailing label widget. I have them connected in the drawing widget, but the geometry that i draw or select in the draw widget still isn't sending over.  Do you have any thoughts?  

JacobHildebrand
New Explorer

@Brian_McLeer  Never mind i just realized I did not download the most recent mailing label version.  It's working seamlessly now, thank you so much for putting these together.

Brian_McLeer
MVP Regular Contributor

Thank you @JacobHildebrand, glad you were able to get it working.  

Brian_McLeer
MVP Regular Contributor

3/26/26: DE 1.20 broke something in this widget, need to troubleshoot

Brian_McLeer
MVP Regular Contributor

4/01/26: DE 1.20 version available

3.1 = DE 1.19

3.2 = DE 1.20

Screenshot 2026-04-01 113748.png

3.2 Enhancements

  • Import/Export JSON to be compatible with OOTB Draw Widget Import/Export function. 

3.2 BUG Fixes

@ncramer11  reported 2 bugs and both have been resolved

  • When adding a text graphic, the preview is duplicated. It seems that the text is being displayed in both a horizontal and vertical orientation.
  • When editing text that has already been placed on the map, the 'label text' field defaults to a print file name.
ncramer11
Occasional Contributor

We appreciate all your hard work, @Brian_McLeer😎

CallumNiddrie
New Explorer

Hello and thanks for the great widget. Is it possible to get it to work in a 3D scene, with the ability to snap to slpk meshes and measure vertical faces and volumes?

Brian_McLeer
MVP Regular Contributor

Hello @CallumNiddrie, thank you for the compliment. At this time there are not any plans to get it to work in 3D scene with the features you mention on our end. While this sounds quite useful and cool to see, it is not something for my daily job that I could probably spend the time to develop. If anyone else in the Community wanted to attempt, the full source code is available on this blog. 

Brian_McLeer
MVP Regular Contributor

5/1/26:

Version 4 released: Supports integration with Identify By Query widget by @JeffreyThompson2 

Add enhancement from idea from @ncramer11 to support multiple lines numbers for text.

VersionHighest Supported DE VersionNotes
draw-advanced_V21.19Version 2, no custom npm modules required
draw-advanced_3.11.19Version 3, custom npm modules required, compatible with 1.19 and earlier
draw-advanced_3.21.20Version 3, custom npm modules required, compatible with 1.20
draw-advanced_4.01.20Version 3, custom npm modules required, compatible with 1.20. Supports integration with custom Identify widget

 

About the Author
GIS Administrator/Developer at City of Grand Junction, CO.