•Added a Taskbar component. Visually, this is a new component type. Functionally, the Taskbar behaves very similar to Tabs. With Tabs, at least one tab must always be open. With a Taskbar, it is possible to have all items closed (that is, nothing is open).
•Added a new option to the Studio Analytics service in Designer that allows the application creator to opt out of collecting identifiable user information (such as user names) with Analytics data. This makes it easier for an application creator to gain information about application usage without immediately requiring them to inform all users (depending on local regulations). The existing functionality allowing individual users to not share personal information with browser settings remains unchanged and does not conflict with this new setting.
•Added a new Search service with a Tokenize Search Terms setting. This applies to the standard Esri search from the global search component (Esri query-backed search). The current behavior in Studio Web is to tokenize the search string. This works well for apps where users are using search to discover what exists. When this new setting is turned off, Studio Web will no longer tokenize the string. This works well for apps where users are using search to find something that is already known, such as an ID or address sorted in the Esri data. Disabling the tokenization of search terms more closely matches the search behavior of the Geocortex Viewer for HTML5.
•Added support for layer catalog use cases. We added arguments to the portal item picker that provides the UI for interacting with Esri portals. The portal.choose-layers now supports the following new arguments:
osources allow you to control which sources show up in the portal item picker (for example, you may not want My Content as an option for end uses to choose).
oinitialSource allows you to set the Source selected when the dialog opens.
olayerFilterTags overrides any configured curated tags on the Portal service.
•Together, these changes allow you to have multiple tools in your app, some that open layer catalog(s), and others that give end-users the ability to browse public content. When combined with Studio Web's existing components, you could, for example, create a toolbar (or a Workflow) that gives several different targeted layer catalogs to end users.
•By popular demand, the portal item picker providing the UI for interacting with Esri portals now defaults to Organizational Content for its Source and the Initial Source is configurable as part of the Portal service.
•The portal item picker providing the UI for interacting with Esri portals is now more polite. It remembers the options used in the last interaction, defaults to those on the next opening. This makes it far easier when performing the same action multiple times (for example, adding three different feature layers from public content).
•Updated the UX around notifications with timers. Previous behavior would cancel the timer if you moused over. The updated behavior is to pause the timer if you mouse over (and resume the timer when your mouse leaves the notification), and to cancel the timer if you click on the notification. This UX is an improvement while still being compliant with WCAG AA 2.2 accessibility.
•Added a new enableMove argument to editGeometryOptions. This enables use cases where it is important to be able to modify vertices, but not to move the entire geometry.
•We have been incrementally improving and restructuring documentation. We have reviewed and updated all URL links to documentation in Designer to reflect recent changes.
• Updated to the 5.39 version of VertiGIS Studio Workflow runtime.
• Made significant performance improvements to Designer by allowing independent, lazy loading of the component settings tree view and the app preview view.
• If you noticed a few less features in this release, part of the reason is that we have been spending additional time adding or completing tests to the code base. This is true for unit tests which are lower level and automated as part of building the software. This is also true for automated functional tests (AFTs) which are higher level tests simulating how end-users interact with the software and are run weekly and as part of regression testing prior to release. We will continue to spend additional time adding or completing these tests over the next several releases which will help with the overall quality of each release.
• Improved the rendering performance of Studio Web’s graphics by checking to see if they can be drawn in the map area currently seen on the screen. If they cannot, then we do not render them until you are looking at that part of the map.
•Resolved an issue that caused configuration stored in Results Summary > Events > Results Clicked > Custom Command to not be saved. [244387]
•Resolved some observed performance degradation in Workflow ‘For Each’ and ‘Loop’ activities. [274920]
•Resolved an issue causing sluggish app performance immediately before applying edits to features. [244946]
•Resolved a performance bottleneck when identifying many features that had many arcade expressions for pop-ups configured. [266894]
•Resolved some issues on older mobile devices that caused app or map flashing when panning or zooming. [254181]
•Resolved an issue with the print dialog and new print layouts where the dialog could hang if there was not at least one older print template configured. [275208]
•Resolved an issue where the print form was not updated the first time it was displayed after a template change. [253680]
•Resolved an issue where most table extension configuration would be destroyed (for example, configured feature actions) when using the refresh option on the map control in Designer. [242863]
•Resolved an issue in Designer where using the Replace Development with Product App could in some cases cause unexpected behavior on the next application deployment. [231541]
•Resolved an issue in the Designer app preview where the Workflow item picker stopped working after it ran several times. [260528]
•Resolved an issue in Designer where using the swap layout option to bring in a new layout to the current app multiple times in a row could cause errors. [260262]
•Resolved an issue where Web had an incorrect WKID number for WMS Layer Feature Info. [257896]
•Resolved an issue where scroll bars appeared in Results Table or Related Records even when only one tab was present. [256360]
•Resolved an issue preventing the add, get, and clear markup comments not working correctly with geometries of type extent or mesh. [275180]
•Resolved an issue where Workflow load events for Number were also incorrectly firing the change event. [268441]
•Resolved an issue where user icons appeared as squares inside the round user component. [275210]
•Resolved an issue where removing a custom library that was still in use could freeze Designer on save. [282621]
•Resolved an issue where using server workflows with the exclude deployment items options in Designer could cause a crash during app deployment. [283084]
•Resolved performance issues in the file upload dialog when using large, but reasonable, CSV files. [279769]
•Resolved an issue where feature layer types were not respected and displayed properly. [282859]
•Resolved some issues with basemap slider UI when oriented vertically in certain app contexts. [256860]
•We recently became aware of various interactions where z-values in data can be incorrectly written during snapping and edit operations. We have made additional improvements, but more work is required. It appears that this is not widely used by customers at this time. It was not reported to us; we discovered it during our QA processes.
Bug Fixes
•Recent changes in the web browser ecosystem caused Designer sign-in failures for a subset of our customers. This was most severe in Chrome, but affected other browsers as well. This hotfix resolves sign-in failures for those who experienced them. [283289, 283724]
•This is an interim validation release on the way to 5.29.2
•Implemented support for OGC WFS layers. This is based upon Esri’s ArcGIS Maps SDK for JavaScript (4.x API) support. WFS services must be at least 2.0.0 and have geoJSON output format enabled.
•Added support for environment value search and replace within server workflows during application deployment.
•Added a new Show Panel property to the Panel component. When enabled, it shows the title of what is currently being displayed in the panel. This dynamically shows the title of whatever component is currently active and visible in the panel; it also respects existing title logic for Workflow components to show the title of the workflow that is currently running.
•Added support for * wildcards when configuring event listeners in the Event Service. This was primarily added to better support sending ‘all events’ to Workflow and facilitate between Workflow integration, but you can also take advantage of it within Web itself.
•Added square and rounded styling options for toolbars. This allows for more visually-pleasing representations of toolbars, particularly when they are placed directly on the map.
•Added new properties for adjusting component placement when multiple components are configured in a container. This is exposed in Designer only in contexts where you have multiple components configured together. You now have Padding and Nested Spacing options. This makes adjusting the component appearance far easier than before. We observed that customers were attempting to do this with the margin property, but it also shifted the component on the other axis, which was often undesirable.
•Updated all typography (fonts, sizing, styling) in Web to bring it into alignment with new Studio-wide guidelines. In addition to setting up future possibilities, the updated styling tends to be slightly more compact, which also moves us toward a reworked compact view. You may notice some typographical differences as you run your application in this latest version of Web.
•Modified the Initially Hidden toggle in Designer to be a tri-state dropdown list [default|visible|hidden]. While the majority of components are visible by default, there are a few that were hidden by default, such as the Dialog component. With the new UX, you can now set components that are hidden by default to be visible by default.
•Adjusted behavior of snapping UX for Utility Network-backed data. In addition to honoring the snapping rules in Utility Network, we now actively prevent snapping in all cases not defined in the Utility Network rules.
•Received a few requests during this release cycle for Expand components to still allow interaction with the map when open. This is possible today by adding the modal="false" property to the Expand component in the layout.xml.
•When you press and hold the Shift button + the mouse button for the drag-to-zoom operation, you now get visual feedback so you can see where you are zooming to (you are welcome, Guido).
•When drawing geometries, we now ignore double-clicks and treat them as single-clicks in contexts where a single-click is expected.
•Updated to the 5.38.1 version of VertiGIS Studio Workflow runtime.
•Reworked the usage pattern for arcgis-rest-client to ensure it works within a web worker environment.
•Made several small improvements to the API documentation generated for developers.vertigisstudio.com – more to come. We improved the formatting and typography to make things more readable, and linked external Esri definitions, allowing you to click through and see Esri’s documentation.
•Resolved an issue with edge cases and the regex matching done by d-t-p in Designer that caused some customers to have no-longer-present portal items still reported by Designer during application deployment. [192636]
•Resolved an issue with d-t-p app deployment where URLs were not being updated by environment values. The root of this was a change to the JSON structure that put the URL inside something Designer has been instructed to ignore. [260819, 258853]
•Resolved an issue with d-t-p where apps were unable to deploy due to inability to access a print template stored via the .eu SaaS environment. [259629]
•Resolved an edge case with d-t-p where adding an item twice (once manually as part of app configuration and once programmatically via Workflow) prevented successful app deployment. [233607]
•Corrected inheritance logic in Designer for subtype layers when inheriting region settings. [259171]
•Resolved an issue in Designer where linked custom library links were cleared incorrectly when uploading an application.zip that contained both uploaded and linked custom libraries. [250007]
•Resolved an issue in Designer where removing the 3D scene from a map caused an unintended swap of the selected basemap. [257067]
•Resolved an issue in Designer where refreshing the web map reset the field extension configuration. For example, whether layers were searchable or identifiable. [250668]
•Resolved some remaining issues related to scroll bars appearing or not appearing for content, which was a result from layout improvement changes made in the previous version. [260448]
•Resolved an issue with incorrect scale of print output when Windows display scaling was enabled. [258395]
•Resolved an issue where shared projects were not opening and displaying automatically from a project sharing link. [259425]
•In conjunction with supporting WFS layers, several smaller issues related to the display and identification of WFS and WMS layers were resolved. [243763, 149938]
•Resolved issues with arguments related to the Identify command that was preventing identify operations on layers turned off, or not in scale range. The parameters for layersInScaleRangeOnly and visibleLayersOnly now work as documented. [256388]
•Resolved a bug where tooltips were not displayed on the alternate state of a toggled tool. [254410]
•Resolved an issue where certain editing configurations would allow existing features to be saved when some attributes were set to be required and others were set to not allow null values. We harmonized the logic so that these are treated the same way. [256682]
•Resolved several small issues related to location notes and discrepancies between default configuration and template configuration that resulted in unexpected behaviors, including errors when trying to move location notes in some cases. [257256, 254411]
•Resolved an issue with displaying stacked/paged results from Identify commands where feature attachments would show only for the first page or first item in the stack. [247896]
•Resolved an issue in Designer that could cause all layers in an app to be set to visible after making changes to an app, even though they were previously configured to not all be visible. [250685]
•Resolved an issue that prevented imported shapefile drawings from appearing in printed output. [255212]
•Resolved an issue where Arcade replacement tokens were being treated case-sensitively when they should not have been. This prevented some configurations from working as desired. [244938]
•Resolved an issue where a Portal-hosted layer with stored credentials would fail to load when Web was hosted on a different origin. [149938]
We resolved an issue with a supported Esri pattern for supporting hosted layers with stored credentials [257887]. To support this preferred Esri pattern, we needed to make changes to previous work put in place to support customers running IWA with anonymous access disabled. This previous work resolved the customers' issues by including default configuration to force send the IWA token as part of the request. This forced send was causing Esri’s stored credential pattern to fail.
If you are a customer who is relying upon the work for supporting IWA with anonymous access disabled, your existing applications will continue to work. If you create a new application, you must add additional configuration for trustedServers to enable your auth flow (which will also prevent Esri’s supported pattern from working). See Esri’s API for more information.
{
"id": "viewer",
"version": "5.29.0",
"$type": "vertigis-web",
"trustedServers": ["[<protocol>//]<hostname>.<domain>[:<port>]"]
}
We recently became aware of various interactions where z-values in data can be incorrectly written during snapping and edit operations. We made some first improvements, but more work is required here. This does not appear to be widely used by customers at this time. It was not reported to us; we discovered it during our QA processes.
•Updated to version 5.37.1 of Workflow, which resolves the following:
oFor Auto Complete, Drop Down List, Radio Group: When you change the form element selection via the UI, the .value property was correctly set. When you use the Set Current Form Element Item activity, the .value property was not correctly set and was undefined.
oFor Drop Down List: In all cases (via the UI or via the Set Current Form Element Item activity), the .label property was undefined when it should have been populated.
•Re-enabled the Designer interface for configuring the Results Service. [257839]
•Resolved a remaining token issue when fetching layouts for the new printing engine. [256927]
•Added a new series type for basemaps and a new basemap slider component. Used together, organizations with multiple imagery services taken at different times for the same geography can create a basemap that contains a range of imagery services at different times. When the end user selects this basemap, it automatically activates the basemap slider component in the layout and allows the end user to move back and forth through the time range to see changes in imagery at a specific location.
•Added new display option settings for toolbars. The application author can now decide whether to use icons and titles, just icons, or just titles. When using both icons and titles, the author can also control the icon position in relationship to the text (start, end, top, bottom). Combining this with the existing horizontal and vertical layout options gives authors the ability to display a toolbar that works with where they want it in the layout. We also adjusted the toolbar to allow it more room by default when placed in a map slot. As part of this work, toolbar descriptions are always displayed as tooltips to ensure consistency between horizontal and vertical orientations.
•Added a new results.activate-group command. This allows workflows to activate a Results List or Results Table component with a specific group of results selected. For example, you could ensure that every time an identify is run, the Buildings Results List is always open and focused when there are multiple results groups present.
•Updated the printing.run command to include additional arguments in support of the new printing engine. This makes it possible for workflow-driven printing flows using the new engine.
•Updated and improved the algorithm used to calculate column widths in the Results Table component. A combination of a max width for initial display on wide data and a smaller minimum on narrow data ensure more table columns can be seen by default.
•Removed the map loading pop-up. Map loading is now indicated only by the "working" animation at the top of the map.
•When snapping is enabled, the snap target indicator now includes a label showing which layer the snap target is indicating, and whether the target is a point (vertex) or a line (edge).
•Updated the identify code for SubtypeGroupLayers to take advantage of the fact that it is really just one layer behind the scenes. We now use a single call, which makes this faster.
•Updated the Results List so that the selected item receives a focus highlight. The absence of a focus highlight was notable in layouts where the Results List remained after making a selection.
•Adjusted the "do not interact" screen behind modal dialogs to ensure it also covered pop-out windows across multiple monitors.
•When a network connected set of features is edited, adjusting one of the features shows how the associated features are affected in the pre-committed preview. This is known as "rubberbanding".
•Added a dedicated error message when users try to print 3D scenes.
•Added two URL parameters in App Designer to allow you to disable the Pinpoint search feature and the interactive preview. These are useful for those providing support to better isolate and troubleshoot specific apps.
•Updated to the 5.37 version of VertiGIS Studio Workflow runtime.
•Updated Web internal elements to TypeScript 5.0.
•Addressed a reported security issue around the partial use of local storage with authentication flows. This created a potential cross-scripting vulnerability. Local storage is no longer used to help fulfill use cases such as opening a different product designer from the app switcher, credential sharing between designers, or persisting credentials between designer loads.
•Changed part of the underlying application framework infrastructure from the retired and out-of-support Create React App to Vite.
•Resolved an issue causing many warnings to appear in the console log when editing VertiGIS Studio Search configuration. [255417]
•Resolved an issue where App Designer could hold onto some memory when the internal web instance was closed and reopened [254540].
•Resolved an issue in App Designer where modifying layer extension information in the 3D map could destroy information in the 2D map layer extensions when they shared the same layer names. [249896]
•Resolved an issue in App Designer where more than one save-then-load cycle on a map containing the same layer could cause the application to break. [241070]
•Resolved an issue in App Designer where refreshing a map would not always detect changes to the webmap, particularly the pop-up configuration. [251906]
•Resolved an issue in App Designer where uploading an app that contained a configured Shared Project Service could fail. [240087]
•Resolved an issue where custom libraries that had significant code to download would be slow, or cause app failure with a timeout. [256359]
•Resolved several issues where flags used to control what could be edited were not being respected. [255987]
•Resolved some remaining issues with map pop-up positioning, particularly with large or dynamically-sized content. [255988, 248023]
•Resolved an issue where repeated interaction with a toolbar in an expand could cause it to remain open when it should close. [200197]
•Resolved some remaining issues that caused some customer issues with large, complex applications running out of memory or crashing in App Designer. [246410, 161643]
•Resolved an accessibility issue where the skip links dialog was announcing itself twice. [236758]
•Resolved an issue where a workflow running in a panel could throw an issue after performing a Show Results activity. [179100]
•Resolved an edge case where complex forms would sometimes hang and fail to fully initialize on the first run (would work on the second run). [251361]
•Resolved an issue where the map initialized event was firing too early due to some of the map loading restructuring that was done in a previous version. [254179]
•Resolved an issue where the arcade.run command could break when run against sublayers. [232145]
•Resolved an issue preventing the Workflow geometry picker from using snapping when snapping was enabled. [240218]
•Resolved an issue preventing the sketching.capture-geometry command from respecting its maps argument. [253702]
•Resolved an issue where date fields were not respecting the locale when inheriting the webmap formatting. [250664]
•Resolved an issue where not all measurement labels were removed when custom collection names were used to store the measurement markup. [250669]
•Resolved an issue where the geolocation accuracy zone around the blue dot gradually became opaque with location updates. [250673]
•The end-to-end integration between VertiGIS Studio Web and VertiGIS Studio Search is ready for use.
oIn Web Designer, you can choose which layer extensions you want to be backed by Search. The essential configuration information will be set up for you automatically in both Web and Search.
oIn Web at runtime, updated the search suggestions flyout to show the following:
▪Suggestions provided by Search-backed layers.
▪New options to execute your search against a single source.
•Improved location notes functionality. Key changes include:
oFull control over text properties (font, size, color, halo, and background).
oAlways see the anchor point the location note references. The anchor point provides a visual reference for interacting with the existing location note.
oMove the location note directly without having to remove and recreate it. The text is visible as you move the location note, allowing precise text placement on the map.
•Updated the Query and Filter tools so that string-based attribute fields support auto-complete functionality. This allows you to type in a few characters and find the matching string instead of needing to know the exact string ahead of time.
•Updated the Query tool so you can restrict your query to a custom-defined geometry. The presentation of location tools is backed by a standard menu model, allowing you to build your own specialized workflow-based tools for your users to use as part of the Query tool. For example, you could build a tool that presents a list of pre-defined city boundaries for the user to select from.
•Added a new command to create and add new related records (edit.display-add-related-feature). In addition to being able to edit existing related records, you can also add new entries to your related record set. For example, you want to add a new record of asset inspection in a related table.
•Added new commands to navigate between previous and next extents (map.zoom-to-previous-viewpoint and map.zoom-to-next-viewpoint). These can be presented as end-user tools, or used programmatically. There are options for including or suppressing the animated sense of motion when moving. These commands are particularly helpful for situations where an automated action causes the application to pan and zoom into a specific feature and the user wants to go back to where the map was previously, after inspecting the result.
•Added a new ‘Show Related Records When Unconfigured’ override on the layer extension configuration. This allows you to disable the default behavior of loading all related records when nothing is configured in the web map, and instead load nothing when nothing is configured in the web map.
•Added a new ui.theme-changed event that is raised any time the user changes the theme. This provides an event hook that customers were seeking to take additional actions when users changed the theme, such as selecting a more complementary basemap.
•Added a map loading indicator to help users understand when the map is busy loading data and to give a sense that something is still happening.
•Added a key modifier to allow the map to be panned while the user is sketching a geometry. When the space bar is held, the arrow keys will pan the map instead of moving the next vertex target.
•Corrected the representation of the rectangle when sketching on a rotated map; it is now oriented to the user’s perspective rather than to the map rotation.
•Updated to the ArcGIS Maps SDK for JavaScript 4.28 (formerly known as the Esri ArcGIS API for JavaScript 4.x or Esri’s JavaScript API 4.x).
•Updated to VertiGIS Studio Workflow 5.36 runtime.
•Extended the configuration arguments on the identify commands to allow prioritization of certain geometry types. This satisfies use cases such as always showing points first in information dense areas.
•Introduced a new pattern allowing event listeners to be configured with Web to listen for and respond to events raised via postMessage or via a new Workflow Post Message activity. This allows systems external to Web to raise events within Web’s event infrastructure to perform actions within Web in response to the external action.
•Updated the Printing component in Web to operate on either print layouts or ArcGIS Pro layouts (.pagx) for the new printing engine. An upcoming release of VertiGIS Studio Printing will provide the design-time tools to modify and save ArcGIS Pro layouts, and the installer for the new printing service engine.
•Improved the snapping subsystem loading performance and UX.
•Adjusted the algorithm for Designer pinpoint search to reduce memory and performance issues with large app configurations.
•Resolved an issue preventing feature attachments from showing in the feature details component on subtype layers. [201093]
•Resolved some remaining issues preventing certain WMTS layers from loading. [248100, 251440]
•Resolved an issue where the highlights.pulse command would throw an error if the map was minimized or not visible. [245739]
•Resolved an issue where highlights commands would throw errors on GeoJSON layers. [249791]
•Resolved an issue where the title of field-based symbology was showing instead of the coded value. [248164]
•Corrected an issue preventing configuration of snapping where some combinations of edge and vertex snapping could not be used together. [250396]
•Resolved an issue with snapping where snapping could fail to snap to recently edited features. [247428]
•Resolved an issue with sharing links taking users to an incorrect location due to different coordinate systems. [249891]
•Resolved an issue with sharing links where the Capital City demo map could incorrectly show up instead of the map configured in the app. [242855]
•Resolved an issue that prevented coordinate options from showing in the coordinates component when the spatial reference was GDA2020. [249790]
•Resolved an issue where graphics layers created by workflows were not showing up in VertiGIS Studio Printing output. [247526]
•Resolved some time-based race condition edge cases that could cause intermittent unexpected behavior such as a highlight not showing up or not clearing or where loaded related records not appearing once loaded. [249769, 244632, 246240]
•Resolved an issue where edit fields would not show up once they had been edited in Esri Field Maps. [241076]
•Removed an incorrect dependency between location notes and the coordinates component that could cause location note creation to throw an error when the component was not in the app. [246865]
•Resolved an issue where field display names configured in the webmap were not being respected in the results table. [201615]
•Resolved an issue where multiple groups of attributes defined in the webmap were not being respected in the results table (only the first group was being shown). [246007]
•Resolved an issue where multiple groups of attributes defined in the webmap would show 1:1 data link attributes repeatedly at the end of each group. [246324]
•Resolved an issue where workflow auto-complete content was shown in the incorrect location on a popped-out panel. [231740]
•Resolved an issue where closing one map in a multi-map app could incorrectly remove the extent object from the other map. [232368]
•Resolved an issue where the query tool could not handle single quotes and apostrophes correctly. [237244]
•Resolved an issue where clearing an icon for an expand component in Designer could throw an error. [246109]
•Resolved possible infinite loading errors in Designer when duplicate custom libraries were included in the app. [231648]
•Resolved several edge cases for configuration loading related to changes to serialization and schema. [251352, 250248, 250002]
•Resolved formatting and scrollbar issues in Designer pinpoint search. [251362]
Despite many hours of investigation and specific changes to mitigate impact a few apps may still experience slow, out of memory, or crashing apps in Designer. We are continuing to dig for the root cause.
•Resolved an issue related to Web apps not working in iOS17. [244807, 244187]
•Resolved an issue related to WMTS layers inadvertently creating many layer extensions in config due to how Esri represents WMTS. [246707, 247737]
•Resolved an issue in App Designer in processing webmaps that was causing at least some of the crashes and out of memory errors. It was very notable in webmaps with subtype group layers but was affecting other large/complex webmaps as well. [245740]
•Resolved an issue with a case-sensitive match that should have been case insensitive affecting attribute retrieval from Postgres DB attributes names in subtype group layers. [246217]
•Resolved a Printing issue where the visible state of layers wasn’t correctly passed to printing. i.e. you could see a layer in your print that wasn't visible in your map. [246418]
•Resolved a Printing issue where grouped layers were no longer being properly respected and displayed correctly in prints. [246444]
•Resolved a regression in the Remove Application Data workflow activity. [246321]
•Added the ability to save single-click and parameterized quick queries for end users. After the query is built and tested in the query builder, the query string can be used in the automatic creation of a new workflow using a new Quick Query template. The Designer UI allows you to optionally present some aspects of the query to the end user to populate, along with a line of instructional text. This allows for the rapid construction of a set of buttons or toolbar items that can pre-run queries, or allows the end user to supply a clear value to be part of a sophisticated, underlying query.
•Enhanced the .CSV upload to auto-detect additional delimiters. In addition to the comma, the delimiters of space, semicolon, and pipe are also recognized.
•Added several new configuration points for how to display buttons. These include additional controls for style, size, emphasis, and icon position. Furthermore, there is now a custom styling option to allow you to create unique button styling that is not based upon the application brand theme.
•Extended the system.open-url command to support additional options that take into account Coordinates Service configuration. This allows the system.open-url latitude and longitude tokens to support additional spatial references and projections.
•Added results-replace and results-update commands. This allows external factors (such as workflows) to modify a result and force Web to update this result visually in the UI.
•Made the modal dialog component draggable to satisfy use cases where end users were asked to approve changes, but the dialog prevented those changes from being visible.
•When adding features, the template picker now remembers the last template used for the feature when invoked again. This is a session-only memory but improves usability in situations where you are repeatedly adding features of the same template type in rapid succession.
•Updated the error state styling in forms to de-emphasize it and make it less alarming.
•Rebuilt and optimized the app start-up code. Objectively, apps now load approximately 1/3 faster than they did before. Subjectively, apps appear to load significantly faster by ensuring some things become visible when loading. This involved:
•Auditing all dependencies and their order to ensure the smallest possible amount of code was required at start-up.
•Reordering start-up logic for maximum performance.
•Replacing existing VertiGIS web map serialization code with native Esri serialization code.
•Improving perceived performance by visually showing aspects of the app even before everything is fully loaded.
•Created a mechanism to use Workflow for more complex canExecute logic. The canExecute logic determines if an action is allowed and shown in the interface. Some existing mechanisms for overriding default canExecute logic were available but did not allow conditional evaluations. More sophisticated use cases are now possible in specialized applications to show or hide key actions based on more complex logic.
•Modified the query logic for Esri Subtype Sublayers. Although these appear as separate layers, they are really not. So the query logic was modified to be more efficient and send only a single request.
•Enhanced tasks.identify to allow an input parameter for outfields. This allows tasks.identify to return non-default attributes when they are needed to satisfy a particular use case.
•Updated snapping logic to ensure that hidden layers can not be snapped to.
•Updated internal API code to fix remaining cases where attribute field names were not treated as case-insensitive. Attribute field names must be treated as case-insensitive because different Esri APIs return them with different case structures.
•Updated to version 5.35 of VertiGIS Studio Workflow.
•Resolved an issue where the results table could lose its scroll bar when being minimized and maximized. [185529]
•Resolved an issue where a layer failed to load correctly when added with a workflow Add Feature Layer activity. [238040]
•Resolved an issue that caused workflow form buttons to stop functioning after the panel containing the workflow was popped out and popped back into the application. [239024]
•Resolved an issue with hosted feature layers where adding a layer whose layer ID is not 0 could fail under some conditions. [177550]
•Resolved an issue where hosted feature layers could not be added when the layer ID was included as part of the URL. [235609]
•Updated the related records request code to retry when first attempt is unsuccessful and to fail gracefully if the related records could not be accessed. [235612]
•Fixed a memory leak related to Arcade expressions and the results table. [242163]
•Resolved several styling issues that occurred with content in Expand components when the map was popped out. [240835, 202046]
•Resolved an issue where stored image URLs were being down-cased as part of their serialization, but the URLs were in fact case-sensitive and broke as a result. [194643]
•Resolved an issue where the Esri web map shaded relief style was not working. [242619]
•Updated our shared projects S3 access code to allow for secured buckets (secured buckets do not support public sharing links). [240932]
•Resolved edge cases where clicking on a map a second time would cause an existing pop-up to shift location. [241651]
•Resolved an issue that prevented the rendering of custom web map symbology on utility network subtype group layers. [240542]
•Resolved an issue where CSV uploads with decimal thousands separators would fail in a non-English browser locale. [240556]
•Added a missing upgrade rule for sketching.capture-geometry, as an error incorrectly showed when trying to edit JSON of an older app. [244720]
•We resolved a bug where Web was not respecting the web map configuration around which subtypes should be included in the subtype group layers. Web was including and creating configuration for all subtype layers. Now that this issue has been resolved, you may need to open the app configuration in Designer and re-save it (or manually remove the undesired layer configuration). Otherwise, Web will still look for that layer, but it will no longer be found or be visible and an error could be shown to the end user.
•Symbols for feature templates may not be shown properly in the template picker. This was tracked down and lives directly inside Esri web map serialization code. It should be resolved in a future Esri API update.
•We continue to investigate and resolve issues related to displaying Web apps on iOS 17 devices. We have made progress, but issues remain that we could not resolve prior to the 5.26 release.
Breaking changes coming in VertiGIS Studio Web 5.27:
•Web 5.27 will use the ArcGIS Maps SDK for JavaScript 4.28 (formerly known as the Esri ArcGIS API for JavaScript 4.x or Esri’s JavaScript API 4.x). This version removes the watchUtils pattern.
•The watchUtils pattern was deprecated in Web 5.21 as part of Esri’s ArcGIS JavaScript 4.24 API and has been logging console warnings since that date.
•It is likely that previously written custom components for Web are using watchUtils in some capacity. You will need to update those components prior to Web 5.27 or they will cease working. For replacement patterns and additional information, see Esri’s announcement.
•Several customers requested the ability to suppress the loading of related records for layers where the information is time consuming to load and not of value to the end user. The Esri web map specification supports this type of configuration.
•Today, if no related record configuration is present in the web map, Web shows all related records. Beginning in 5.27, Web will always respect the configuration within the web map. This means you must configure your web map to display related records. In cases where your web map contains no related record configuration today and shows all related records in Web, your 5.27 app will no longer display those related records.
•You can add the related record configuration to your web map today and it will be respected in both 5.26 and 5.27. The order of related record collections will not be respected in 5.26; we plan to respect the order in 5.27.
•Data Linking now supports one-to-one cardinality relationships. With one-to-one data links, the linked data can now appear as attribute fields on the feature in the feature details or results table components via a new ‘enable one-to-one attribute display’ option on those components.
•Added the ability to configure drawing symbol presets as part of the draw service for points, lines, and polygons. When configured, these named presets show up as part of the style UIs as selectable symbol presets. A configuration option also gives you the ability to hide the granular styling controls so end users are presented with only a simplified list of symbol presets. You now have the following three options for allowing end users to style drawing:
oDefine no presets: end users are presented with the default interface allowing for granular control of color, style, thickness, etc.
oDefine presets: end users are presented with configured presets plus the granular control options.
oDefine presets and choose to ‘show only symbol presets’: end users are presented with configured presets only with no granular preset options.
•The advanced mode of the Query and Filter tools has been extended with a toolbox of values that can be inserted to help create the query. These include attribute fields and a collection of the most common operators, numeric functions, and string functions.
•Added a new event service and a new event listener pattern. This new pattern allows a command or workflow to be run when any VertiGIS Studio Web event occurs. This pattern allows configuration-only access to the many events supported by VertiGIS Studio Web without requiring use of the SDK. To make this pattern even more useful, the event listener can be restricted to a specific sender. This ensures that general events such as ui.activated can be used in a more targeted way. For example, you want to raise a ui.activated event only when the results table is activated, but not when the other components in your application are activated.
•Added a new view within Designer accessible from the component or service title that shows the Model URI and Layout ID. When building a workflow, you sometimes need access to the Model URI (e.g., you need to load and modify layer extension configuration) or the Layout ID (e.g., you need to activate or deactivate a visual UI component).
•Added new tab presentation options. Tabs can now show icons alone, title alone, or icon and title together. Both title and icon are taken from the component immediately under the tab.
•Updated to Workflow 5.34. The Workflow forms displayed within VertiGIS Studio Web are now being driven directly from Workflow, not re-interpreted by VertiGIS Studio Web.
•Updated the reports.run command to directly support JSON data sources.
•Added a viewer.debug command to make analyzing and debugging command chains easier.
•Added a viewer.log-debug command to make it easier to send information to the console log for debugging.
•Added a new viewer.post-message-await-reply operation allowing cleaner bi-directional communication between VertiGIS Studio Web and a parent window or application.
•Added a LicensingService.validateLicense operation allowing license SKU checks with less work, particularly when extending VertiGIS Studio Web with your own code.
•Created a mechanism to pass context to an arcade.run command. This allows arcade to do more sophisticated canExecute checks supporting customer implementations with complex rules determining if an action should be permitted.
•Some components require a map. The UI element allowing application administrators to choose the map they wish to reference was moved to our react-UI library to make it accessible for custom component configuration interfaces.
•Resolved an issue with the country-based IP lookup API that prevented country-specific application templates created by partners from displaying in the Designer interface. [238235]
•Resolved an issue where converting an Add Shapefile tool to a workflow produced a workflow that behaved differently than the originating tool. [235386]
•Resolved an issue that prevented editing of fields that were driving unique value renderers. [208801]
•Resolved an issue where excluded subtypes were still being shown in some Web interfaces making it possible to create, edit, and delete subtypes that were configured to be excluded. [232554]
•Resolved a timing issue when stepping through feature details with the paging navigation where details would not always update properly and in some cases actions such as Edit would reference the previous feature. [222301]
•Resolved an issue that allowed cached map services to draw when past min/max scale. [146583]
•Resolved an issue where certain WMS layers caused error messages when loading projects. [188946]
•Resolved an intermittent issue that prevented related records that existed from being displayed properly in certain circumstances often due to a timing issue. [235610]
•Resolved an issue preventing correct populating of results from a table that had feature attachments enabled. [193033]
•Resolved a number of issues related to the pop-up slot positioning and behavior. [238394, 150170, 237019, 238273, 161546]
•Resolved an issue preventing layerDefinition override templates from working when types were used for a feature/subtype group layer. [237220]
•When attribute fields are added to features with one-to-one data links, those attribute fields are not included as part of export actions, such as exporting the data to CSV files.
•Added a new query tool and a new filter tool. The UI and interaction for these two tools is very similar. The query tool returns a set of results in the same way an identify or search does. The filter tool shows the results visibly on the map by removing features that do not match the filter. Both the query tool and the filter tool provide the following:
oA data source selector providing a list of all compatible data sources. The data sources differ between the query and filter tools. Query shows a list of all data sources that support ‘query’ and includes non-spatial related data tables. Filter shows a list of all data sources visible on the map that support ‘query’; this includes user-added data.
oA map area selector that allows you to search the entire data source, or only the visible map extent of your data source.
oAn expression builder for constructing a set of Boolean expressions. This expression builder is attribute-type aware and presents appropriate operators based on the attribute selected.
oAn optional advanced mode replaces the expression builder with the actual query syntax that will be sent. For an advanced user, this allows more advanced query syntax or adjustments to something created with the expression builder. Things like coded domain values appear differently in these two interfaces; the expression builder shows the user-friendly value, whereas the advanced mode shows the numeric code representing that value, which will be sent as part of the query.
•Added a new project sharing and collaboration component. This new component is backed by a new Shared Storage Service that you configure to point at a simple storage service (S3) compatible datastore. This datastore is set up and owned by you, either in the cloud or on premises. This allows significant control over who can gain access to the datastore.
oProject sharing and collaboration provide no security. Any user who can access your application and the project-sharing component to save a project can also access, modify, and delete any project in the S3 storage. The Web interface uses client-side information hiding to make undesirable actions less accessible (e.g., we only show the option to delete projects to the user who created it); however, nothing prevents a user from using the storage credentials to directly access S3 storage with full access to everything it contains.
oA list of projects allows you to click a project to load it, or to access additional options from a three-dot menu. Additional options include the ability to create a public sharing link, to download the project, to adjust the project settings, and to delete the project if you were its creator.
▪The last loaded project is identified at the top of the list of projects, and a three-dot menu allows for the creation of a new project with the current application state or by uploading a project file, as well as saving-overwriting the currently loaded project with the current application state.
▪A set of filters under Refine allow the list of projects to be filtered by keyword, ownership, and editability. A Sort option is also provided for ordering the list of projects by Date Modified, Date Created, Owner, and Title.
oProject settings allows you to specify the name and description of the project. Includes the option to make your project read-only so that those the project is shared with can load it, but cannot update it. Includes options for sharing your project with users and groups. By default, a newly-created project is shared only with yourself; you can share the project with everyone by removing all share restrictions, including your own name.
oThere are many S3 compatible products and services in the market; in our internal development and testing, we used the following:
▪On-prem – MinIO (supports Kubernetes, Docker, Linux, macOS, and Windows).
▪SaaS – Amazon Web Services S3. MinIO also works here and you may find its security model easier to manage.
▪Management / Tools / Utilities – S3 Browser (has both a free and a pro version).
•Added a new guided upload experience, making it easier to bring tabular data and shapefiles into Web. This guided experience was created using a series of micro UI interfaces that are also available individually.
oAn updated file picker interface allows both browse and select, as well as drag and drop of single or multiple files.
oAn upload settings UI allows you to specify the following:
▪geometry format and column.
▪primary key column (or generate a new one).
▪the display field.
▪the coordinate system.
The UI also provides a preview of the first few rows of your data and an option to use the first row as a header. This code behind this UI analyzes and pre-selects the best options for your data in the majority of cases.
oA layer settings UI allows you to adjust the layer alias, feature title, and feature description and includes easy insertion of attribute value tokens alongside your own text. This UI also allows you to set the identify, query, and search flags for the layer. This micro UI is also available outside of the guided experience on most layers as the ‘Configure Layer’ tool.
oA layer symbology UI allows you to adjust the colors and styles of the layer as shown on the map. This micro UI is always available outside of the guided experience on most layers as the ‘Layer Style’ tool. This tool supports the most common options for points, lines, and polygons.
•Added Web support for Esri partnered collaboration in ArcGIS Online.
https://doc.arcgis.com/en/arcgis-online/administer/create-partnered-collaboration.htm
https://doc.arcgis.com/en/arcgis-online/share-maps/create-groups.htm
oWe have adjusted our org check logic to accommodate Web apps inside a group backed by a partnered collaboration.
oPreviously, if an app was created by Org A, when an authenticated user from Org B tried to run the app within a group backed by an Esri partnered collaboration, a security check inside Web would fail and the app would not open.
oEsri partnered collaboration meets the security requirements ensuring that both parties have ‘opted in’ to trust each other. The security check inside Web has been extended to see if the app is inside a partnered-collaboration-backed group, and if so, to allow an authenticated user accessing it from Org B to run that app.
oThis only works when both orgs are within ArcGIS Online. There is no support for this pattern within ArcGIS Enterprise. Partnered Collaboration is an ArcGIS Online feature and is different from the Distributed Collaboration groups used by ArcGIS Enterprise to sync content between orgs.
oThis only works with https://apps.vertigisstudio.com / https://apps.vertigisstudio.eu. It will not work with a VertiGIS Studio SaaS subdomain (e.g., it will not work if either org is using https://<org>.apps.vertigisstudio.com or https://<org>.apps.vertigistudio.eu).
oThis new pattern works if Org A is properly licensed. The license status of Org B is not verified, which allows this collaboration pattern to work both for use cases where Org A has an appropriate Web license tier to cover the identities of Org B, or where Org B has their own Web license to cover their identities.
•Added tools in Designer to download and upload translations. This complements the ability to configure language strings directly in Designer by allowing you to download a JSON file that shows all untranslated strings when multiple languages are used and allows you to use external tools to translate those strings and then re-upload them. See Download Translations and Upload Translations in the File menu. This makes finding untranslated strings in your application far easier.
•Performance improvements to Designer by tracking down and addressing interactions in the interface that when done repeatedly could cause gradual performance degradation. This is part of our ongoing work to assess performance of both Designer and Web to ensure things do not slow down over time.
•Updated to the ArcGIS Maps SDK for JavaScript 4.26 (formerly known as the Esri ArcGIS API for JavaScript 4.x or Esri’s JavaScript API 4.x).
•Updated to VertiGIS Studio Workflow 5.33.1 Runtime.
•Added a new platformApiKey URL parameter allowing the Esri platform API key to be supplied directly in the URL. This pattern makes building more generic Web apps far easier as the API key does not need to be included in the app JSON itself.
•Added a new viewer.post-message-await-reply command that allows enhanced communication between Web and other applications across iFrame boundaries. This allows for more natural bi-directional interactions to be built.
•Introduced a new usage pattern allowing an application embedding Web to cache and supply authentication tokens to allow faster loading in different parts of the application interface.
•Added 'defaultValue' to the translate(…) function. This allows some specialized use cases for on-the-fly translation of data sources that do not normally allow translation, such as Esri coded domains.
•Added a new resource on the VertiGIS Studio Developer Center documenting Web application initialization flow and events.
•Resolved an issue preventing secured WMTS services from being added to custom basemaps. [231632]
•Resolved an issue where WMTS layers failed to load when added to a custom basemap. [228061]
•Resolved an issue that sometimes prevented attribute expression values from being shown the first time they were displayed in results. [233199]
•Resolved an issue that prevented arcade evaluated attribute data from showing correctly when paging through click-identify results. [233196]
•Resolved an issue causing poor performance when re-ordering layers in layer lists containing many layers (this was particularly bad in Firefox browsers). [216657]
•Resolved an issue preventing printing operation if markup was removed using the Edit Markup > Delete option (rather than clearing markup). [201506]
•Resolved an issue that prevented hiding child sublayers when applying a layer preset if the sublayers were already expanded and visible. [203966]
•Resolved an issue preventing the Layer Style tool from being used on user-uploaded layers. [233472]
•Resolved an issue where uploaded shapefile did not have OBJECTIDs. [230893]
•Resolved a language string mismatch that prevented the file upload dialog from being fully internationalized. [231786]
•Resolved an issue preventing Results Table from displaying results with New Line characters in the data. [231435]
•Resolved an issue where markup moved after it was saved and re-loaded in a project left behind part of the markup. [197609]
•Resolved an issue where the Map Initialized event failed if one of the configured map services failed to load. [198903]
•Resolved a case where charts.display command could cause a crash if used with a large number of features. [231146]
•Project sharing and cross-org collaboration do not work seamlessly together. While some project sharing across cross-org collaboration is possible, Esri’s system does not supply the user and group information required to make this completely functional.
•The new layer settings configurability against layers defined in the web map (e.g., modify the feature description and the task settings) are limited to that session only; they will not currently be saved as part of a saved project.
•Added support for symbolization and re-symbolization of points. Added options for line color, line size, fill color, marker style, marker size, and marker angle.
•Made several additions and changes to the Layer List component:
oAdded a layer list filter to the Layer List.
oAdded a layer actions three-dot menu control for all layers.
oCreated a new sticky layer tools area appearing above the Layer List.
oMoved the existing re-order layers button into the layer tools area and changed it from a button with text to an icon button.
oExtended configuration settings for the Layer List to allow control over what is included in the new layer tools area above the Layer List.
•Added new Set Layer Visibility tool that allows all layers visible in the Layer List to be checked and unchecked. This new tool works in conjunction with Layer List filtering to make it easy to locate several layers of interest and then turn them all on or off at the same time. This new tool is backed by a new layers.set-visibility command.
•Added support for GeoJSON layers for visualization, search, and identify.
•Added support for Esri RouteLayers for visualization, search, and identify.
•Added support for Esri MapNotesLayers for visualization.
•Rebuilt the file upload dialog. The new file upload dialog supports drag-and-drop, multiple files, and the ability to remove individual files. This work is the first step toward providing a guided, interactive upload process for CSV and XLSX files coming in a future version.
The way default layouts are set for multi-layout applications in Designer was simplified and improved. The default layout is now indicated by an icon in the layout tab. Setting the default layout is now done directly in the three-dot menu on a layout tab. The pre-existing method of using the Application Initializing event on the App service to specify a default layout is still supported. This is particularly relevant for more advanced layout selection use cases, such as adapting to device size, device orientation, and similar cases.
•Updated to VertiGIS Studio Workflow Runtime 5.32.2.
•Markup commands now support collections. This enhancement optionally allows a collection ID to be specified when you add markup. Other markup commands can then reference this collection ID. In addition to resolving reported issues with default markup actions, such as problems moving markup loaded from a project, this functionality supports other use cases, such as he ability to show and hide entire collections of markup.
•Made updates and improvements to token timeout and refresh in Designer. Tokens are now refreshed in a faster and less disruptive way.
•Reviewed and optimized all code responsible for generating application JSON when saving. This improved the time required to save applications in Designer.
•Resolved an issue that prevented measurement label markup from appearing on very small lines. [192113]
•Resolved an issue that prevented re-symbolization of polygon layers that had pictures in their renderer. [202146]
•Resolved an issue that prevented proper token replacement when field names contained non-English characters. [197735]
•Resolved an issue that prevented a tab containing a workflow from closing properly when the workflow Cancel button was used. This issue applied when a workflow target was set directly to a tab control. [213790]
•Resolved an issue that prevented the identify method in the IdentifyService from properly handling point geometries. [203200]
•Resolved an issue that caused improper handling of map clicks when interacting with Esri widgets used in Web custom libraries. [213850]
•Resolved an issue that prevented the Esri Floor Filter Widget used in a Web custom library from correctly applying the filter when selecting a level. [204212]
•Resolved an issue that caused coded values to behave incorrectly for Subtype Group Sublayers. [213908]
•Resolved an issue that prevented re-ordering of sublayers in some circumstances. [222769]
•Resolved an issue that caused fields excluded from the web map pop-up configuration to be incorrectly shown as available in some configuration contexts in Designer. [222693]
•Resolved an issue that prevented the adding of WMS layers from URL using the map.add-layers command. [197636]
•Resolved an edge-case issue in Designer that could cause a sign-in attempt to continually loop you back to the sign-in page. [197824]
•Resolved an issue in Designer that, when you created a copy of an existing application or application template with certain permissions, could cause elements of the copy to be inaccessible. [222616]
This version of Web still supports the deprecated legacy Workflow activity pack pattern. The next version of Web released will be the last version that supports this deprecated legacy Workflow activity pack pattern. We have proactively reached out to customers that may have still be using this pattern and anticipate very few will be affected. We are adding logging messages in Workflow Runtime to flag this pattern to help customers note it and address it prior to the August 2023 release of Web.
This is a SaaS-only release and addresses functional issues with Utility Network and SubtypeGroupLayer layers. These bug fixes will be available in an on-premises installer as part of the 5.23 release.
•Fixed an issue where you were unable to create a feature as part of a Utility Network web map with SubtypeGroupLayer layers. [204740]
•Fixed an issue where templates did not load when you edited features that were part of SubtypeGroupLayer layers within a Utility Network web map. [211594]
•Fixed an issue that caused poor snapping performance against SubtypeGroupLayer layers. [213787]
•Fixed an issue where coded value domains (as part of subtypes in Utility Network data) were displaying the numerical code rather than the human-readable value in editing forms. [203934]
•Fixed an issue where saved projects containing WMS layers with sublayers failed to load. Esri resolved an underlying issue with the display order of sublayers in WMS layers in their JavaScript 4.25 API that broke an assumption in our code. [203634]
•Data linking has arrived. This initial release allows for the setup of one-to-many data link relationships on a layer extension. Data links can be set up via client-side and server-side workflows. Client-side workflows are ideal for gathering data from other systems via API calls. Server-side workflows are ideal for gathering data from local ODBC connected data such as databases. When adding a data link, you can use the "Create a new workflow" option and select the "Feature - Data Linking Sample" template as a starting point. Additionally, you can find two functional sample workflows you can import into your own Workflow environments: a client workflow REST API example and a server workflow SQL database example. A future release enhancement will enable the one-to-one data link relationship to integrate linked data directly into a feature’s list of attributes.
•Added editing support for related tables.
•Added editing support for SubtypeGroupLayers.
•Extended the system.download-file command to handle the default output of the Workflow Get Map Screenshot activity. This makes it much easier to build a simple tool for users to click a button and download an image of the current map.
•Exposed the generalization settings for the highlighting service in a new performance section. This allows you to reduce or disable highlight generalization when your application needs to highlight a small number of very detailed geometries.
•Added a new ui-get-locale operation. This operation allows you to determine the current locale from the Web application prior to making changes.
•Improved the arcade.run function to automatically add and provide context arguments to the arcade script that is being run.
•Updated to use Esri’s JavaScript 4.25 API.
•Updated workflow runtime to VertiGIS Studio Workflow 5.31.1.
•End-to-end review and optimization of the application configuration serialization and deserialization for significantly improved performance.
•Replaced remaining instances of EsriWatchUtils with ReactiveUtils (Esri’s new pattern).
•Dropped support for iOS 14 as it is no longer supported by the Esri JavaScript 4.25 API. Testing found that the map would not draw on an iOS 14 device.
•Resolved three high-security and two medium-security issues flagged by our regular automated security scanning. [144910]
•Resolved an issue with Workflow's List Box form element where the checked property could not be toggled using a Set Form Element Items activity after the form loaded. [199867]
•Found and fixed a couple of edge cases and a potential race condition where relationship fields' tokens showed as #INVALID in the feature details component. [199582]
•Resolved an issue preventing attachments of MapServiceSublayers from displaying correctly. [201093]
•Resolved an issue where Utility Network rules were not being correctly applied when attributes were returned in uppercase. The code is now case insensitive. [200828]
•Resolved an issue preventing the edit form from honoring the edit flag in pop-up field information. [184255]
•Resolved an issue preventing the display of feature details in the Workflow Show Results activity panel if an optional Label format was specified. [162117]
•Resolved an issue that caused the chart drill-in action to reset on a resize. [202253]
•Firefox (109.0.1) has intermittent display issues with Esri JavaScript 4.25 map data. We observed instances where the map would disappear completely showing blank white. Investigation shows it is not in VertiGIS Studio's code, it is something between the Esri rendering and the Firefox version. We expect this will resolve itself with a future update to Firefox, or to Esri’s JavaScript 4.x API.
•Added snapping. You can use snapping anywhere you create or edit a geometry on the map, including editing feature geometries, drawing, and measurement. When enabled, snapping interacts with your current next-vertex placement and indicates with color and emphasis which vertex or line you are snapping to. Snapping interacts with all visible layers including measurement and markup. Snapping can be toggled on and off using the new Activate Snapping and Deactivate Snapping tools in Designer, and the new sketching.activate-snapping and sketching.deactivate-snapping commands. You can hold the ALT key to temporarily toggle the state of snapping while creating or editing a geometry.
•Updated the Result Details component. Result Details visuals have been completely re-worked. Some of the more striking visual changes include the display of attribute data; collapsing feature actions into a single row to save space and bring the title and description closer together; visual improvements to external links and file attachments, and a new tabular display of related records separating different relationships into their own tab showing their source. Additional configuration that gives the user control over the feature action representation, including independent controls for title and icon, and control over the button style and size, is now available. Finally, for applications where the display of large sets of related data is important, a new option has been added to display related records in a table so that all related records and their attributes can be seen without requiring individual drill-down navigation.
•Introduced a new summary pop-up configuration mechanism. The summary of a result is used in both the Results List and the Result Summary view. For each individual layer, you can now configure the summary pop-up content. The webmap pop-up configuration defines what is available and the summary pop-up content decides which aspects of the webmap pop-up configuration to display. In addition to enabling and disabling the text description and included media, you can include selected feature attributes in your summary as well. This enables applications to show most of the necessary information for you directly in the Results List without requiring you to drill into the feature details.
•Introduced a new results service. This application-wide service gives you some control over the order of content in the Result Summary and Result Details views, along with a setting that allows you to hide empty result attributes. The results service also gives you control over the card height used in the Results List to support applications that want more detailed Results List entries.
•Added starred results. Starred results allow you to build a starred results-of-interest collection across multiple search and identify operations, and to easily load that starred collection into view at any time. The UI has been updated to show a star-shaped toggle switch in places where users normally interact with results. Added the new Add to Starred Results and Remove from Starred Results tools alongside Load Starred Results and Clear Starred Results tools. To back this new feature, the existing results.add, results.remove, results.display, results.clear, and results.get-features commands have been extended to allow an optional resultsSetId argument. Similarly, the results.changed event has been extended to allow detection of changes to a resultsSetId. These and other changes allow for more advanced configuration use cases building, comparing, and managing multiple named sets of results.
•The Add Layer interface now supports Esri portal layer items, which are backed by multiple layers. When a layer item with multiple backing layers is selected, an additional dialog showing a filterable list of layer names and their geometry types is presented to the user for their selection. An optional argument supports adding multiple layers at the same time: {"name": "portal.choose-layers", "arguments": {"allowMultiple": true}}.
•The geometry capture form element in VertiGIS Studio Workflow now supports the two-vertex line geometry capture.
•The Combine Mode property for Show Results in VertiGIS Studio Workflow is now supported.
•Added a new ‘no context’ Add Feature tool, which allows you to configure an action that adds a feature for a specific layer from anywhere in your application interface.
•Support for Subtype Group Layers. This new layer configuration is not yet fully supported across all Esri products. The ArcGIS JavaScript 4.24 API references these as "ArcGISSubtypeGroupLayer", whereas the webmap specification references these as “SubtypeGroupLayer”. Depending on how you create your webmap, you may need to use Item Manager to update the webmap layer type to “ArcGISSubtypeGroupLayer” to use it in this version of VertiGIS Studio Web.
•The optional bulk edit interface in Designer now shows up if there are two or more items in the list. Previously, this was set to ten items; your feedback was that you wanted the option to use it in all cases.
•Updated the generated primaryAccentDisabled color for dark themes to ensure WCAG AA 2.1 compliant contrast.
•When creating your own Designer app template, a new "VertiGIS Studio Strict Template Version Matching" tag is available to prevent that template from showing up unless the Designer version matches the template version.
•Updated to use the Esri JavaScript 4.24 API. See this article on our Community page.
•Updated SDK code samples to ensure operation with Esri JavaScript 4.24 API breaking changes.
•Updated to use the 5.30 version of VertiGIS Studio Workflow runtime.
•Resolved an issue where an application's max zoom level got stuck at a lower level of detail when switching between basemaps configured with different max zoom levels. [198359]
•Resolved an issue that caused Identify to fail on WMS layers with an enveloper geometry type. [193167]
•Resolved an issue that prevented projects that contained uploaded shapefile layers from loading. [197087]
•Resolved a documentation error on the Developer Center that caused confusion between results.convert-to-layers and results.convert-to-layer. [190539]
•Resolved an issue preventing related records from displaying in the Designer preview after changing the webmap in the map component. [150646]
•Resolved an issue that prevented the Use App Colors setting from being enabled in the Background Color section of the KPI card configuration. [192976]
•Resolved an issue that caused the content in a pop-out panel to be incorrectly sized after adjusting the size in Designer. [193598]
•Resolved an issue that caused a ‘failed to fetch’ error when deploying an application to production in environments where the Esri portal was configured with IWA and anonymous access was disabled. [196669]
•Resolved an issue that caused failures when deploying applications with many related portal items in Designer. Designer now waits after creating an item for the Esri portal to acknowledge before proceeding to try to work with that item. [192752]
•Resolved an issue in Pinpoint search within Designer where inconsistencies in foreign language keyword translation caused unexpected results or missing results when searching. [197823]
•Reworked the Add Layer interface to extend it and improve its usability. This rework covers two use cases:
oFirst, the end user now has a more complete set of filters for finding the content they are looking for. In addition to the existing Layer Type filter, end users can now also filter based on content scopes (Owner, Favorites, Groups, Organization, Public), tags, and date ranges (Modified, Created).
oSecond, when the application author uses layer catalog behavior to restrict what the end user can access using tags, those tags are now presented to the end user allowing sub-selection of the content. For example, if you supplied authoritative layers for electric, water, and land, the end-user can filter and choose to view only the electric layers. Combined with the additional filter controls, this presents a complete layer catalog implementation.
•Extended the Dialog component with a configuration option to remove the end user’s ability to close the dialog by clicking "x" or pressing Esc. This satisfies common legal and disclaimer use cases where you require the end user to agree or disagree via a button click and want to ensure they have no other way to close the dialog.
•Added a place in the App service for an ArcGIS Platform API key. ArcGIS Platform API keys are generated by Esri Developer accounts to give API key-based access to certain ArcGIS Online functions such as tile loads, geocodes, and routing requests. This allows new use cases where a public app can still consume what would normally be identity-secured Esri content. The Esri JavaScript 4.x API works in such a way that if you include an ArcGIS Platform key tied to a function, the ArcGIS Platform key will always be used, even if you are also logged in with an Esri identity.
•All the underlying work for supporting the upcoming data linking feature is now in place. Currently, there are minimal points of interaction until we deliver the configuration interfaces in the December release. One aspect of this work that may be of interest is a new mechanism for running a workflow. In addition to the existing workflow.run we have added a new workflow.evaluate designed specifically to allow data to be returned by the workflow back to the command chain for immediate use. This is only supported as a synchronous operation.
•All the underlying work for supporting the upcoming release of VertiGIS Studio Analytics is now in place to ensure the VertiGIS Studio Web apps are able to send data on relevant tool usage, performance, and actions performed for use in VertiGIS Studio Analytics.
•Updated d-t-p to work with VertiGIS Inline 2.0.
•Extended the VertiGIS Studio Web API responsible for loading and saving web maps to support new Utility Network configuration content now found in web maps.
•Resolved several customer-reported issues affecting maps produced from Printing that stemmed from how Web serialized the web map content for transfer to Printing. [161864, 161802, 161841]
•Resolved an issue that sometimes prevented the first coded domain value in a coded domain list from appearing as it should while editing attribute forms. [184731]
•Resolved an issue where the context provided when a workflow is run with inputs was not being properly populated and passed to Workflow. [179940]
•Resolved an issue where during a sketch there was no mechanism to move the map. This was due to allowing both freehand and click-to-place-point actions. We now give you the option to disable the freehand mode as part of sketching to allow the click-and-hold action to let you move the map. Add "disableFreehand": true to your arguments. [182577]
•Resolved an issue that caused unexpected Workflow crash behavior when multiple Workflow Auto Complete form elements were interacted with in a non-consecutive order. [188615]
•Resolved an issue where certain types of custom basemaps would incorrectly disable the +- map zoom controls. [188382]
•Resolved an issue where sharing links were not properly preserving map service visibility on sublayers. [187063]
•Resolved a serialization issue that caused saved projects containing tiled image services to fail to load. [188904]
•Resolved an issue that prevented configuration of sublayer extensions when they were grouped using the web map. [190531]
•Resolved an issue that changed the color of the display of environment values around d-t-p making them unreadable. [192050]
•Resolved an issue where error text in dark theme did not have sufficient contrast. [183224]
•Resolved an issue where a Web licensing prompt would show in Mobile Designer because of the new app preview. This preview uses Web behind the scenes. [187475]
•Added a new coordinates configuration service. This new service gives far greater control over which coordinate systems are used in your application, and how they are presented to end users.
oAdjust the name and presentation of existing coordinate systems including level of precision.
oRemove coordinate systems that users are familiar with in the context of your application and remove less common options such as MGRS, USNG, or UTM.
oAdd coordinate systems in addition to the default webmap coordinate system allowing users to toggle back and forth.
oSpecify input and output transformations for reprojection.
•The layer list component has been updated to allow for end-user reordering of layers. This includes layers, sublayers, user added, and user uploaded layers. Take note that while sublayers can be reordered under their parent layer, they cannot be move to new parents.
•Added a new Export Map tool saves your current webmap or web scene as a new Esri portal item.
•Reviewed and extended the content checks when authoring apps. You should now be able to reference public content from other orgs or portals in your Development app.
•The add feature tool now supports immediately adding file attachments.
•Improvements to library source mapping in SDK to allow better development and debugging experience when writing custom VSW components.
•Made a larger set of UI elements used by VSW accessible in the SDK space for use in custom VSW components.
•Resolved an issue where adding WMS layers would always add all layers, even when a sub-set were selected. [179873, 161629]
•Resolved an issue were graphics from the Workflow geometry picker were not being cleared at appropriate times. [185624]
•Resolved several issues in Web Designer related values entered when resizing components behaving erratically. [141297, 144277, 184493]
•Resolved an issue in Web Designer that prevented app thumbnails from being created in some on-prem installation configurations. [161904]
•Resolved an issue with feature editing where supplying a geometry to the edit.display-add-feature incorrectly disabled geometry editing. [184169]
•Resolved an issue where labels generated in Arcade expressions with multiple attributes were not shown correctly in result details. [150201]
•Resolved an issue were sublayer settings in Web Designer were unavailable when the layer existed in a group layer. [189466]
•Resolved an issue where sharing links were not correctly preserving map service sublayer visibility. [187063]
•Resolved an accessibility issue where layer visibility toggles in the layer list were not being read out by the screen reader. [180191]
•Resolved an accessibility issue where checkbox lists were missing focus indicators. [180194]
•Resolved an accessibility issue where the layer list could cause a keyboard navigation trap. [180193]
•The gdbVersion is now serialized as a custom parameter as part of the web map JSON. This change makes it possible for other applications and workflows to determine which gdbVersion is intended and makes gdbVersion aware functionality possible.
•The OID of a created feature is now returned as part of the creation function. This change makes it possible for other applications and workflows to immediately act upon on the created feature. This allows for improved user experiences such as being able to add attachments while creating a feature in future releases.
•Resolved an issue with Workflow aria tags for screen readers that caused an invalid empty aria tag in some circumstances where no aria tag should be present. [185626]
•Panels can now be popped out of the main application for use on additional displays. This allows key requested use cases for popping out 3rd party map views, and also fulfills a long-requested ability to pop the results table out for maximum data visualization real-estate on its own display. Popped out views remain connected to the main application and can be popped back in at any time. Almost anything can now be placed in a panel and popped out of the application. You can pop-out multiple panels form a single application. Configure this using the new Show Popout Button property on a panel.
•Application deployment between environments (d-t-p) has been extended based on customer feedback.
oAdded the ability to Exclude Deployment Items. This allows portal items such as a webmap or a workflow to opt out and never be copied as part of deploying an application. This enables use cases such as having multiple application all reference a single webmap or a single workflow.
oAdded Deployment Hooks to application deployment. This allows custom actions to occur on the deploy events using standard webhook patterns. A common use case is to move or replicate databases or server content. This is usable today with your own webhook infrastructure. In the near future we will publish a pattern for using this together with Server Workflow webhooks, allowing you to use Server Workflow to perform your scripted activities on application deployment.
•Application end users now have the ability to toggle layer labels on and off when the layer supports this.
•Added the ability to hide the info icon linking to the basemap description. Added the ability for the application creator to add their own basemap descriptions.
•Links for https and mailto now render as clickable links for the end user in Results Table and Feature Summary views the same way they were supported in the Feature Details view.
•Added two commands to make working with layouts programmatically much easier. The commands are: viewer.get-all-layouts and viewer.get-current-layout.
•The search flyout showing suggestions and history was expanded. Most suggestions now fit on a single line, making it easier to read and avoiding visual crowding and possible scroll bars.
•Links for http/https and mailto now render as clickable links for the end user in Results Table and Feature Summary views the same way they were supported in the Feature Details view.
•Updated the folder name in the Esri portal to: VertiGIS Managed Files (don't delete) .
•Refreshed the sign-in page look and feel.
•Part of Esri's JavaScript 4.x API includes ready-to-use widgets. By wrapping these widgets as VertiGIS Studio Web components you can use them directly. Esri's widgets provide immediate value when they solve a use case; however, they do not support many other aspects of VertiGIS Studio Web in a way that would allow us to include them directly. Most notably, these widgets do not support WCAG AA accessibility; they do no full internationalization, and they are not integrated into the brand and style capabilities of VertiGIS Studio Web.
oTime Slider library. This library wraps the Esri TimeSlider widget. https://vertigis-web-incubator.netlify.app/timeslider.
o3D Tools library. This library wraps the following Esri widgets and supplies them in a ready-to-use library: AreaMeasurement, LineMeasurement, Daylight, ElevationProfile, LineOfSight, ShadowCast, Slice. https://vertigis-web-incubator.netlify.app/3d-tools.
oAdditional info and a brief 'how to use' guide in this community post: https://community.vertigis.com/hc/en-us/community/posts/5392645642642-Ready-to-use-Web-Esri-JavaScript-4-x-widgets-for-time-slider-and-3D-tools .
•Improvements to Designer pinpoint search.
oPinpoint now always operates in a transient modal interface. This allows more control over the size of the component tree when the preview is popped out.
oBetter result linking, making it easier to link directly from results to Services configuration items.
•Updated to Esri's JavaScript 4.23 API. This comes with several Esri bug fixes, performance improvements, and new capabilities that can be used in future development.
•Updated package creation and delivery system from Webpack 4.x to Webpack 5.x.
•Resolved an issue where panels were not respecting their configured size or not auto-sizing to the content. [184023, 186107]
•Resolved an issue that caused some searches in UTM to crash. [185435]
•Resolved an issue where the map was making too many requests for the non-active map when both 2D and 3D were configured. [185432]
•Resolved some upgrade and console errors occurring due to Esri changes in the World Topo basemap. [178879]
•Resolved an issue where Workflow form button text could not be programmatically set using Get Form Elements Items From Collection. [150128]
•Resolved an issue where selection highlights on 3D scene layers inside GroupLayers displayed at ground level. [183478]
•Resolved an issue where BuildingSceneLayers returned duplicate results for each sublayer. [183472]
•Resolved an issue where markdown was not being rendered for Workflow form check boxes and check groups. [181160]
•Resolved an issue preventing Google WMTS to load properly when part of a basemap. [161488]
•Tools are now available for adding, editing, and removing point, line and polygon features for Esri Feature Layers. This includes interfaces for editing geometry (including vertices), editing attributes, and file attachments.
oAdd Feature requires a layer context such as the layer list. This allows the creation of a new feature using a user-created geometry. Initial feature attributes will be populated from a layer template.
oDelete Features accepts a click or drawn extent to select one or more features which can then be deleted.
oEdit Feature requires no context, and prompts the users to select a feature to begin editing.
oEdit requires a feature context, and can be placed in the Feature Actions menu to allow editing of the current feature.
oGeolocate Feature requires a point layer context. This adds a feature to a point layer from the users current geolocation.
oThese new tools are based upon new underlying commands and operations including: edit.create-feature, edit.delete-features, edit.add-feature, edit.update-feature, edit.display-add-feature, edit.display-update-feature
oThese new editing capabilities have been created with framework and configurability in mind. The user interactions have keyboard support to ensure WCAG AA accessibility compliance, and are highly configurable allowing for a variety of different behaviors based on how they are initialized. For example, you can configure editing tools that allow only geometry changes without changes to attributes, or changes to attributes without changes to geometry. You can also create tools that restrict the types of geometry actions such as allowing you to move a polygon without modifying its size, orientation, or verticies.
oThese new editing capabilities have also been created with development and extensibility in mind. Programmatic access to an in-progress editing session allow custom components or workflows to programmatically create geometries opening up use cases such as coordinate geometry interfaces (COGO) and topology rules enforcement during editing.
•VertiGIS Studio Web support for Workflow forms was enhanced to support all new form layout options including title position, content orientation, and layout of form elements horizontally or vertically.
•As requested in our forum, the application deployment environment values now also do their search and replace on Workflow JSON content in addition to the application JSON and the webmap and web scene JSON content.
•Added several new display options for the presentation of layer presets including an optional filter control and the ability to combine icons, thumbnails, titles, and a long description depending on your presentation needs.
•Added a new system.open-url command. This new command supports attribute substitution tokens as well as lat/long substitution tokens to allow easier integration of external systems from more contexts in your application not currently covered by the external links capability.
•Added a new notification tool allowing configuration of the snackbar style notifications for providing information to end-users. The original modal style alert notification is still available as an alert tool.
•Added a filter control to the Tools picker. As the list of implemented tools has grown, it was becoming harder to pick out the tool you were looking for among the longer list. This should make finding the appropriate tool much simpler.
•Updated the library used to configure and render markdown to ensure more consistency in displaying common markdown formatting from design through to end-user display.
•There are some exciting new ready-to-use incubator library samples coming soon. Knowing that more people would soon be trying custom libraries, we made to improvements to the validation of libraries in the add custom library dialog for file type, file size, and content checking.
•Improved the error reporting information around broken portal items when deploying applications. The specific layout the portal item is used in is now provided to make tracking it down easier.
•Changed the pinpoint search key from Ctrl+F to Ctrl+Shift+F to ensure the built-in browser search features could still be used.
•The underlying UI technology was updates from Material-UI 4 to Material-UI 5. This substantial engineering work opens up new controls and patterns and improves overall performance of visual elements. You may notice some slight visual differences to your application as a result.
•Completed and verified RTL language support for Web Designer.
•Underlying support for Esri time-aware layers was added. Esri's time slider widget will be packaged into a ready-to-use library and added to the component incubator. https://vertigis-web-incubator.netlify.app/
•Added a new pattern for Services and Partners to distribute custom libraries as part of applications that allow for a common library location to be referenced by multiple applications.
•Addressed a security hole in markdown rendering where the markdown renderer would also incorrectly try to render html content.
•Investigated a few crash reports of Web Designer where it turned out that customers were running a 32-bit version of a web browser on a 64-bit operating system. The 32-bit browsers have a memory cap that in some cases could be exceeded causing a crash. For best results, run a 64-bit browser on your 64-bit operating system.
•Fixed the synchronized behavior between the 2D/3D toggle in the preview and the 2D/3D display in map configuration to keep them in sync. [162009]
•Resolved an issue that prevented KPI card strings with tokens from being internationalized. [165443]
•Verified Esri's resolution of an issue were layers with particular types of label expressions were not drawing properly. [150086]
•Resolved an issue where certain subtypes were not properly being respected in when searching. Instead of returning those items matching the subtype, all items could be returned. [177739]
•Resolved an issue that prevented dynamic addition of Workflow dropdown list items in some circumstances. [179868]
•Resolved an issue the prevented cleanup of temporary markup resulting from the Workflow geometry picker. [180107]
•Resolved an issue related to map image serialization that was causing some visible layers in the webmap from appearing in Print output. [163037]
•Resolved a number of WCAG issues related to state announcement for screen readers and a few places where full names were not accessible. [164822, 149804, 149807, 181238, 164821]
•In 5.16, Web switched to a new ESM compilation output for Workflow runtime. This alternate output format exposed existing issues in Workflow that were not previously triggerable. The issues below were resolved by the Workflow team and an updated ESM Workflow runtime version used:
oFixed one additional code path (less used, but still legitimate) for custom form elements that was not updated and prevented custom from working due to an ESM version discrepancy. Also had an independent set of eyes go through to confirm we didn't miss any additional cases. [180110]
•In 5.16, Web switched to a new ESM compilation output for Workflow runtime. This alternate output format exposed existing issues in Workflow that were not previously triggerable. The issues below were resolved by the Workflow team and an updated ESM Workflow runtime version used:
oRun Report activity in Workflow failed to complete. [178923]
oCustom form elements stopped working due to an ESM version discrepancy. [179297]
•Some customers experienced issues with Printing. This was due to sublayer information being included in the information sent to Printing, even when those sublayers were not turned on. This caused the overall size of what was printing to dramatically increase, exceeding allowable limits. [178971]
•In 5.16, Web introduced new options for defining canExecute logic for operations. This has an unintended negative effect on the behavior of the results.get-features operation, which has now been resolved. [179088]
•Additionally, we resolved an issue that was preventing implementation of some more sophisticated application patterns, where a parent workflow launching a child workflow with the 'async' flag turned on was not running as expected. [178076]
•Significantly extended layer preset configuration, allowing you to create tailored map views of your data for end users. In addition to setting the basemap and setting whether a layer is visible or not, you now have the ability to:
oSet transparency on a layer.
oSet scale range on a layer.
oHide layers from appearing in the layer list.
oControl whether sub-layers of a layer are shown in the layer list.
oControl whether a layer with sub-layers in the layer list is shown as expanded or collapsed by default.
•Related tables (non-spatial) on layers are now exposed in Web Designer. This allows control over whether search is enabled/disabled, as well as the configuration of feature actions, external links, and other common configuration for a layer extension.
•Viewer commands with built-in modal UI such as geometry.display-settings now have an optional ability to define the target location you want the UI to appear. This allows application authors to override the default behavior and have these transitory UI element appear in other locations within the application.
•The existing geometry editing capabilities are now connected to a new geometry editing toolbar. The geometry editing toolbar provides information about the current geometry, a summary of all keyboard actions, and new interactions for adjusting geometry (such as entering values for height, width, and rotation) as well as undo/redo.
•A new identify provider for feature clusters. When a rendered Esri cluster intersects with an identify, the entire cluster set are now returned as part of the identify results.
•Added several new configuration items to the Geocoder service. Configuring a zoom scale allows geocode results to behave similarly to other results when a pan and zoom behavior is desired. Country and category filters allow you to restrict geocode results.
•Added a new tool for exporting user-added markup to shapefile.
•A new ui.get-theme operation was added to enable easier programmatic checking of the existing theme prior to setting the UI theme.
•Changed product name from Geocortex Web to VertiGIS Studio Web.
•A new bulk edit interface was introduced in Web Designer for layer extensions and field extensions. Anytime there are ten or more, you will have new options to filter, select, and make bulk changes to settings.
•Configured views for VertiGIS Studio Inline are now included in the d-t-p application deployment pipeline logic.
•Cleanup logic for d-t-p application deployment pipeline was improved so that items created by d-t-p for an environment will be automatically removed when you change your application. For example, if you previously had a Workflow in your app that was deployed to testing and production, and you remove that workflow from your development app and re-deploy, the testing and production versions of that workflow will be removed as part of the deployment action.
•Pre-deployment checks for d-t-p application deployment were enhanced to validate the existence of portal items. These extra checks ensure you do not deploy an application that has configured references that were at one time valid, but where the item no longer exists.
•Reviewed and improved the reporting and presentation of errors back to Web Designer when servers or services are unavailable.
•Results Table pre-processing code was audited and re-written to maximize performance of the results table when displaying large data sets.
•Updated canExecute patterns to allow for canExecute checks on viewer operations (were already in place for commands). This new pattern also allows for the development of custom canExecute behaviors by app developers.
•Resolved an issue in d-t-p application deployment logic that was failing to remove a license key for on-prem deployments of Printing and Reporting. [172464, 172599]
•Resolved an issue in Web Designer that could cause crashes when editing submenu items. [163084]
•Resolved an issue preventing some apps from loading with 'viewer' level Esri portal accounts. [146176]
•Resolved an issue where the new workflow listbox form element would incorrectly toggle all values simultaneously. [163202]
•Resolved an issue where partial values typed into Workflow autocomplete fields were not submitted. [149802]
•Resolved an issue where core Web language strings could not be overridden in a non-en locale. [150572]
•Resolved an issue where measurement labels on measurement markup were not showing up in Printing. [147682]
•Resolved an issue where semi-transparent polygons appeared as fully solid, hiding map behind them in Printing. [164506]
•Resolved a naming discrepancy in system.display-sharing-link. [165578]
•Resolved an issue with Esri's World Topo basemap not loading properly after saving the app due to a source basemap changes. [166045]
•Resolved an issue in Web Designer that prevented some custom workflows from running. [173783]
•Resolved an issue that caused an app crash when toggling between 2D and 3D for some spatial references such as UTM32. [165568]
•Resolved an issue that prevented the geometry service URL from being set in Web Designer. [177586]
•Resolved a security vulnerability which allowed reflected XSS JavaScript to be run via app parameters. While fixing this for a future release it was discovered that it was easier to exploit than expected and was raised to critical severity for immediate release. [164025]
•Resolved a security vulnerability flagged by a routine security scan which allowed stored XSS JavaScript to be run in a context where it should have been prevented. [163121]
•Resolved an issue with the updated Workflow listbox UI implementation where collection toggles were incorrectly toggling all options in the collection. [163202]
•Added a new Location Notes feature. This feature allows end users to quickly create visible text annotations on the map. A Location Note can display free-form text, coordinates text, and nearby feature attribute text. Resulting text can be edited and is supported by save/load projects and Printing.
•The application management functionality in Web Designer now supports deploying applications between different Esri portals. Use cases include deploying applications between different ArcGIS Enterprise portals, as well as deploying between ArcGIS Enterprise portals and ArcGIS Online. For a more complete description of this feature and pre-requisites to consider, consult this forum post: https://communities.geocortex.com/s/question/0D55x00007solajCAA/new-crossportal-dtp-application-management-capabilities-for-web-and-mobile
•Added an Overview Map component. This component displays the location of the main map on the overview map. The component works in both 2D and 3D and respects rotation and camera position when representing the main map in the overview map. This component references its own webmap to ensure you have full control over the base map, layers and scale shown in the overview map.
•Added a new tool allowing end users to enter coordinates to find the location represented by those coordinates on the map.
•Re-implemented the Workflow form element for Listbox in Web to make it more visually and behaviorally consistent with other viewer frameworks.
•Added a feature clustering hit test for identify. When an identify intersects or contains a cluster, all results from that cluster are included alongside other returned results.
•Results Table component tabs now display the total number of results in each tab, in addition to the title.
•You can now generate, add, or update your Esri portal app item thumbnail directly within the Info panel of Web Designer.
•The pinpoint search interface was enhanced to include configuration settings that occur outside Web Designer. For example, searching for initial extent now returns a result that will link you directly to the web map or web scene where that configuration is located.
•For multi-layout apps, the controls for sizing (Desktop, Tablet, Mobile) and rotating the preview are now remembered for each layout tab. The memory is limited to your current session.
•The info notification when a print job begins no longer auto-dismisses. The auto-dismissal of this info message was consistently misinterpreted as a progress indicator.
•The warning and informational icon badges displayed on the dashboard view in Web Designer now have mouseover tooltip explanations.
•Adjusted the color scheme for the info notification when using hte dark theme to provide better contrast to dark backgrounds.
•Added an Edit Markup tool. This tool can be used today and will grow in functionality as we add to the editing experience.
•Improved administrator-facing error messages when application deployment fails due to servers being offline or unavailable.
•Improved how ArcGIS Enterprise Portal backed applications find portal data to list and allow Living Atlas content.
•Updated Web to use Esri's JavaScript 4.21 API.
•Added a new parameter to allow worfklows or sub-workflows to be run asynchronously. This allows the initiating command-chain or workflow to continue rather than stopping to wait for the invoked workflow to complete and return.
•Added support for workflow styleName properties to give developers more styling control of workflows.
•Resolved an issue with geocoding searches that caused 'exact matches' to not return results with some types of Esri geocoders. [47108, 47115]
•Resolved an issue where not all related records were shown in a many-to-many relationship. [47117]
•Resolved an issue preventing show results from connecting to table configuration in some circumstances. [47822]
•Resolved several issues related to importing, exporting, and copying configuration. [48029, 43309, 47066]
•Resolved several issues related to converting out-of-the-box tools into workflows. [48036, 47895]
•Resolved an issue that caused both 2D and 3D layer extensions to be visible at the same time in Web Designer. [47281]
•Resolved an issue that caused 3D layer extensions to be duplicated when the 2D map was changed or refreshed in Web Designer. [47296]
•Resolved an issue that caused configuration options for search and identify to be missing for Building Scene Layers. [47370]
•Resolved an issue that caused sublayer extensions to be created for layers that were unused in WMTS service layers. [47328]
•Resolved an issue where changes to layer order in a web map were not respected. [47474]
•Resolved an issue where workflow drop-down values were not clearing when the form was reset. [47418]
•Resolved an issue that caused unnecessary duplicate application version log entries on startup. [47358]
•Resolved a WCAG 2.1 AA issue where animations were not being treated as changes to application state to be read out. [46229, 46801]
•Resolved a WCAG 2.1 AA issue where reported errors did not provide sufficient context when relying solely upon information read out. [46800]
•Resolved a WCAG 2.1 AA issue where placeholder text in an input box did not meet contrast guidelines. [46796]
•Resolved a WCAG 2.1 AA issue where headings in modal UI pop-ups were not being read out. [27509]
•Resolved a WCAG 2.1 AA issue where panel actions such as minimize, maximize, and back were not reading out their state changes. [46232]
•Resolved a WCAG 2.1 AA issue where the presence of search history and suggestions were not announced by the screen reader. [46234]
•Resolved an issue where decimal separators were being removed from inputs when using a non-English locale. [48164]
•Web Designer now supports Undo (Ctrl + z) and Redo (Ctrl + y) for both application settings and layout changes.
•Web Designer's upload library interface has been improved to allow multiple libraries to be uploaded to your app.
•Added layer transparency controls to compatible layers in the layer list. End users of an application can find the layer transparency controls in the layer's actions menu .
•Added several new configuration options for displaying Toolbars in applications. For example, it is now possible to create very compact icon-only toolbars.
•Added an identify hit test to support Building Scene layers in 3D web scenes.
•Web now fully supports Right-To-Left (RTL) languages. All testing has been completed and all small remaining issues have been addressed.
•Added new capabilities to support presenting end users with a configured set of markup presets. This will be exposed via a configuration interface soon, in the meantime, you can see how it will work by drawing a polygon in the Compass Points template.
•Added a command to allow a WCAG AA screen reader to read out text: ui.narrate. This command is helpful in situations where you wish to add key accessibility information in your application. Note this command will not work immediately before invoking a modal dialog due to the immediate context switch.
•Added a command to Workflow allow to set the focus in the application: ui.focus. This command is helpful when creating workflows to perform tasks and then returning to the application interface focused on a specific layout element.
•Added a command to allow the locale of an app to be set directly: ui.set-locale.
•Added a number of new commands that better support symmetry of getting and setting and finer control around map actions. These include:
omap.pan-to-* (features, geometry) commands that behave like the zoom-to-* variants, but don't affect the current scale. Pan to center point of geometry you pass in.
omap.go-to-* (features, geometry, viewpoint, scale, initial-viewpoint, layer-extent) commands that immediately take effect without animating the transition from the current viewpoint.
omap.rotate-by command that rotates the map by the specified amount. It will continue to rotate by the specified amount every time you call it.
omap.rotate-to command that rotates the map to the specified angle, running the command multiple times would have no effect.
omap.get-viewpoint
omap.get-initial-viewpoint
omap.get-spatial-reference
•Building on previous technology work in Web Designer. Almost everything can now be done directly in the live preview app. You should no longer see messages such as "... settings are not available in design mode".
•During testing of 5.14, it was noted that the Esri JavaScript 4.19 API does not properly load maps on iOS 13. This issue has been verified in an Esri-tech-only sandbox and filed with Esri. Be aware that Web will not work properly on iOS 13 until Esri resolves this issue.
•Replaced Esri's default 2D sketch editor with our own implementation. This was necessary to properly support WCAG AA use cases, and to ensure that we included sufficient hooks to be able to programmatically interact with an in-progress sketch session. This approach allows future tools and workflows to create guided sketch experiences for Coordinate Geometry (COGO) and other use cases. Related work was also done to geometry-editing tools.
oThe new commands supporting sketching and geometry editing are: sketching.edit-geometry, sketching.move-geometry, sketching.scale-geometry, sketching.rotate-geometry, sketching.complete, sketching.cancel, sketching.delete, sketching.undo, sketching.redo, sketching.set-geometry-mode, sketching.set-interaction-mode, sketching.add-node-to-geometry, sketching.add-point-at-center, sketching.add-point-at-current-location.
oGuidance for trying out geometry editing can be found in this communities post: https://communities.geocortex.com/s/question/0D55x00007lx6LlCAI/geometry-editing-for-drawing-and-measurement-in-the-upcoming-514-web-release.
•In working to support side-loaded VertiGIS Studio Mobile use cases, Web Designer had allowed unneeded layer/sublayer/table extensions not backed by your web maps and web scenes to remain in your configuration. We now correctly clean these up automatically by default. If desired, in the Info panel, there is a toggle button to disable Auto-clean extensions.
•Added validation and information messages when configuring custom basemaps and adding layers that do not match the spatial reference of your web map, or that have spatial references that do not match each other. Such configurations will almost always fail to show the layers and this is now highlighted when you are modifying the configuration.
•Invested significantly in streamlining performance of application saves in Web Designer. This included reported use cases such as applications with significant numbers of KPI cards and charts.
•Added new detailed information on app schema at https://developers.geocortex.com/docs/web/api-components.
•Resolved an issue that allowed child layers to be printed when the parent layer was turned off [46686].
•Resolved an issue in search that prevented results far away from the current extent from being discovered [46627].
•Resolved an issue that prevented Integrated Windows Authentication (IWA) Portal-secured print templates from loading. This issue existed on the IWA side. The resolution is to 'force' an IWA authentication. This workaround has limits and IWA continues to be problematic when both Web and the Esri Portal are on the same server, or a proxy makes them appear to be on the same server [46482].
•Resolved an issue that prevented app templates with custom libraries from loading in Web Designer. This also resolves preventing uploading a downloaded app .zip that contains a custom library [46184].
•Improved error reporting during application deployment when a capabilities server such as Printing cannot be reached at all [45842].
•Resolved an issue where configuring a workflow on Map Initialized events resulted in an empty command chain [46664].
•Resolved a WCAG AA screen reader issue where Workflow form elements were not properly reading out form element titles [46951].
•Resolved a Workflow forms issue where number form elements were returning string values rather than actual numeric values [46832].
•Resolved a Workflow forms issue where you could not manually enter a number when both a lower and upper bound were specified [46659].
•Resolved a Workflow forms issue where you could not delete text after selecting one of the auto-complete suggestions [46223].
•Resolved an issue where canceling a workflow running in the same panel as another workflow caused the initial workflow to hang [46662].
•Added new interfaces in Web for configuring the appearance of lines and polygons (Esri symbols). Line configuration includes line color, line transparency, line style, and line thickness. Polygon configuration adds fill color, fill transparency, and fill pattern. This interface shows up in the following places:
oYou can now set the style of the line markup tool for future lines.
oYou can now set the style of the polygon draw tool for future polygons.
oYou can now modify the style of an existing line or polygon.
oYou can now modify the style of user uploaded, file based map data for line or polygon data.
•Added new logic to detect layer configurations that do not match the current web map or web scene. A new layer info section at the top of the layer configuration provides this information. Also when such layer configurations exist, you will see a new Edit Items button below the configured layers that will provide access to the ability to remove layer configurations.
•Based on recent work in VertiGIS Studio Printing, Web was updated to allow for printing web maps that include token-secured services.
•The map settings now include a Refresh button in addition to the Select and Remove buttons. This allows you to more easily pick up configuration changes you have saved in your web map or web scene without reloading the entire app.
•Configuration related to a selected command is now visually grouped together to make it more apparent which settings are unique to the command.
•Numeric configuration fields with min and max limits in Web Designer are now represented with both a number slider and an input field.
•Language in the application management interface has been clarified and harmonized to always use the term deploy, rather than a mix of deploy, publish and push.
•Time of day has been added to date in the application management interface, making it easier to determine when you last deployed an application when you are rapidly iterating in the same day.
•Updated the code behind the search interface to ensure that substring matches are included and ranked as part of overall search results.
•Web has been updated to use Esri's JavaScript 4.19 API. This was a significant update and included switching from consuming Esri's AMD interface to Esri's ES Module interface. The interface presented by Web remains the same.
•Web Designer was updated to better separate the preview from the component tree infrastructure. This change will soon allow activities in the preview that were previously restricted, as they could unintentionally change configuration. With these changes in place, changes to configuration in the component tree can affect the preview, but changes in the preview can never affect the component tree.
•The rendering logic of applications related to Rows and Columns was updated to ensure more consistent and expected behaviors of application elements when dynamically resizing the application.
•Updated the Highcharts charting library to version 9.x.
•Resolved an issue where the Inline component was storing relative paths. This prevented use cases where the SaaS version of Web Designer was being used with an on-premises Esri Portal [43692, 46111].
•Resolved an issue presenting a confusing warning around a print template when deploying the app to production [45795].
•Resolved issues related to the creation of duplicate layer and group configurations with no mechanism to remove them [45881, 45748].
•Resolved several issues related to performance of loading and saving the app, particularly with KPI cards and charts [45930, 45476].
•Resolved issues related to KPI cards and charts when using the Get Configuration feature and other configuration duplication mechanisms [45933].
•Resolved an issue where fixed-size layout configuration remained when a component was moved to another location in the layout [45905].
•Resolved an issue in the rendering of list items without an expected visible hover state in custom components created from the SDK [45041].
•Resolved an issue where was Web not respecting the rotation property for a label as defined in the web map [45493].
•Resolved an issue where the Workflow Add Graphics activity was not allowing identifiable attributes on the graphic to be properly displayed [45840].
•Resolved an issue related to search where substrings of search terms were not being included and ranked in search results [45927].
•Resolved an issue with web map serialization that was impacting the ability to properly perform smart filtering of legends to visible features [45630].
•Resolved an issue with hit test and 3D Polygon Z layers that could cause inconsistent and unexpected hits for identify results [45316].
•Removed unnecessary decimal place values from the display of scales in the Scale Input component [41623].
•Resolved a conflict issue between web map initial extent and web scene initial viewpoint that could cause web scenes to initialize with an incorrect subsurface viewpoint [45994].
•Resolved an issue preventing printing of token-secured services [45346].
•Resolved an issue preventing certain types of Stream layers published from ArcGIS Pro from rendering in Web [44559].
•Resolved an issue that prevented the map.update-layer command from working as expected on a VectorTileLayer [46385].
•Added the ability to show and hide components and menu items within an application based upon individual users or groups within the Esri Portal or ArcGIS Online organization. While not true security, this provides a significant tool for tailoring actions and information to different types of users within your organization. Common use cases include:
oProviding a limited set of tools and information to anonymous users and expanding what is available once a user has signed in.
oMaking role-specific workflows, reports, and tools available to users within a specific group, while hiding them from others.
oCreating an application that has more focused UI options for various groups of users.
oThis feature controls the visibility of UI elements on the client side; it does not prevent the content from arriving at the user's client application. This feature focuses on UI; for control over map data, use Access Control.
oIn addition to Esri identity users and groups, this feature includes a few built-in system values for: All Users, Anonymous Users, Authenticated Users.
oThis feature follows standard Deny-before-Allow patterns. This means that if a user is in two groups, and one of those groups allows them to see Component A, while the other group does not allow them to see Component A; Deny "wins" and the user will be unable to see Component A.
•Social sharing features via URL are now available in Web. A new Get Sharing Link command generates a URL that includes the map center point, map scale, selected basemap, and selected layers allowing you to share the URL via e-mail, or social networks to have someone else see the same map view you were viewing. Behind the scenes this was implemented by introducing new URL parameters that are also available for use:
ocenter-default URL parameter defines the map's center point. This provides maximum accuracy when moving between desktop and mobile devices with a sharing link.
oscale-default URL parameter defines the map's scale.
obasemap-default URL parameter defines the map's basemap.
olayers-default URL parameter defines the visible / not-visible state of the layers on the map.
•Save / Load Project is now available in Web. This file-based feature focuses on saving and loading the complete map and data of an application between working sessions. A project file will save the following information:
oMap location - center point, scale, and rotation.
oMap layers - basemap selected and visible / not-visible state of layers.
oUser-added layers from Portal or ArcGIS Online.
oUser-added layers from CSV, XLSX and Shapefile.
oUser-added drawing / markup / redlining.
oUser-added measurements.
oCurrent results set from search or identify operations.
oCurrent selected feature.
oActive layout in multi-layout apps.
•Layer Catalog functionality is now available. A new Portal service has been added to Web Designer. The application author can include one or more tags which will restrict the add layer interface in the application to content that matches the specified tags. This tag-based approach allows application authors to create tag-based collections of authoritative data in their Esri Portal or ArcGIS Online organization and then include one or more of those tags in their apps. For , those tags can also match layers outside your organization. When configuring this in ArcGIS Online, we recommend you use sufficiently unique tags such as gcx-layer-catalog-myorg-forestry.
•Significantly improved the UX for working with components or sub-trees of components between layouts in your application or between applications. The Add Component button at the bottom of the configured component tree now contains additional options to copy components from another layout in your app, or from another application. In both cases a new side-by-side interface is presented making it easy to drag components, or trees of components between layouts or between applications. Behavioral changes to be aware of:
oUnlike the existing options to get or export configuration that focus only on the component configuration and ignore layout settings; this new mechanism copies both component configuration and layout properties.
oIn multi-layout apps, when adding a new component or copying components between layouts if it is possible to link component configuration between layouts; we will do so by default.
•Basemaps now support linking to metadata. In the Basemap Picker component UI, each configured basemap now has an interactive info icon. Clicking this icon brings up a list of all layers contained in the basemap. When the layers have a properly configured Esri metadata configuration behind them, they are rendered as hyperlinks so you can directly access the configured metadata (opens in a new browser tab).
•Added configuration options for enabling Search and Identify on layers within configured Custom Basemaps. Search and Identify are disabled by default.
•Pinpoint Search in Web Designer is now permanently docked in the empty area left behind when the application preview is popped-out for use on a second monitor.
•The Map ID is now included in the help text for the Map component. This makes locating the ID far easier for use with the Workflow Set Map activity.
•Added a print preview for 3D scenes. Previously you could print web scenes, however, you did not have the option to visualize and adjust your settings prior to the print being initiated.
•Added support for the Workflow Run Print activity.
•Updated the Capital City data set used as the default in our templates. Improvements included replacing the tax parcels layer with an attribute-rich neighborhood layer to better support demonstrating charts and KPI cards and the introduction of relationships between fire hydrants, water lines, and buildings to better demonstrate the navigation behavior of related data.
•Improved the behavior of polygon Identify operations in 3D scenes. Previous behavior was to take the center point of the polygon and perform the Identify. The improved implementation should identify any shape that intersects with the identify polygon (on the ground surface).
•The chart and KPI Card components have been updated with navigation links making it easier to explore and locate places in your app configuration that may be updating the content of your chart or KPI card.
•The Map ID is now included in the help text for the Map component. This makes locating the ID far easier for use with the Workflow Set Map activity.
•Updated the behavior of application deployment management so that portal admins can now deploy content to previously deployed environments even if they are not the direct owner of the items that will be updated.
•Pinpoint Search indexing is now separated into a quick, most-common mode by default with the ability to request a full map data crawl which might take many seconds on a large web map.
•Modified what happens when you attempt to open an app not owned by you in Web Designer. You are now prompted to save a copy of the app immediately so that resources from the original can be copied over to the newly created portal item.
•Modified the configuration interface for startup and event-based workflows to allow for the configuration of a title and icon, which may be desirable in certain use cases.
•Added a new configuration pattern in Web Designer supporting simple lists of single values. This prevents requiring a drill-in action to change a single value. A good example of this new interaction is the list of Resolutions within the Printing component.
•Changed how application deployment management writes test, staging, and production workflow items so that the View Application action in the Esri portal now takes you to the test, staging, and production versions of the workflow.
•Added support for asynchronous Arcade script. In practice, this means that any Arcade script you configure in Esri's map viewer interface will work correctly regardless of whether it is a synchronous or asynchronous Arcade script.
•Added touch support for the map context menu for tablet and handheld devices.
•Updated the code that passes information to Printing and Reporting to pass the title of the template for naming of the PDF output.
•Strengthened security checks on custom sub-domains. Web will no longer load if an unregistered sub-domain is specified in the URL.
•The Workflow runtime version is now logged at startup in the Web console log.
•Resolved an issue in tasks.identify where it was not properly respecting the sources argument. This prevented the configuration of Map.onHover map tips from being limited to a specific set of layers in the application [44560] .
•Resolved an issue that prevented multi-field type charts and XY plot types when using Workflow as your data source. [44853]
•Resolved an issue that prevented the measurement tools from functioning correctly when the app was configured in projections other than Web Mercator/WGS84. [44396]
•Resolved an issue where layers with SQL Function Fields cannot be converted to Arcade features. [45153]
•Resolved an issue where events configured to run a workflow would incorrectly close another workflow displaying a form. [45002]
•Resolved an issue that prevented certain types of imagery layers from hanging on app load in Web Designer. [45197]
•Resolved an issue where Listbox form item output was handled differently in Web than in Geocortex Viewer for HTML5. [45202]
•Resolved an issue where field token names were displayed instead of field token values in configured web map pop-up configuration. [45110]
•Resolved an issue where not all configured pop-up attribute fields were showing up correctly in Web for raster layers. [45354]
•Corrected the API logic around the display of the description text in pop-up configuration to match Esri's documented rules. [41522]
•Resolved an issue where the bookmarks component was incorrectly creating additional copies of bookmarks when toggling back and forth between a 2D map and a 3D scene. [45314]
•A brand new layer comparison tool, also known as the swipe tool, has been added to the map component. In addition to standard Esri swipe tool behavior, this tool supports labeling each side of the divider that can be dragged, and an option to allow end users to add and remove layers, making this a valuable layer comparison analysis tool.
•Significant improvements to the default search behavior. The algorithm was improved to allow for results outside the current map extent to be included. Results within the map extent will receive a higher ranking in the results. This change includes an adjustment to ensure that clicking on a geocoder suggestion gives you a more exact match.
•Enhanced the tabs component to allow greater control of where the tabs appear in your layout. Instead of being fixed at the top, tabs can now be placed horizontally or vertically along any of the four sides of the layout area.
•External links, also known as feature hyperlinks, are now configurable for each layer in a map component. External links support token representation of attribute data for the feature and location of the feature. This creates an effective way to link out from a Feature Details view to an external system with contextual data as part of the URL. Common use cases include opening a new browser tab showing street level imagery at the feature location, or opening an enterprise business system with the feature's ID already specified.
•Added a basemap clicked event for each configured basemap in the basemap picker. This allows the default behavior to be extended. For example, if you wanted to load a particular layer preset when a particular basemap is selected by the end user.
•Added a new geolocation.get-position operation for use by command chains and workflows.
•Added a 3D point cloud identify provider to enable configured content to appear in Feature Details for identify actions on point clouds.
•Added support to display RasterInfo information in Feature Details for ImageryLayer layers.
•Added a mandatory privacy policy element. By default this will appear as part of your user component. You can change the location via configuration if another location better suits your application. If an application detects no privacy policy element it will be automatically added at runtime in an application footer area. In addition to a link to the Geocortex privacy policy, there is a configurable markdown text area that can be used to display your own privacy and legal conditions, links, logo images, and so on.
•The action buttons that can appear at the bottom of a Workflow form are now sticky. In longer forms, this ensures the buttons and the actions associated with them are always visible to the end user.
•When the measurement system is configured to Auto, you will now see the type of units that have been automatically detected, that is, (Metric) and (US Customary).
•The notifications subsystem that places snackbar notifications at the top of your application now supports auto-dismiss timer capabilities. Success and Info notifications will now auto-dismiss by default, while warning and error notifications will continue to require manual dismissal.
•Esri's default map attribution information now appears at the bottom of each map and scene.
•Significant improvements to our shapefile import code to allow a wider variety of shapefile formats to be accepted even if they don't have objectIDs (we generate them) or specify a coordinate system (we automatically determine as best we can).
•You are now able to manually add language strings to your app.json configuration to supply missing language strings, or to override existing language strings with an improved description or translation.
•Identify was updated to optionally use existing, client-side data already present from loading the visible map extent, rather than re-querying services for data. This results in significantly increased performance for identify.
•The underlying code that saves layer configuration (extensions) was extended to ensure that when a map component contained both a map and a scene, the complete union of layer configuration across both the map and the scene would be saved.
•When importing configuration from other apps in Web Designer, apps older than your current version will now be automatically upgraded in memory to ensure correct syntax for your version.
•Improved security of IIS HTTP headers to a more modern mechanism using X-Content-Type-Options.
•Verified the resolution of an Esri bug that prevented ArcGIS Identity authentication in Microsoft Edge. [31186,14307]
•Resolved a visual alignment issue in the rendering of Item Picker radio buttons in a Workflow form. [44140]
•Resolved an issue with 3D hit test that caused an identify to return the next-to-closest instead of closed 3D object first. [37895]
•Resolved an issue that prevented XLSX and CSV exports on results that were in the RD New projection. [44141]
•Resolved an issue preventing apps from loading for 'viewer' level Portal identities. [42434]
•Resolved an issue that prevented the highlights.add command from working properly with multipoint geometry types. [44184]
•Web now supports Buffer tools, which locate nearby results. These tools include:
oAn out of the box Buffer Identify tool.
oAn out of the box Buffer Results tool.
oA new buffer.geometry operation.
oA new geometry.show-settings command that prompts users for the Buffer Units and Buffer Distance to use when buffering.
oNew Geometry service settings in Web Designer, Buffer Units and Buffer Distance, allowing the configuration of default application behavior.
•Updated the Map Coordinates component to allow application configuration of the default coordinate system display, as well as decimal places and precision options.
oAdded MGRS, USNG, and UTM as coordinate formats to display.
oAdded the optional ability for the end user to select the coordinate format to display.
•Extended the Measurement service in Web Designer to allow default application measurement units to be set. Auto Scaling units remain the recommended default.
•Extended the Measurement tool in Web to allow end users to set their preferred measurement units. Measurement units set by the end user are stored between sessions as part of user preferences. Auto Scaling units remain the recommended default.
•A dedicated VertiGIS Inline component has been added to Web Designer. This component wraps the Inline product to make it far easier to add and configure.
•When basemaps contain layers, those layers can now be configured to display in the Legend if supported. As Esri's default is to show basemap layers in the Legend, existing applications will now show basemap layers in the legend. You can easily update your app to disable this if desired. For new applications, the default behavior is not to include basemap layers in the Legend.
•Added commands and operations to allow for Workflow-driven control of the Basemap Picker component. These include: basemap.get-all, basemap.get-current, and basemap.set. These and a new onClick event for the Basemap Picker component will be exposed in the next version of Web Designer.
•A layer icon can now be configured for each layer. This optional icon is used by several components including the Layer List and Results List to create a visual identity for a layer.
•A failure behavior is now configurable on each layer. This allows the application creator to determine what happens when a specified layer is inaccessible or fails to load. Options include Halt Map Load, Warn End User, and Silent Failure. Warn End User remains the default behavior.
•An action to unlink components that are currently sharing configuration is now available. Soon you will have the ability to create your own shared configuration between components in addition to the examples below that are part of the out of the box application templates.
oOne example is feature actions on Results List and Results Table. By default, configuring feature actions in either component changes a shared set of feature actions. Sometimes you may wish to configure the feature actions on results list and results table independently.
oAnother example is mutli-layout templates. Components appearing in both layouts often share configuration. Configuring the component in one layout automatically updates the component in the other layout. In some cases you may wish to configure the components in the different layouts independently.
•Updated the file download tools to ensure the downloaded data is WYSIWYG (What You See Is What You Get), reflecting what is visible to the end user within Web Designer.
•It is possible for workflows to specify the target component to run within. Now Web Designer provides you with a list of valid targets in your app to choose from. The default behavior has been left as Auto determine.
•Extended the 'on Save' validation checks within Web Designer. Checks now include:
oLooking for and reporting any missing or inaccessible Esri portal items.
oLooking for and reporting any invalid config item references. Invalid references occur most often when something in your app is referencing something else that has been removed.
•Enhanced the information provided to include specific item IDs when Web Designer is unable to deploy the app to the next environment due to items existing across multiple Esri portals.
•There is now a visual busy animation displayed over a workflow form when it is busy or in progress. This improves the end user's experience by removing uncertainty about state.
•Updated colors in the Dark theme to darken and create greater visual contrast. Existing applications will receive this change the next time you make any adjustment to your branding color.
•When a Map is returned as part of your Pinpoint search results, it is now always listed first to make it more readily accessible.
•Refactored the 2D/3D map swap functionality to significantly improve performance. The swap is now nearly instantaneous.
•Refactored the index building for Pinpoint search in Web Designer to significantly improve performance.
•Updated and improved the SDK sample demonstrating embedding a synchronized third-party map (Mapillary).
•Add a new SDK sample demonstrating how to wrap an ArcGIS API for JavaScript 4.x widget and make it a Web component.
•Resolved an issue that caused ArcGISTiledImageServiceLayers to be incorrectly written to configuration, causing the app to break. This issue was resolved and released in a 5.9.1 hotfix. [43333]
•Resolved an issue that caused the Results Table to function incorrectly when trying to display an expression-generated attribute field. [43471]
•Resolved an issue that prevented workflow-generated feature sets from properly displaying in the Results Table. [43386]
•Resolved an issue with the Tabs component where it would sometimes leave an empty, disabled tab behind when the content was deactivated. [43476]
•Resolved an issue that caused visual flickering of content in Workflow auto-complete content. [37385]
•Resolved an issue that caused Workflow auto-complete to incorrectly switch focus away from auto-complete while entering keystrokes. [40780]
•Resolved an issue that prevented the correct display of complex symbology for some layers. [43706]
•Resolved a naming consistency issue for Workflow form element CSS classes, making it easier to apply high level CSS styling to Workflow forms. [41946]
•Resolved an issue that prevented Partner-supplied templates from loading properly in Web Designer that were configured to store items in an Esri Enterprise Portal. [43508]
•Resolved an issue with French language strings where some of the translated strings had reverted to a test string of nonsense characters. [43626]
•On-hover map tips are now available in Web. This was a frequently requested feature in previous Geocortex viewer frameworks. This new feature appears in the Web GIS - Default template and is actually comprised of several new smaller capabilities.
oAdded Map Hovering and Map Hovered events to the Map component.
oAdded a new Popup slot to the Map component model.
oAdded a new Result Summary component, which provides a more compact and abbreviated view of a single feature than the existing Result Details component.
•Added a new Add Layer tool that allows end users of a Web application to browse their Esri Portal or ArcGIS Online to locate layers and then add them directly to their map. This new tool contains a new portal.choose-layers command that provides a UI for browsing and filtering portal content by the end user.
•The application deployment pipeline within Web Designer for Development - Testing - Staging - Production management now fully supports Geocortex capabilities products for Workflow, Reporting, and Printing. The next time you deploy your Development app forward in the deployment pipeline, Web Designer will now create and manage copies of the workflows, reports and print templates used by your application. This means that you can continue to develop and test your workflows without affecting your deployed Production application. This also means that if you want to make a change to a Production workflow, you must modify the workflow connected to your Development application and then use the Deploy Pipeline to push that change through to Production. You will continue to have the same easy, iterative flow for rapidly adjusting and re-running your workflows as part of the design experience of your Development application.
•Added support for Esri's new layer blending capabilities.
•Added new tilt options for map markers to allow 3D markers to show not only direction but also tilt angle. This enables additional use cases for map markers when they are used to represent a particular point of view from a linked third-party application such as Mapillary.
•Added a new results.intersect command. The primary use for this command is to remove results from the results set that are currently filtered out in the Results Table view.
•Added style configuration to button components. Previously, buttons self-styled depending on where they were. Buttons on the map had one appearance, and buttons in other parts of the application had another appearance. You can now set the style of buttons directly to Square or Rounded.
•Added support for the new Workflow Run Report activity ability to send a serialized version of the current map view to the report. This supports a commonly requested use case of including a WYSIWYG map image from the end user's current application session as part of a report.
•Added support for the new Workflow Switch Map activity which allows running workflows to change which map they are targeting at runtime. This enables use cases where a workflow is to focus on specific maps, or even to iterate through a series of maps that are contained in a Web application.
•Extended the Save logic in Web Designer to perform additional checks and provide additional feedback.
oWhen a settings property and its form are in a visible error state, a save operation is no longer permitted. For example, you are configuring a component and enter 'bob' as a margin value when it should be numeric.
oWhen a save is requested, there is now a check for broken configuration item references. If found, the save is prevented and the user is informed. For example, a component is added to a layout, and then a button is configured to activate that component, but the component is then removed from the layout. The button contains a reference to something that no longer exists.
•Significant improvements to the visual representation of the component tree in Web Designer to make it more immediately obvious what is collapsed and expanded, and which items are grouped together within the hierarchy.
•Re-organized and improved the visual representation of settings of each component. It is now far easier to visually connect settings with their section heading. It is also now easier to visually identify collapsed sections that contain additional settings, such as Events.
•When configuring a command the options to create a new workflow or create a new report are no longer in their own Create New tab. These options have moved to be buttons at the bottom of their respective Workflows and Reports tabs.
•Enhanced the Get Configuration component import feature to allow you to specify the intended parent of a dependent component. For example, if you are importing a Compass component which depends on a Map component into an application that has three maps, you will now be able to select which map you want the incoming component to be associated with.
•Moved the Add Component button from above the component tree to below the component tree to better match a user's natural tendency to look for buttons and actions below content.
•Web has been updated to use the ArcGIS API for JavaScript 4.16.
•In anticipation of upcoming work to allow for internationalization of report and print output, Web now passes the user's locale to our Printing and Reporting products.
•Improved the application and map initialization logic to ensure that a map is fully initialized before a startup workflow is run upon it.
•Resolved an issue that caused coded domains within sublayers to incorrectly display their code rather than their value. [42178]
•Resolved an issue where the autocomplete action in a Workflow form would cause a loss of focus to that field. [42342]
•Resolved an issue preventing the correct clearing of temporary geometry markup when a workflow ended. [40842]
•Resolved several small but incorrect behaviors related to Workflow numbers and Workflow radio group behaviors. [42201, 42205, 42206]
•Resolved an issue where the Workflow number picker was not respecting the Required property. [42301]
•Resolved an issue on click actions not being supported for charts driven directly from configuration. This prevented developers from using the charting library to build custom charts and still have interactivity with them. [42942]
•Added a new Plot Location Marker feature which makes it easy to mark a location on a map or scene, and to see that same location indicated on all other maps and scenes within the application. This is particularly helpful in confirming you are looking at the same geospatial location in both 2D and 3D.
•Added commands and operations for adding layers to the application from CSV, XLSX, and ShapeFile. This can now be done programmatically, via a workflow, or by the end user of the application.
•Added a new viewer operation, viewer.get-capabilities, which provides information about the height, width, pointer/touch/hover support, aspect ratio, and orientation. This information is useful for many things, but the primary use case is to use the Application Initializing event when the application starts up to assess the capabilities of the viewer 'device' and select the optimal layout from the application.
•Rebuilt and improved the User component. The component now takes up less visual space in your application and has a fly-out that can include components as well as hosting a configurable actions menu.
•Added a new hybrid workflow-parameterized report template that illustrates the common pattern of using workflow to gather user input parameters and then run a corresponding report.
•The Delete Application dialog in Web Designer now also shows you workflows, report templates, and print templates referenced by your application. This allows you to easily clean up referenced portal items that you have generated, or that are no longer needed. These items are not checked by default.
•A short, unobtrusive tutorial option has been added to Web Designer to highlight the most important aspects of the configuration interface to help new users get started.
•Updated Workflow forms rendering in Web to support the new collapsible sections in Workflow forms.
•Several new workflow templates have been added that you can generate directly from Web Designer to jump start your workflow efforts with a working example. These include:
oAddress Lookup (no context required)
oGet Position (no context required)
oDraw on Map (no context required)
oRoute Between Points (no context required)
oBuffer Feature Geometry (feature context)
oReverse Geocode Feature (feature context)
oGet Map Context (map context)
oBuffer Point (map context)
oReverse Geocode (map context)
oRoute to Location (map context)
•Updated the rendering behavior of the Expand layout container to better automatically resize based on the size of its content.
•Updated the matching logic in our swap layout tool in Web Designer to automatically match up components between two layouts if there is only one component of that type, even if the IDs are different.
•The two toggle buttons that change how results are visualized (grouping and detail level) in the Results List are now backed by user preferences and will be remembered between application sessions.
•Improved the display of configured workflows in Web Designer so that instead of seeing a large block of JSON, you now see just the configured workflow name and a small block of JSON for input arguments.
•Improved the code that determines when and how a configured workflow is run. This resolved both some significant edge cases, but also a few important primary use cases such as returning to the parent workflow form once a child workflow form was closed.
•Added the ability in Web Designer to allow international partners to supply country-specific contact information on the sign-on page, and country-specific app templates for the dashboard view.
•Updates to the subsystem handling results to allow for use cases where applications need to contain multiple results lists or results tables each containing different sets of results.
•Updated the schema for results.from-graphics to allow the specification of attribute data. This allows workflows to supply data back to Web that contains attribute data for display.
•Extended the concept of Tools (a named command chain pattern) in Web Designer to allow them to be defined and registered. This enables developers to build and register their own tools that will be respected by Designer.
•Significant work in Web Designer to better handle broken configuration when loading Designer. For example, if the web map that your application was referencing no longer exists you can now still get into your application in Designer in order to update your web map.
•Optimized the code that renders graphics generated from a workflow to significantly improve performance.
•When the debug URL parameter is used with Web, Workflow debugging is now also turned on.
•Added support for proxyRules and proxyUrl as defined in the Esri API so that if they are configured (manually, no UI yet) they will be passed to the Esri API.
•Internal WCAG AA compliance testing found a number of issues that had crept in. Approximately 5 issues were resolved. These issues were related to keyboard control and navigation.
•Resolved an issue that prevented web map attributes derived from configured expressions from being included in exports. [41510]
•Resolved an issue where exports were not respecting the field order configured in the web map. [39750]
•Resolved an issue where the initial order of fields in the Results Table did not respect the field order configured in the web map. [39720]
•Added a new Compact View capability to Web that allows for greater information density in an app by reducing white space in components such as Layer List, Results List, Results Table and Result Details.
•Added a new User Preferences component that can be included in your app layout. This new component allows end users to specify the visual theme, measurement system and the information density of their app. These settings are remembered and applied the next time the app is loaded.
•Added a new Dialog component that can be included in your app layout. This new layout container allows components or workflows to be displayed in a modal dialog on top of your app.
•Added a new multi-layout app template to Web Designer. This new template features two different layouts, shows how to switch back and forth between those layouts, and demonstrates how to use the Application Initializing event in the App service to specify which layout you want to be the default layout on app load.
•Added tools to support map filter effects that are part of ArcGIS API for JavaScript. These new tools, and their underlying commands can be configured within your app to provide alternate map-based visualizations to the standard highlighting and focus behaviors within Workflow. For example, you can configure your app so that hovering over a chart element fades out all map features that are not represented as part of that chart element.
•Added a new Switch Layout tool in Web Designer to make it easier to configure a layout switch action.
•Updated the Expand component options and behavior. Expands will now automatically close if the user clicks outside the expanded area, or on another Expand component. Adjusted the Expand pop-over logic so that it is not confined to the map area; this allows a larger and more natural pop-over behavior when working in smaller map spaces. In addition to an icon, Expands can now be shown in the app with a text label, or both an icon and a text label.
•Web Designer now has a Measure service that allows you to more easily customize the color of measurement markup in your app. Also updated the rendering of measurement markup so that it has properly contrasting double line borders for WCAG AA accessibility compliance.
•Web Designer now has a Draw service that allows you to more easily customize the color of red line and drawing markup in your app. Also changed the app default color from black to red.
•Pinpoint Search in Web Designer now includes inline help descriptions to make it even easier to locate what you are looking for. Where applicable, the help descriptions also include direct links to relevant documentation.
•For customers who want to extend the functionality of Web using Workflow by coding custom components, we are pleased to announce the Workflow SDK, samples, and API documentation are now available at our Developer Center.
•Supporting the new SDK, in the File menu of Web Designer, you will find a new Upload Library interface that allows your custom code to be uploaded and stored as an app item resource.
•The Download App action within Web Designer now includes any app resources from your Esri portal app item, which may include images or custom libraries uploaded through Web Designer.
•Several new commands and operations were added to make it faster and easier to build workflows that can filter and interact with Charting and KPI Card features. These include:
ocharts.get-definition
ocharts.get-features
ocharts.update-definition
okpi.get-definition
okpi.get-features
okpi.update-definition
oresults.get-features
oresults.filter
•Updated visual display of Feature Details to ensure better use of available space. These changes include a more compact and consistent rendering of feature action buttons, reducing white space, and a new responsive rendering of feature attributes, file attachments, and related records that will better use left-to-right space by displaying these elements in columns as horizontal space grows.
•Charts have been updated so that hovering over a chart element automatically highlights the relevant features on the map.
•Multiple improvements to the component-editing interface were made in this release based upon end-user feedback. These improvements include:
oConfiguration fields for text and numeric entry will now automatically submit their contents after a brief delay when you finish typing. This removes the need to "click away" to submit the last field you were editing.
oA brief visual 'Applied' now appears in the interface each time a configuration setting is modified and applied. This helps make it clear that configuration is being applied to the live preview, and also helps in understanding which settings have changed.
oSignificantly enhanced error state visualization so that a configuration interface containing an error will always be visible even if that error is scrolled out of the current view. As additional changes to configuration settings are not applied until the error state is resolved, changed settings that have not yet been applied are also now uniquely highlighted.
oA persistent Close button has been placed at the bottom of the configuration interface to provide an easier way to indicate you are finished with the interface and ready to move on. This Close button does exactly the same thing as the existing Back button at the top of the configuration interface.
•A visually unique highlight has been added to the last component interacted with in the Components panel. This makes it obvious when a component is added or moved. This also ensures when you use Pinpoint Search to locate a component and return to the Components panel, the last component you were viewing is clearly visible.
•Added an explicit Delete interface to the File menu as a more discoverable mechanism to delete apps within Web Designer.
•Web has been updated to use the latest ArcGIS API for JavaScript 4.15.
•Added an optional argument to the supported arguments used to run a workflow. This allows a workflow invocation to target a specific map in those layout configurations where the target map cannot be automatically inferred based on the layout hierarchy.
•Added a new capability for command argument merging. In practice, this allows a command in a chain of commands reference previous information, while still being able to uniquely define its own information.
•Optimized API module dependencies for performance and clarity.
•Resolved an issue where 3D highlights were not properly respecting Z values. [39157]
•Resolved an issue where modifying the web map layers could break layer presets and make it impossible to configure layer presets in Web Designer. [40012]
•Resolved an issue that prevented several types of WMTS services to load with a spatial reference error. [39391]
•Resolved an issue where when a workflow form ran a sub-workflow with a form, upon completion of the sub-workflow, the original workflow form was no longer accessible or visible. [40116]
•Resolved an issue where the Results Table was not respecting the web map pop-up configuration controlling the visibility of feature attributes. [39720]
•Resolved an issue that caused newly generated workflows for Get Related Records to be non-functional. [39581]
•Resolved an issue in workflow auto-complete logic that caused strange focus behavior and prevented proper JSON conversion for Alerts. [40600, 40602]
•Resolved an issue that prevented manually configured lengthUnits and areaUnits from properly serializing. [40631]
•Resolved an issue with sublayer lookup that was not respecting non-numeric layer IDs. [40439]
•In addition to the charting capabilities, you now have a component for displaying Key Performance Indicator (KPI) cards. These KPI cards can be included as part of your application layout and feature key numbers along with time-based increases and decreases. These KPI cards can also contain a title, an icon, and support conditional formatting. With KPI cards you can create dashboard-like web GIS apps and, because they are based on Web, you still have full access to the growing collection of tools, workflows, reports, and more that are unavailable in other dedicated dashboard frameworks.
•New tools and the underlying viewer commands were added for downloading results from Web to CSV, XLSX, and Shapefile. Due to technical limitations, this feature does not work on iOS devices prior to iOS 13.
•Convert default command tools (command chains) to Workflow. Configurability is a key value of Web. The default command tools shown in Web Designer are made up of smaller building blocks that are chained together. Within Web Designer, you can view and modify these JSON command chains in Web Designer. You can now take an additional step and convert these command chains into a workflow. The generated workflow behaves the same way the coded defaults of Web behave as a starting point for your extension and enhancement. To try this today, create a new app with the Web GIS Default template, open the Toolbar component, and click the Identify tool. Click the Customize icon to view the JSON, then click the Convert to Workflow icon to generate an equivalent workflow.
•Generate Report from map layers. When adding feature actions to layers in Web Designer, in addition to being able to generate workflows from templates, you are now able to generate a default features Report from a template. The generated report will be pre-configured to connect directly to your layer data source and is a great starting point.
•Expanded the number of Web events that are configurable through the Web Designer interface. In many cases, these events are initially hidden and can be accessed by expanding the Events section.
oApplication events: Application Initializing and Application Initialized.
oLayout events: Layout Loading and Layout Loaded.
oFeature Details events: Result Added, Result Removed, Result Shown and Result Hidden.
oMap events: Map Clicked, Map Initialized and Map Viewpoint Changed.
oSearch events: Search Cleared and Search.
oResults List / Results Table events: Result Clicked, Result Added, Result Removed, Result Shown, Result Hidden, Result Hovering, Result Hovered, Result Selected and Result Deselected.
oPredefined Map tool: Identify Details (available in the Map Clicked event and Context Menu).
•The Web Designer interface now offers an interactive Desktop/Tablet/Handheld preview sizing control that includes presets for the most common devices on the market. Complete with an orientation toggle, you can now rapidly see what your interactive application preview looks like on a variety of devices.
•A new Margin layout attribute was added to components in the Web Designer interface to allow you to add additional space between a component and its surroundings.
•The Branding service in Web Designer now allows you to specify both the title and the icon of the browser tab for your Web applications. Prior to this, you always saw Web and the Web favicon.
•The Results List component visualization was updated to responsively make far better use of available horizontal space. As the results list grows in size, two or even three columns of data are displayed.
•The Locale menu in Web Designer has been modified to present only languages (for example, en) rather than languages and locales (for example, en-FR), and is now named the Language menu. This change was made because the majority of users do not need region-specific locales and don’t understand standard internationalization fallback. In practice, administrators were mistakenly configuring a locale when they really should have been configuring a language. It is still possible to manually add a locale if you really need it. Work was also done to write system default values to language strings as new languages are added.
•Re-design of Sharing Permissions and Delete App dialogs to ensure consistency of information and action. For example, you now see sharing metadata and can open the item in the Delete App dialog, where previously that was only available in the Sharing Permissions dialog. We also removed the simple assign permission menu and replaced it with the ability to open the collection of items in your Esri portal. This enables you to set permission on all or a selection of the items, and includes the Esri interface for sharing items with groups.
•Introduced a new pattern within Web that allows components to be Initialized so that they may listen for events without actually being Activated.
•Pinpoint search results were updated to use display virtualization. This dramatically improved overall performance of Pinpoint search when rendering results.
•Web now uses TypeScript 3.7.
•Web now uses Material-UI 4.
•Added help descriptions for components in Web Designer where they were missing.
•Fixes to 3D hit test to return items in non-reverse order when possible. [38948]
•Fix to our Arcade expression evaluator so that Arcade-derived values no longer show as #INVALID. [38607]
•Anchor content will now show as hyperlink / e-mail links. Web generally disallows HTML formatting in pop-ups for security reasons, but we have relaxed this restriction for anchor content that represents hyperlinks and e-mail links. These will now show as interactive links in Web. [38473]
•Resolved an issue that caused errors when performing Polygon Identify on certain layer types draped to the ground in 3D. [38849]
•Charts and Graphs have arrived in Web. It is now possible to add charts directly to your application layout and configure them within Web Designer. We’ve provided an out-of-the-box experience for configuring bar, line, scatter plot, and pie charts. In the Designer app templates, we’ve pre-wired charts to search and identify actions for you using the charts.display command, but charts can also be connected to things like workflows or even map-based actions.
•Measurement capabilities in both 2D and 3D are now part of Web. Rather than building a single ‘measurement tool’ we have created several new granular commands that can be assembled into traditional measurement tools or used in new and unique ways:
omeasurement.capture-geometry: A capture geometry capability that displays real-time measurement data while you are capturing the geometry. This capability includes the ability to toggle between length and area measurement on the fly.
omeasurement.create-graphics: A create measurement graphics capability that takes in a geometry, calculates measurement and creates labeling markup.
•Pinpoint Search has arrived in Designer. Using the new search icon or CTRL+SHIFT+F in Designer brings up the Pinpoint Search interface. Type almost anything in the search box to rapidly locate it in Designer. This includes obvious things such as trying to find the Toolbar component in your app so you can configure it, but also less obvious things such as where to go in the interface to Download a copy of your app, or the name of a particular attribute in one of your many map services. Pinpoint Search stretches further toward our goal of always being able to find what you are looking for within the Designer interface without needing to consult documentation.
•Interactive map location markers have been added to Web. These markers work in 2D and 3D, indicate accuracy, and will show directional field of vision when the underlying data supports it. These are exposed as command and event backed capabilities, allowing programmatic or user-movable map location markers. These location markers allow the 3rd party map integration pattern and enable examples for our upcoming SDK for things like interactive EagleView Pictometry integration.
oCommands: location-marker.create, location-marker.remove, location-marker.update.
oEvents: location-marker.created, location-marker.removed, location-marker.updated.
•Added the map.add-layers command which allows Web to dynamically add layers to the application's map. Future UI will use this command to allow users to upload data.
•After repeated feedback, we have rebuilt the way items are added to lists within Designer. This new interface provides an intermediate dialog allowing you to select the command, workflow, report, or even create a new workflow from a template. Canceling out of this intermediate step provides you an opportunity to stop without creating an item. This new interaction shows up in a number of places; try adding a new menu item to an I Want To... menu to see it in action. Previously, menu items were created automatically with default values which you then had to change; this caused confusion and sometimes left you with an item you didn’t want and had to delete.
•The visual styling of on-map widgets has been updated for the dark theme. Previously, we intentionally made these on-map widgets light-colored, but consensus feedback was that they should also reflect the darker theme.
•The new Pinpoint Search replaces and enhances the former Filter option in the Components panel.
•Provided a visual indicator within Designer when you are looking at configuration that is shared with another component, and additional information about where else that configuration is used. The underlying configuration framework for Web allows multiple components to reference the same configuration. While powerful, this can be confusing within Designer when you change your Results List feature actions and realize that you’ve also changed the Results Table feature actions.
•Updated Designer's color picker in places like Branding color selection to allow for more free-form picking of colors in addition to RGB entry and selection from a pre-configured palette of colors.
•Microsoft is proactively rolling out their new Microsoft Edge browser (based on the Chromium engine). Almost all users will automatically receive the new Microsoft Edge which replaces Microsoft Edge Legacy in the operating system. With the new Microsoft Edge, Microsoft enters the now-standard arena of continuous updating browsers; a huge benefit to end-users running Geocortex software. Geocortex software usage statistics indicate <2% usage of Microsoft Edge Legacy today. Few users or organizations standardized on Microsoft Edge Legacy; this is one of the reasons for Microsoft’s change in strategy. Microsoft Edge Legacy will become increasingly challenging to develop and test against as automated updates roll out across organizations. Therefore, this is the last version that officially supports Microsoft Edge Legacy. Beginning with the next version, the software will be developed and tested against the new Microsoft Edge.
•Web has been updated to use the latest ArcGIS API for JavaScript 4.14.
•Ongoing refinement of the interfaces and mechanisms for handling internationalization and localization of both Web and Designer. Much of this work is being done in conjunction with our international colleagues and partners. While internationalization and localization is possible today, we continue efforts to make it smoother and easier to work with.
•Significant behind-the-scenes work hardening patterns in Web in preparation for the upcoming release of the Web SDK.
•Resolved an issue with the upload image feature released in 5.4. The images attached as resources to the apps now correctly participate in the Development-Testing-Staging-Production deployment functionality. Previously, those image resources existed only in the Development app.
•Resolved an issue that caused the reversal of the drawing order of sublayers in Web.
•Updated to the latest Workflow packages to resolve incorrect behavior in several Workflow activities including: Get Centroid, Get Application Data, Set Application Data and Remove Application Data.
•Layout editing in Designer is now complete. You can now add and remove layouts to your application as well as add and remove components to your application layouts. Combined with our new Blank template, you can now build a completely custom application with your own layout.
•The Esri portal-backed item picker has been enhanced in Designer to include more sophisticated filters and sorting options, and display additional metadata, such as the item's owner, modification date, and sharing permissions, to make finding the correct item much easier. This appears in places like File Open, Map/Scene Picker, Workflow pickers, and the Designer dashboard.
•Added a new Sharing Permissions feature in Designer for Development, Testing, Staging, and Production apps in the Deploy pipeline to allow permissions for all Esri portal items related to the application to be viewed in one place. This includes the app, web maps and scenes, hosted layers, print and report templates, and workflows. Links from this window take you directly to the Esri portal item. Additionally, there is a tool to set the permissions for all these items at the same time.
•Feature Attribute Editing has arrived in Web. A new workflow creation template has been added allowing the editing of feature attributes. Add a feature action to an editable feature layer, Create New Workflow, and select the Feature – Edit Feature Attributes template. The resulting generated workflow is trivially easy to modify giving you full control over the attribute editing for that feature. Remove attributes. Reorder attributes. Make attributes read-only. Add instructional information for specific attributes. Create a tailored editing form for each type of feature with ease.
•Added new hit-test providers for 3D scenes to support accurate identification of 3D FeatureLayer and SceneLayer graphics.
•Added a new configuration point and the underlying functionality for a map component containing both a 2D map and a 3D scene to specify which loads by default when the application starts.
•Updated and extended the image component configuration. In addition to being able to specify the URL of an existing web-hosted image, you can now upload images directly in the configuration interface which will be automatically stored and made available to your application using your Esri portal.
•Added a menu directly to your recent dashboard apps so that you can delete unwanted apps directly from the dashboard.
•When pushing an app to Testing, Staging, or Production, you will now always see a summary of how configured environment values will alter the application, web map, and web scene configuration. In the previous version of Designer, the summary would not appear the first time the app was pushed to a certain stage. Environment values are intended to allow different environments to reference different underlying map and feature services.
•The three previous File Open actions of My Apps, Recent, and Shared with Me have been replaced with a single File Open action displaying an updated Open panel that allows filtering of My Content, Favorites, and Shared with Me, as well as six new Sort by options, allowing sorting by modification date, title, and owner. We also added an explicit Close option for your current app.
•The previous Recent content on the Dashboard and in File Recent have been replaced with Last Modified. This is more consistent with the Esri portal interface and is now available based on your identity regardless of what browser or device you are signed in with (Recent content relied on local storage).
•Relocated the pop-out button for the live preview and emphasized it to make it more obvious that the live preview can be popped out onto a second monitor.
•Updated the Geocortex-managed SaaS sign-in page to more clearly outline options for using a sub-domain connecting a Geocortex-managed SaaS to a customer’s on-premises ArcGIS Enterprise Portal.
•To maximize space for working with the layout tree, the static application services no longer appear in a fixed area at the bottom of the tree. Instead, you toggle between the components tree and the static list of application services.
•Extended Web’s support for the target of a Workflow. A workflow can now target virtually any Web component by ID and be run there.
•Updated the underlying workflow target component in Web to allow for a default workflow to be specified that will be run automatically when that component is visible. This allows for applications to be loaded with a workflow already visible and running in the application interface as an integral part of the application experience.
•The language strings for the Designer interface were added to the language strings for the Web interface in our translation platform so that both the administration and end user interfaces for Web now fully support internationalization and localization.
•Refactored the layout rendering code as part of introducing full layout editing within Designer, resulting in faster loading and rendering of Web applications.
•Updated the technology that renders widgets on the map to provide substantially better responsiveness, flow, and collision avoidance as the application is resized.
•Identified and resolved several issues related to running Workflow within Web.
oAdded support for the disabled state for the date picker form element.
oAdded support for form number input bounds.
•Resolved issues related to correct locale detection.
•Resolved an issue preventing the print form from initializing when model imports were not pre-resolved.
•Corrected field visibility and search logic to ensure we respect field visibility set on the web map pop up definition in various Web components such as Feature Details and Results Table.
•Multiple layouts can now be viewed, and switched between, using a tab-based interface at the top of Designer. Functionality originally in the Layouts panel is now accessed via the menu in the active layout tab.
•Layout editing has arrived in Designer. The Components panel has been upgraded to a components tree supporting drag-and-drop repositioning of components within the layout. This allows repositioning of both major and minor elements within your application layout, such as moving the results list to a different part of your application. In the next version of Designer you will also be able to add and remove components (and layouts), but for today you can start with an existing template and modify it to fit your needs.
•Layout properties for a component are now shown below the component configuration. This new capability allows for adjustment of layout-specific things such as relative and absolute sizing, horizontal and vertical alignment, which slot of a map a component resides in, whether a component is initially visible, and whether an aspect of the layout is resizable. This includes component-specific layout properties for components with special properties such as the panel component’s minimize, maximize, close, and back buttons.
•Charts make their initial appearance in Web with the full support of the web map pop-up chart configuration for feature details. When configured as part of your web map, Web will now honor that configuration and display the appropriate chart as part of your feature details view.
•A new Create Workflow command has been provided when configuring new items in various user components. This new command is contextual and provides several relevant templates to choose from based on whether you are working with a feature, a location, or no input context. When selected, a new workflow item is created based on the template and is automatically connected to Web, with the option to open it directly in Workflow Designer.
•A new Search New Extent component that displays a "Search This Area" button on the map when the user changes the map extent after performing a search. This visual prompt to "Search This Area" helps the user understand that search results are limited to the current map extent at the time of the search.
•Extended user preferences infrastructure for Web that allows preferences to be stored in your Esri portal if the Esri identity is Creator or greater. This provides ubiquitous access to preferences regardless of device or browser based on Esri identity. Currently, this mechanism stores user-defined bookmarks, and user preferences content will grow over time. For users that do not have Creator or greater, local storage is used as a fallback.
•Web now supports startup workflows as well as the ability to launch workflows as part of the application URL. The menu for each app deployment stage provides a new Get Links option to generate launch URLs.
•The Get Links dialog provides an embed link for the Production app to assist with embedding Web within other applications and web pages.
•A layer context menu has been added to the layer list to allow for layer-based commands. Commands for "Zoom to extent" and "Zoom to visible scale" for the layer context menu are now available.
•It is now possible to tag a Production app in your Esri portal with a Web template tag to have that app appear in the list of starting templates in Designer. This provides a simple way to create a corporate-specific template (brand, color, logo, disclaimers) as your own starting point for new apps.
•Added the necessary hooks and commands toWeb to support embedded app scenarios where you have an application or a web page that wants to "remote control" Web. These include a PostMessage listener to listen for external apps calling Web commands, and a PostMessage command to allow Web to post messages back to the containing app or web page.
•Web now exposes the Geocoder configuration in Designer to allow you to more easily reference your own geocoder.
•User testing showed a consistent expectation that what you see in the preview is what you get when you download. When downloading app configuration as a zip file, Designer now gives you the "in memory" app content rather than the last saved app content from the portal. We also exposed the download app configuration action in additional locations such as the File menu.
•User testing showed a consistent expectation that the User component should show up in the live preview. The User component (for signing in and out) had previously been suppressed to prevent accidental sign-out within Designer. We now render a non-interactive version in the live preview so that you can see a more accurate representation of your app in the preview.
•User testing showed confusion over the “revert to defaults” function of a component. Users expected it to “revert to last saved”, so this function has been renamed and updated to conform to this expectation.
•Additional loading animations have been added for longer-running processes. For example, when you select a new web map for your map component, there is now a brief loading animation for the few seconds it takes to retrieve and parse the web map and update the configurable layers so the user isn’t left wondering what is happening.
•Layout actions previously found in the Layouts panel are now accessed via the menu of the active layout tab. What was “Apply a New Layout” is now called “Swap Layout”. What was called “Revert to Initial Layout” is now called “Revert to Last Saved Layout”. A new "Rename Layout" option has also been provided.
•Designer save logic has been enhanced to examine app configuration and remove anything that is orphaned and requires cleanup.
•For applications supporting multiple layouts, the zip file produced by Download App Configuration and consumed by Upload App Configuration now supports multiple layout.xml files.
•The Get Configuration and Export Configuration interfaces have been enhanced to provide additional context about which layout(s) a component is associated with.
•Deployment summaries now contain additional intelligence to accommodate applications with multiple layouts.
•Web now uses Esri JavaScript API 4.12.
•Rebuilt the results table on updated technology to allow for better performance and full WCAG AA keyboard compatibility.
•Enhanced the communication mechanisms between Designer and the embedded live preview of Web. This resolves a few reported issues such as having Designer map component configuration listen to and respond when the 2D/3D toggle in the preview is toggled.
•When Web is run with the debug=true URL parameter, workflows will no longer be cached to enable rapid iteration and testing of workflows.
•Identified and resolved several issues related to runningWorkflow within Web.
oAuto-complete with required fields now shows the error properly when empty.
oSet Form Element Items now correctly sets items when used with auto-complete.
oCancelling a workflow now correctly cancels the currently running command.
oDefault values for numerical input are now correctly submitted.
oDrop down boxes no longer show the first item as selected unless the “selected index” property is set in Workflow.
oIssue related to correctly converting results to graphics in Web.
oGet Map activity now returns map information in $map1.map.extension.
•Resolved an issue that could cause duplicate search results to appear in the results list.
•Identified and resolved a number of minor issues that caused warnings and errors to appear in the browser development tools console. While none of these errors affected user-facing function, we continue to clean them up to ensure that when an error occurs in the console, it is something that needs attention.
•Resolved an issue that prevented the image component from being selected in the Designer real-time preview by the component selection tool.
•Resolved an issue that caused the panel to show a blank panel screen when an alternate layout was applied to the app.
•Resolved an issue that prevented sub-menus from being properly destroyed when the parent menu item was destroyed.
•Resolved an issue that was causing the web map pop-up template to be written to the app configuration; this prevented updates to the web map pop-up configuration from being immediately recognized by Web.
•A new portal item explorer interface has been added to Web Designer to provide a more visual search and browse experience for Esri portal content. For example, when configuring your map component, you are no longer required to paste in a URL or an ID, instead you can search and browse for the item via its thumbnail to select it.
•A new layer presets component is available in Web and Web Designer. This component allows you to define a set of named presets, each of which has certain layers visible or not. For example, you can create a Water preset that turns on three water-related layers and turns off all other layers. The end user sees the Water preset and, by pressing it, automatically turns layers on and off to match the preset.
•A new Web Designer configuration interface allows you to configure the base map picker. You can now choose which of Esri’s portal base maps should be included in their app's base map picker and which should not.
•A new Web Designer configuration interface allows you to configure a custom base map, which directly references multiple base and reference layers.
•Added support for on-map display of labels for highlighted results. Highlight and focus labels can be configured in Web Designer as part of Highlighting.
•A new Info side panel item has been added to Web Designer. This panel offers direct access to view and edit the Title and Description of the Esri portal item. This panel also provides the ability to view and launch the URL to the Esri portal item directly.
•The Web Designer interface now supports deep linking directly to a specific app. This allows you to share or bookmark a URL and immediately arrive in the Web Designer interface with that app already open and ready to be updated.
For example, https://apps.geocortex.com/webviewer/designer/#app=e71af5ef8cd246c9a28f814639ea45
•A new Initialized event has been added to Web that allows the app to run a workflow or command the web map or web scene is first loaded. This is configured within Web Designer in the Map settings in a section called Events.
•A new setting and URL parameter that allows an embedded mode for Web to be used. When embedded, Web will not allow the mouse wheel to zoom in or out of the map without a specific key modifier. This prevents unexpected behavior when scrolling down a web page and suddenly zooming the map.
•Reviewed and updated all error log strings to improve clarity and understanding of errors when they occur. Added a consistent mechanism for the clear display of user-facing errors.
•Web now uses Esri's ArcGIS API for JavaScript 4.11.
•Improved cache for Workflows to improve Workflow performance.
•Improved the visual styling of Workflow forms within Web.
•Improved Webpack implementation allowing for improved handling of third-party libraries and ensuring even faster load times for Web.
•Updated underlying technology for the Results Table component to ensure full WCAG AA compliance and improve performance in areas such as Tabs.
•Web continues to improve its support for Workflow. Version 5.2 introduces a breaking change: prior to 5.2, Web would automatically transform feature data being passed into Workflow into Esri objects. While this made some simple use cases easier, it made many legitimate use cases impossible, as there wasn’t a deterministic way to transform the Esri objects back into Web constructs. In 5.2, we have removed this automated conversion of Web constructs when passing them into Workflow. While this now allows back-and-forth connectivity between Web and Workflow, it also requires workflows to do some additional transformation work. In the future, there will be Workflow activities to make this transformation work even easier. Based on usage analytics, we don’t believe this change will impact any current Web app using Workflow. However, if this impacts your current app, please reach out to Cam Barnard at the Web Community and we’ll provide some extra assistance to help you adjust your workflow.
•Resolved issues around token refresh in Web Designer that improve the app creator’s experience when Web Designer is left open for a long period of time between tasks.
•Resolved an issue in Web Designer that prevents two different users from saving an app with the same name.
•Resolved an issue where parent containers were not deactivating when all their children had deactivated, leaving empty open areas that should have been automatically closed.
•Added a language resource file containing error message language strings to our internationalization source so they can be translated.
•Resolved an issue to ensure individual layer references to Esri portal items are accessible even when not located on the same portal.
•When adding new menu items, feature actions, and map context items in Web Designer, you will now be presented with a higher-level set of contextually-relevant tools. The raw JSON view, and the list of granular commands are still available, but no longer the default experience.
•When browsing for a workflow, report, or print template from your Esri portal, Web Designer now queries beyond the standard single "page" of results from Esri’s API (50 items), allowing you to find what you are looking for even when you have many Geocortex items in your portal.
•Clicking the product logo in Web Designer now returns to the initial dashboard and safely closes any currently-open app.
•The simple layer list in Web is now configurable through Web Designer.
•Printing support has been added to Web. This includes a new configuration component in Web Designer as well as a new Print tool that can be added to your Web app. It is possible to print both 3D scenes and 2D maps. A print preview tool has only been provided for 2D maps at this time.
•You can now type Ctrl+S to save your app in Web Designer.
•Changes to correctly render Web apps on mobile devices with appropriately-sized controls.
•Updated the 2D/3D Toggle button in Web to clarify which mode is currently active.
•Extensive improvements to user-facing errors when they occur in Web, such as when the app is unable to load due to unavailable map services. Improvements were also made to behind-the-scenes logging.
•Improved WCAG AA compliance for keyboard navigation and screen reader support for basemap picker, bookmarks and on-map expander control.
•Improved preservation of map/scene scale when toggling between 2D and 3D.
•Several small fixes to the on-premises installer.
•Allowed HTTP credentials to be sent to on-premises Portal for ArcGIS (supports certain authentication flows).
•Corrected behavior when applying a new layout in Web Designer with the preview popped out.
•Resolved an issue preventing the proper passing of a security token from Web Designer to the Web preview when using federated secured services.
•Ongoing fixes and improvements to Workflow behavior within Web.
The first release of Web is focused on providing beautiful, fast, flexible applications combining the 3D and 2D capabilities of Esri’s latest ArcGIS API for JavaScript. Developed with a SaaS-first approach, Web is available both as SaaS and on-premises.
Since Esri first announced a new ArcGIS API for JavaScript 4.0 in mid-2016, we have been planning and building the next-generation JavaScript viewer for our customers.
In the future (2-3 years), Web and the Esri ArcGIS API for JavaScript 4.x will have matured to match and exceed the current Geocortex Viewer for HTML5. Until then, Web focuses on the unique capabilities associated with the Esri ArcGIS API for JavaScript 4.x that customers may need today:
•Side-by-side or toggling 2D map and 3D scene visualization.
•Performance optimization made possible by the new API technologies.
•Improved control over color, and visual branding.
•Clean, fresh visualization of results on the map, and in lists, tables, and detail views.
•Familiar I Want To menus, toolbars, and contextual menu options.
•WCAG AA accessibility compliance for public-facing applications.
•Extensibility using Workflow and Reporting capabilities.
•A new configuration model separating functional app behavior from layout appearance that allows multiple components of the same type.
In addition to an all-new viewer there is an all-new Web Designer experience for designing and configuring applications. This new experience provides:
•Quick verification of changes with a fully-interactive, live preview of your application.
•Improved mechanisms for finding configuration settings through both a contextual filter and a visual component selector.
•More space to work with larger areas for entering configuration and the ability to pop out the application preview onto a second monitor.
•Application management with dedicated functionality for managing development, test, staging, and production versions of your application and its associated web maps and web scenes.
Initial components and capabilities include:
•Map/Scene navigation controls
•Base map gallery
•Geolocation
•Bookmarks
•Scalebar
•Coordinates of mouse on map
•Map context menu
•Legend
•Simple Layer list
•I Want To menu
•Toolbar
•Workflow support
•Extent-specific search
•Identify
•Selections and highlighting
•Results List
•Results Table
•Feature Details
For the most part Web is working as designed and the initial features are well-tested and ready. That said, there are a few known issues that you should be aware of:
•Layout editing. The underlying configuration model supports very flexible layouts, and we’ve begun working on a layout editing interface within Web Designer. Until then, modifying the layout means editing XML. In the Deployment area, you can access the configuration files from the menu beside Development and clicking Download as Zip File. When you are done editing and have re-zipped them, select Upload Zip File from the same location.
•Mobile handheld devices. While supported, there is currently a scaling bug that renders components far too small on handheld devices. We are working on it, and you should see dramatic improvement in future versions.
•Internet Explorer is not a supported browser. The Esri ArcGIS API for JavaScript 4.x makes extensive use of WebGL which leaves Internet Explorer behind. As Esri begins to release new viewers based upon the Esri ArcGIS API for JavaScript 4.x, you can also expect they will not support Internet Explorer.
•Microsoft Edge. A supported browser, there is a current bug in the Esri stack that prevents authentication with Esri identities on Microsoft Edge. We anticipate this bug will be resolved by Esri soon.